İçeriğe geç

OpenVPN Güvenlik ve Gizlilik Ayarları

openvpn güvenlik ayarları

Merhabalar, CentOS 6’da OpenVPN Kurulumu başlıklı yazımda sizlere OpenVPN kurulumundan bahsetmiştim. Bu yazımda ise kurduğumuz OpenVPN serverını nasıl daha güvenli hale getirebiliriz onu anlatacağım.

#1 İletişimi 443 Portu üzerinden TCP ile sağlamak.

Bu başlık trafiğin güvenliğinden ziyade gizliliği ile ilgili. OpenVPN varsayılan olarak 1194 portu üzerinden UDP ile bağlantı sağlar. Ağ trafiğini izleyenler çok kolay bir şekilde sizin VPN bağlantısı kullandığınızı fark edip çeşitli kısıtlamalar getirebilir. Bunun önüne geçmek için OpenVPN’i 443 portu üzerinden TCP ile bağlantı sağlayacak şekilde ayarlayacağız. Bu, https için varsayılan porttur. Yapısı gereği https de şifreli olduğu için bizim şifreli trafiğimizi standtart https trafiğinden ayırt etmek oldukça zor olacaktır. Bunun için server ve client ayar dosyalarında küçük değişiklikler yapacağız. Server tarafında  nano -w /etc/openvpn/server.conf ile ayar dosyasını açıp  proto udp olan satırı  proto tcp olarak ve  port 1194 olan satırı  port 443 olarak değiştiriyoruz. Daha sonra ise ayarların geçerli olması için  service openvpn restart ile servisi yeniden başlatıyoruz. Client tarafında da aynı serverdaki gibi UDP olan yeri TCP olarak ve 1194 olan yeri 443 olarak güncellemek yeterlidir.

#2 TLS doğrulaması için ek kod eklemek.

TLS handshake’i sırasında kontrol edilecek ek bir gizli metin ile vpn sunucumuza gelebilecek DoS saldırılarına karşı ek bir güvenlik almış oluyoruz.

Bunun için ilk olarak gizli metni oluşturmamız gerekiyor.  openvpn --genkey --secret tls-auth.key komutuyla metni oluşturuyoruz.

Daha sonra server ve client ayar dosyalarının içlerine  <tls-auth> </tls-auth> taglerini ekliyoruz ve arasına da oluşturduğumuz  tls-auth.key dosyasının içeriğini yapıştırıyoruz.

Son olarak ise server ayar dosyasına  key-direction 0 satırını, client ayar dosyasına ise  key-direction 1 satırını ekliyoruz.  service openvpn restart ile OpenVPN’i yeniden başlatmayı unutmayın.

#3 TUN/TAP aygıtını kalıcı hale getirme.

VPN bağlantısı esnasında bir kesinti olduğunda OpenVPN otomatik olarak tekrar bağlanmayı deneyecektir. Bu sırada tüm trafik VPN bağlantısı yokmuş gibi eski haliyle aktarılacaktır. VPN yokken giden sadece tek bir paket bile sizin kimliğinizi ortaya çıkarabilir. Client dosyasına ekleyeceğimiz  persist-tun satırıyla bunun önüne geçiyoruz.

#4 Diffie-Hellman parametleri oluşturma.

En basit anlatımda Diffie-Hellman anahtar değişimi, karşılıklı iletişimde ortak bir anahtar kullanılarak veri şifrelenmesi ve veriyle beraber bu anahtarında gönderilmesidir. Elbette anahtarın kendisi de veriyle beraber gönderildiği için kesin bir güvenlik sağlamaz. Fakat yüksek boyutlu bir anahtar kullanarak standart bilgisayar ile bunu tersine mühendislik yapılması neredeyse imkansız hale getirilebilir. Bunun için  openssl dhparam 2048 -out dh2048.pem -check komutuyla 2048 bitlik bir Diffie-Hellman anahtarı oluşturduktan sonra oluşan dosyayı /etc/openvpn/ dizinine kopyalayın. Daha sonra ise server ayar dosyasına  dh dh2048.pem satırını ekleyin. Ayar dosyasındaki her değişiklikten sonra OpenVPN servisini yeniden başlatmayı unutmayın.

Tarih:Güvenlik

Tek Yorum

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir