İnternetin gidişatı için VPN in mantığını ve önemini bu makalede anlatacak değilim konuya direk girmek lazım VPN şifreli bir network sunar böylelikle güvenliğinizi ve gizliliğinizi sağlayabilirsiniz.
epel depolarını sistemimize eklememiz gerekecek yoksa openvpn paketlerini kuramayız bunun için aşağıdaki yönergeleri takip edin
yum install epel-release -y
bu işlemimizden sonra OpenVPN kurulumu için komutumuzu veriyoruz.
yum install openvpn wget -y
OpenVPN in haberleşmesi ve bağlantıyı şifrelemesi içinde Easy RSA kurmamız lazım bunu eski depodakini kullanarak yakacağız.
wget -O /tmp/easy_rsa https://github.com/OpenVPN/easy-rsa2.3.3.tar.gz
indirdiğimiz bu easy-rsa’yı tar.gz dosyasından çıkartıyoruz.
tar xfz /tmp/easy_rsa
Gereken adımları takip ederek devam ediyorsunuz.
sudo mkdir /etc/openvpn/easy-rsa
sudo cp -rf easy-rsa-old-2.3.3/easy-rsa/2.0/* /etc/openvpn/easy-rsa
sudo chown -R mertcan:mertcan /etc/openvpn/easy-rsa/
en önemli noktamıza geldik ayar dosyası oluşturmamız lazım ama önce yedek yapalım ve gereken yerlere dosyamızı taşıyalım
sudo cp /usr/share/doc/openvpn-*/sample/sample-config-files/server.conf /etc/openvpn
hemen sonrasında yapacağımız şey dosyamızı açmak aşağıdaki çoğu işlemi bu dosya içerisinde yapacağız aklınızda olsun
nano /etc/openvpn/server.conf
açtığımızda karşımıza bir sürü satır gelecek değiştirmemiz gereken yer var dh diye bir satır göreceksiniz bunun ismini dh2048.pem yapıyoruz.
dh dh2048.pem
işlem bitiminde networkdeki tüm trafiği VPN yönlendirmemiz lazım ki bağlantı şifrelensin bunun için ise
push "redirect-gateway def1 bypass-dhcp"
hemen ardından DNS sunucularını değiştirmek lazım böylelikle işimiz biraz daha kolay olabilir DNS sorgularında sıkıntı çekmemiş oluruz ve birazda sorgularımız hızlanır
push "dhcp-option DNS 8.8.8.8"
push "dhcp-option DNS 8.8.4.4"
kullanıcımızı kimsesiz yapalım hemen
user nobody
group nobody
topology subnet
remote-cert-eku "TLS Web Client Authentication"
TLS auth için işlemlerimiz var bunları şu şekilde yapabilirsiniz server.conf içerisine eklemenizi yapınız.
tls-auth ta.key 0
tls-crypt auth_key.tlsauth
anahtarı oluşturalım
sudo openvpn --genkey --secret /etc/openvpn/auth_key.tlsauth
yukarıdaki yazanları server.conf dosyamıza kayıt ettikten yada gereken satırları yukarıdaki ayarlara göre değiştirip kayıt ettikten sonra bir sonraki aşamamıza geçebiliriz. Geçtiğimiz bu aşamada sisteme sertifika ürettiriyoruz böylelikle bağlantımız güzel bir şekilde güvenli ve şifreli hale gelecek.
mkdir -p /etc/openvpn/easy-rsa/keys
cp -rf /usr/share/easy-rsa/2.0/* /etc/openvpn/easy-rsa
nano /etc/openvpn/easy-rsa/vars
komutlarınının bitiminde vars nano aracılığı ile açmıştık. KEY_ ile başlayan bazı satırlar göreceksiniz orda onların hepsini kafanıza göre doldurun.yada doğru bilgilerinizi girin
. . .
export KEY_COUNTRY="TR"
export KEY_PROVINCE="TR"
export KEY_CITY="Ankara"
export KEY_ORG="mertcan"
export KEY_EMAIL="[email protected]"
export KEY_OU="Community"
export KEY_NAME="server"
export KEY_CN=openvpn.umertcangokgoz.com
. . .
versiyonumuzu kaldıralım belli olmaz uyuşmazlık yapabilir belirli bir isim verelim
cp /etc/openvpn/easy-rsa/openssl-1.0.0.cnf /etc/openvpn/easy-rsa/openssl.cnf
şimdi sertifikamızı tam olarak oluşturmaya geldi sıra
cd /etc/openvpn/easy-rsa
source ./vars
./clean-all
./build-ca
./build-key-server server
./build-dh
yukarıdaki işlemlerin tamamlanması yaklaşık bi 3 dknızı alacaktır bu işlemlerin bitiminde oluşan dosyaları openvpn klasörü içerisine kopyalıyoruz.
cd /etc/openvpn/easy-rsa/keys
cp dh2048.pem ca.crt server.crt server.key /etc/openvpn
son olarak client tarafında ufak bi ayara
cd /etc/openvpn/easy-rsa
./build-key client
işlemimiz böylelikle kurulum aşamasında sonlanmış oluyor bundan sonra geriye yönlendirme ve yetkilendirme kaldı
yum install iptables-services -y
systemctl mask firewalld
systemctl enable iptables
systemctl stop firewalld
systemctl start iptables
iptables --flush
tertemiz bir firewall ayarlarına merhaba diyoruz ve yapmamız gerekenleri sırasıyla yapıyoruz ilk olarak ip aralıklarını firewall onaylatmak
iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERADE
yaptığımız bu onaylatma işlemini kayıt edelim ki sonra sıkıntı çıkartmasın başımıza
iptables-save > /etc/sysconfig/iptables
ip yönlendirmeyi açmamız lazım ipv4 için bunu da aşağıdakileri yaparak halledebilirsiniz.
nano /etc/sysctl.conf
aşağıdaki gibi yapıyoruz içerisindekini
net.ipv4.ip_forward = 1
ve bi restart atıyoruz network servisine
systemctl restart network.service
OpenVPN başlatmaya geldi sıra sabırla bu işlemleri yaptıysanız sona yaklaşmanıza az bir işlem kalmış demektir sabredin
systemctl -f enable [email protected]
systemctl start [email protected]
yukarıda clienti ayarlamaktan bahsetmiştim az bir kısmını yapmıştık şimdi onuda sonlandırmamız gerekiyor böylelikle bilgisayarımızdan bağlanabilelim VPN imize
Aşağıdakileri bir şekilde bilgisayarınıza kopyalayın bunu kullanırken SFTP ile yapabilirsiniz WinSCP önerilir.
/etc/openvpn/easy-rsa/keys/ca.crt
/etc/openvpn/easy-rsa/keys/client.crt
/etc/openvpn/easy-rsa/keys/client.key
yukarıdakileri sisteminize kopyaladıktan sonra .ovpn dosyası oluşturmanız gerekiyor aşağıdaki yönergeyi takip ederek yapabilirsiniz.tek yapılacak olan dosya yollarını ve ip adresini belirleyip kaydetmek
client
dev tun
proto udp
remote sunucunuzun ip adresi 1194
resolv-retry infinite
nobind
persist-key
persist-tun
comp-lzo
verb 3
ca dosya yolu/ca.crt
cert dosya yolu/client.crt
key dosya yolu/client.key
hata almadan son aşamaya kadar geçebildiyseniz. Windows için OpenVPN kurmak ve yukarıda oluşturmuş olduğunuz .ovpn dosyasını C:Program FilesOpenVPNconfig yoluna atmak sonrasında programdan kolaylıkla bağlanabilirsiniz.