1. Ortam ve Ön Hazırlık
- 1 GB RAM ve 20 GB SSD (Ubuntu 22.04 LTS) yeterli olur; daha yüksek trafik için RAM 2 GB’ye çıkarılabilir.
sudo apt update && sudo apt upgrade -ysudo apt install openvpn easy-rsa ufw -y
2. Sertifikalarla “EasyRSA” Kurulumu
Bash:
make-cadir ~/openvpn-ca
cd ~/openvpn-ca
varsdosyasını açıpexport EASYRSA_REQ_CN="YourVPN"gibi CN değerini ayarlayın../easyrsa init-pki && ./easyrsa build-ca nopass- Sunucu sertifikası:
./easyrsa gen-req server nopass && ./easyrsa sign-req server server - Diffie‑Hellman:
./easyrsa gen-dh - TLS‑Auth anahtarı:
openvpn --genkey --secret ta.key
Sık yapılan hata:
build-ca nopass kullanmazsanız, CA parolası için giriş beklenir ve otomatik başlatma sırasında servis çökebilir.3. OpenVPN Servis Dosyasının Oluşturulması
/etc/openvpn/server.conf içine aşağıdakileri ekleyin:
Kod:
port 1194
proto udp
dev tun
ca ca.crt
cert server.crt
key server.key
dh dh.pem
tls-auth ta.key 0
auth SHA256
cipher AES-256-GCM
user nobody
group nogroup
persist-key
persist-tun
server 10.8.0.0 255.255.255.0
push "redirect-gateway def1 bypass-dhcp"
push "dhcp-option DNS 8.8.8.8"
keepalive 10 120
status openvpn-status.log
verb 3
Sık yapılan hata:
push "redirect-gateway" satırını atlamak, istemcilerin internetine yönlenmeyi engeller.4. IP Yönlendirme ve NAT Kurulumu
Bash:
sudo sysctl -w net.ipv4.ip_forward=1
echo "net.ipv4.ip_forward=1" | sudo tee -a /etc/sysctl.conf
Bash:
sudo ufw allow 1194/udp
sudo ufw allow OpenSSH
sudo ufw enable
sudo ufw route allow in on tun0 out on eth0
Sık yapılan hata:
ufw route allow yerine sadece ufw allow 1194/udp eklemek, istemcilerin internetten çıkmasını engeller.5. Servisi Başlatma ve Kontrol
Bash:
sudo systemctl start openvpn@server
sudo systemctl enable openvpn@server
sudo systemctl status openvpn@server
Active: active (running) görülmeli.6. İstemci Konfigürasyonu
Örnek bir istemciclient.ovpn dosyası:
Kod:
client
dev tun
proto udp
remote your.vps.ip 1194
resolv-retry infinite
nobind
persist-key
persist-tun
remote-cert-tls server
tls-auth ta.key 1
auth SHA256
cipher AES-256-GCM
verb 3
<ca>
-----BEGIN CERTIFICATE-----
...
-----END CERTIFICATE-----
</ca>
<cert>
-----BEGIN CERTIFICATE-----
...
-----END CERTIFICATE-----
</cert>
<key>
-----BEGIN PRIVATE KEY-----
...
-----END PRIVATE KEY-----
</key>
Sık yapılan hata:
remote-cert-tls server satırı eksik olursa sertifika doğrulaması gerçekleşmez ve bağlantı reddedilir.7. Kaynak ve Maliyet Kontrolü
- 1 GB RAM + 20 GB SSD ile tek VPN sunucu üzerinden 200 farklı istemciye kadar bağlantı sağlanabilir.
topveyahtopile CPU: ~1 % / RAM: < 50 MB (OpenVPN minimal).- SSL sertifikası tek seferde oluşturulur, yeniden üretme ihtiyacı yok; bu da ekstra harçlığı ortadan kaldırır.
Tartışma Sorusu: 1 GB RAM’li VPS’lerde, 200 kullanıcıya hizmet verirken sistem çökmeden kalıcı bağlantılar için--persist-tundışında hangi yapılandırma değişikliğini önerirsiniz?