OpenVPN Kurulumu ve Kullanımı: Sunucu ve .ovpn Rehberi

  • Home
  • Linux
  • OpenVPN Kurulumu ve Kullanımı: Sunucu ve .ovpn Rehberi
openvpn

OpenVPN kullanmak için iki şey gerekir: bağlantıyı kabul eden bir VPN sunucusu ve bu sunucuya ait .ovpn profilini kullanan bir istemci. Elinizde profil varsa Windows, macOS veya mobil cihazınızda istemci kurulumuna geçebilirsiniz. Kendi sunucunuzu hazırlıyorsanız paket kurulumu, sertifikalar, firewall ve ağ yönlendirmesini birlikte planlamalısınız.

Bu rehber, Ubuntu üzerinde OpenVPN Community sunucusu kurmayı ve bağlantı profilini kullanmayı anlatır. Örnekler sertifika tabanlı, yönlendirilmiş IPv4 tünel içindir. İlk hedef VPN sunucusunun tünel adresine erişmektir; şirket ağına veya internetin tamamına erişim için ayrıca aşağıdaki yönlendirme bölümünü uygulamanıza göre değerlendirin. OpenVPN Access Server ve CloudConnexa farklı ürünlerdir; bu akış onların yönetim paneli kurulumunu kapsamaz.[1][3]

OpenVPN nedir, ne işe yarar?

OpenVPN, istemci ile sunucu arasında şifreli bir sanal ağ bağlantısı kurabilen açık kaynaklı bir VPN yazılımıdır. Uzaktan sunucu yönetimi, ofis kaynaklarına kontrollü erişim ve farklı ağlardaki cihazları birbirine bağlama gibi senaryolarda kullanılır. TLS tabanlı kurulumda sunucu ve istemci sertifikaları kimlik doğrulamanın parçasıdır.[1][2]

VPN bağlantısı tek başına anonimlik garantisi vermez. Hangi trafiğin tünelden geçtiği route ve DNS ayarlarına bağlıdır; uç cihaz güvenliği, hesap erişimleri ve ziyaret edilen hizmetlerin kayıtları ayrıca değerlendirilmelidir. OpenVPN Connect ise bağlantıyı kullanan istemci uygulamasıdır; bilgisayara istemci yüklemek kendi başına bir VPN sunucusu oluşturmaz.[2][3]

Dizüstü bilgisayarlı çalışma alanı ve cam bölme arkasındaki sunucu altyapısı
OpenVPN, istemci cihaz ile VPN sunucusu arasında şifreli bir tünel kurar. Temsilî görsel.

OpenVPN kurmadan önce kontrol edin

  • Sunucu: Güvenlik güncellemeleri devam eden bir Ubuntu sürümü, SSH ve sudo erişimi kullanın. Aşağıdaki PKI adımlarını mevcut VPN kurulumunun üzerine uygulamayın.
  • TUN erişimi: Sanallaştırma veya container ortamında tünel aygıtı ve gerekli yetkiler bulunmalı. Yalnız VPS/VDS paket adı teknik uyumluluğu belirlemez.
  • Adres ve port: İstemcinin ulaşabildiği bir IP veya DNS adı belirleyin. Bu örnekte UDP 1194 kullanılıyor; sunucu firewall’u ve varsa sağlayıcı güvenlik duvarı bunu geçirmeli.
  • Ağ planı: Örnek VPN ağı 10.8.0.0/24. Ev/ofis veya diğer VPN ağlarınızla çakışıyorsa farklı bir ağ seçin.
  • Geri dönüş: Ağ ayarlarını değiştirmeden önce sunucu konsoluna erişiminiz ve mevcut firewall yapılandırmasının yedeği olsun.

TUN aygıtını ve mevcut adresleri salt okunur komutlarla inceleyebilirsiniz. Aygıtın görünmesi tek başına tüm yetkilerin hazır olduğunu kanıtlamaz; erişim hatasında sağlayıcının desteklediği sanallaştırma ve izinleri doğrulayın.[2]

ls -l /dev/net/tun
ip -brief address
ip route

Ubuntu üzerinde OpenVPN sunucu kurulumu

Ubuntu’nun resmî rehberindeki paket ve Easy-RSA akışını temel alıyoruz. Kurulu OpenVPN sürümünü ve örnek yapılandırma dosyalarını kontrol edin. Yapılandırma dosyası ile systemd birim adını aynı kurulum düzeninden seçin; farklı rehberlerdeki dosya yollarını karıştırmayın.[1]

1. OpenVPN ve Easy-RSA paketlerini kurun

sudo apt update
sudo apt install openvpn easy-rsa
openvpn --version

Paketlerin kurulması, çalışan bir VPN’in hazır olduğu anlamına gelmez. Sunucu/istemci sertifikaları, yapılandırma ve erişim kontrolleri sonraki adımlarda tamamlanır. Örnek yapılandırmadaki data-ciphers ayarı OpenVPN 2.5 ve sonrası içindir; eski sürümleri zayıf algoritmalar açarak uyumlu hale getirmek yerine desteklenen paket ve istemci sürümlerini değerlendirin.[2]

2. Sertifika altyapısını hazırlayın

Aşağıdaki akış yeni ve ayrı bir kurulum içindir. Önce çalışma dizinini hazırlayın; ardından root oturumunda Easy-RSA adımlarını çalıştırın. CA oluşturulurken sorulan parolayı güvenli saklayın. Production ortamında CA özel anahtarını ayrı, korumalı bir sistemde tutmak daha iyi bir ayrım sağlar; burada anlaşılabilir bir başlangıç akışı gösteriliyor.[1]

sudo make-cadir /etc/openvpn/easy-rsa
sudo -i
cd /etc/openvpn/easy-rsa
./easyrsa init-pki
./easyrsa build-ca
./easyrsa gen-req vpn-server nopass
./easyrsa sign-req server vpn-server
./easyrsa gen-dh
./easyrsa gen-req laptop01
./easyrsa sign-req client laptop01

vpn-server sunucu, laptop01 ilk istemci adıdır. İstemci anahtarını parolalı oluşturduğunuzda uygulama bağlantı sırasında anahtar parolasını sorabilir. Her kullanıcı/cihaz için ayrı istemci kimliği oluşturun; bir profili bütün ekiple paylaşmayın. İmzalama komutları CA parolasını ve onayı isteyebilir; istemci anahtar parolasıyla CA parolası aynı kavram değildir.[1]

Aynı root oturumunda sunucunun kullanacağı dosyaları yerleştirin ve kontrol kanalı anahtarını üretin. ca.key dosyasını istemcilere veya bu çalışma dosyalarının yanına dağıtmayın.[1]

install -m 644 pki/ca.crt pki/dh.pem pki/issued/vpn-server.crt /etc/openvpn/
install -m 600 pki/private/vpn-server.key /etc/openvpn/vpn-server.key
openvpn --genkey secret /etc/openvpn/ta.key
chmod 600 /etc/openvpn/ta.key
exit

3. Sunucu yapılandırmasını oluşturun

sudoedit /etc/openvpn/myserver.conf ile dosyayı açın. Aşağıdaki örnek Ubuntu rehberindeki openvpn@myserver düzenini kullanır. Bazı kurulumlar /etc/openvpn/server/server.conf ve openvpn-server@server düzenini kullanır; bunları aynı dosya/birim çiftiymiş gibi değiştirmeyin.[1]

port 1194
proto udp
dev tun
topology subnet
server 10.8.0.0 255.255.255.0
ca /etc/openvpn/ca.crt
cert /etc/openvpn/vpn-server.crt
key /etc/openvpn/vpn-server.key
dh /etc/openvpn/dh.pem
tls-crypt /etc/openvpn/ta.key
tls-version-min 1.2
data-ciphers AES-256-GCM:AES-128-GCM
keepalive 10 120
persist-key
persist-tun
user nobody
group nogroup
verb 3

Bu yapılandırma tüm internet trafiğini tünele yönlendirmez; başlangıçta VPN sunucusuna tünel üzerinden erişimi hedefler. tls-crypt, kontrol kanalı paketlerinin korunmasını sağlar. Veri kanalı şifreleri istemciyle uyumlu olmalı; bir hata mesajını susturmak için sertifika doğrulamasını veya şifrelemeyi kapatmayın.[2]

4. Firewall ve doğru servisi kontrol edin

UFW zaten kullanılıyorsa sudo ufw allow 1194/udp ile VPN portunu açabilirsiniz. Bu kural dışarıdan VPN bağlantısını kabul eder; tünel üzerinden sunucudaki hizmetlere erişim ayrıca INPUT kurallarına bağlıdır. Yalnız gerekli hizmetleri VPN ağından erişilebilir yapın. SSH portunu ve mevcut kuralları doğrulamadan firewall’u etkinleştirmeyin veya sıfırlamayın. Sağlayıcı firewall’u/NAT varsa aynı protokol ve portun gerçek sunucuya ulaştığını ayrıca kontrol edin.

sudo systemctl enable --now openvpn@myserver
sudo systemctl status openvpn@myserver --no-pager
sudo journalctl -u openvpn@myserver -n 60 --no-pager
sudo ss -lunp
ip addr show dev tun0

Tek tünelli örnekte tun0 beklenir; mevcut başka tüneller varsa aygıt adı farklı olabilir. Servis aktif görünse bile istemciden bağlantı kurulmadan kurulumun bütünü doğrulanmış sayılmaz. Logları paylaşırken kullanıcı adı, IP, sertifika bilgileri ve benzeri hassas verileri ayıklayın.[1]

OpenVPN Connect için .ovpn dosyasını sürükleyip bırakma veya Browse ile seçme alanı
OpenVPN Connect için .ovpn profilini içe aktarma görseli. Kaynak: OpenVPN.

OpenVPN nasıl kullanılır? .ovpn profili ve istemci kurulumu

Windows, macOS, iOS ve Android için uygun istemciyi resmî OpenVPN Connect sayfasından seçin. Menü isimleri platforma göre değişebilir; temel akış profili içe aktarmak, gerekiyorsa kimlik bilgilerini girmek ve bağlantıyı başlatmaktır. Ubuntu’da komut satırı istemcisi için openvpn paketi kullanılabilir.[1][3]

Kendi kurulumunuzda her istemciye özel bir profil hazırlayın. Aşağıdaki iskelet tamamlanmış bir profil değildir: vpn.example.com yerine gerçek endpoint’i yazın; sertifika/anahtar bloklarını belirtilen dosyaların tam içerikleriyle doldurun. Dosyalar PEM başlangıç/bitiş satırlarıyla birlikte alınmalı; gösterilen yer tutucularla bağlantı kurulamaz.[2]

client
dev tun
proto udp
remote vpn.example.com 1194
nobind
persist-key
persist-tun
remote-cert-tls server
verb 3
<ca>
# pki/ca.crt dosyasının tam içeriği
</ca>
<cert>
# pki/issued/laptop01.crt dosyasındaki PEM sertifika bloğu
</cert>
<key>
# pki/private/laptop01.key dosyasının tam içeriği
</key>
<tls-crypt>
# /etc/openvpn/ta.key dosyasının tam içeriği
</tls-crypt>

Sunucudaki data-ciphers listesi izin verilen veri kanalı şifrelerini sınırlar. OpenVPN 3 tabanlı istemciler destekledikleri şifreleri otomatik bildirir; OpenVPN 2.5+ Community istemcisinde liste ayrıca yapılandırılabilir. Bu nedenle ortak istemci iskeletinde bu ayar bulunmuyor.[2]

Profili örneğin laptop01.ovpn adıyla kaydedin ve güvenli kanaldan yalnız ilgili kullanıcıya iletin. Profil özel anahtar içerebilir; e-posta listesi, herkese açık depolama veya destek ekran görüntüsünde paylaşmayın. Ubuntu istemcide dosya izinlerini sınırlayıp bağlantıyı ön planda deneyebilirsiniz:[1][2]

chmod 600 laptop01.ovpn
sudo openvpn --config laptop01.ovpn

Ön plandaki Ubuntu istemcisini bu terminalde Ctrl+C ile kapatabilirsiniz. Windows veya mobil uygulamada ise profil dosyasını içe aktarın, gerekiyorsa özel anahtar parolasını girin ve bağlantıyı açın. Kullanıcı adı/parola yalnız sunucu o doğrulama yöntemini kullanıyorsa istenir; sertifika tabanlı her kurulumda ayrıca bir hesap şifresi bulunmaz.[1][3]

Bağlantı kurulduğunda örnek VPN sunucusunun 10.8.0.1 adresine erişimi Ubuntu istemcide ayrı bir terminalden sınayın. ICMP firewall tarafından engelleniyorsa ping başarısızlığı tek başına VPN’in bozuk olduğunu göstermez; route ve izin verilen bir hizmete erişimi de kontrol edin.[1]

ping -c 3 10.8.0.1
ip route get 10.8.0.1

İlk doğrulama yalnız tünel sunucusuna erişimi kapsar. Başka ağlara ve internet çıkışına erişim, bir sonraki bölümdeki ek ağ kararlarını gerektirir.

Ağ bağlantıları ve yönlendirme kontrollerini temsil eden düzenli sunucu kabini
VPN bağlantısı ile DNS, firewall ve trafik yönlendirmesi ayrı ayrı kontrol edilmelidir. Temsilî görsel.

Bağlandım ama IP değişmedi: Split tunnel, full tunnel ve DNS

Split tunnel yalnız belirlenen ağları VPN’e gönderir. Full tunnel varsayılan internet yönünü de VPN’e taşır. Dış IP’nin değişmemesi, yalnız sunucuya/ofis ağına erişim amaçlanan bir bağlantıda normal olabilir. OpenVPN’de redirect-gateway gibi yönlendirme seçenekleri bu davranışta rol oynar; yalnızca seçeneği eklemek bütün ağ kurulumunu tamamlamaz.[2]

  • Başka bir ağa erişim: Sunucuda IP forwarding, firewall geçiş izinleri, istemci route’u ve hedef ağın VPN ağına dönüş route’u değerlendirilmelidir.
  • İnternet çıkışı: Topolojiye göre NAT/masquerade ve doğru dış ağ arayüzü gerekir. Rastgele kopyalanmış iptables kuralları mevcut kurallarla çakışabilir.
  • DNS: İstemcinin tünel açıkken hangi resolver’ı kullandığını sınayın. IP erişimi çalışıp alan adı çalışmıyorsa DNS yolunu ayrı inceleyin.
  • IPv6: IPv4 full tunnel ayarı, IPv6 trafiğinin de tünelde olduğunu kanıtlamaz. Desteklenen istemci ve ağ politikasına göre ayrıca test edin.

Bu nedenle ağınıza özgü yönlendirme ve DNS kurallarını Ubuntu rehberi ile OpenVPN seçeneklerinden doğrulayın. VPN’i kapattıktan sonra DNS ve internet erişiminin beklenen duruma döndüğünü de kontrol edin.[1][2]

OpenVPN bağlantı hataları: Nereden başlamalı?

  • TLS handshake zaman aşımı: Endpoint, UDP/TCP eşleşmesi, port, NAT ve iki taraftaki kontrol kanalı anahtarını doğrulayın.
  • Sertifika doğrulama hatası: Saat/tarih, CA, sertifika geçerliliği ve sunucu/istemci sertifika türünü inceleyin. Doğrulamayı kapatmak çözüm değildir.
  • AUTH_FAILED: Kullanıcı doğrulaması varsa hesap durumunu; logda şifre algoritması uyuşmazlığı belirtiliyorsa iki uçtaki ortak algoritmaları inceleyin. Tek hata metninden kesin neden çıkarmayın.
  • Bağlantı var, hedef yok: Önce tünel IP’sini, sonra hedef route’u, firewall ve dönüş yolunu kontrol edin.
  • Profil içe aktarılamıyor: Yer tutucuların kaldığı, eksik PEM bloğu bulunan veya başka istemciye ait dosyalarla karışmış profili kullanmayın.

Bir kullanıcının erişimini kaldırmak, yalnız o kullanıcıdaki dosyayı silmekten ibaret değildir. Sertifika iptali ve sunucuda güncel iptal listesinin doğrulanması gibi bir erişim yaşam döngüsü gerekir. Bu başlangıç yapılandırması CRL yönetimini otomatik kurmaz; çok kullanıcılı production kullanımı öncesinde bu süreci tamamlayın.[2]

Sık sorulan sorular

OpenVPN için hazır bir genel şifre var mı?

Hayır. Profil, sertifika/anahtar ve varsa kullanıcı bilgileri kendi VPN yöneticinizden veya sağlayıcınızdan gelir. İnternetten bulunan ortak profil ve şifreleri güvenilir erişim yöntemi olarak değerlendirmeyin.[1][3]

OpenVPN VPS üzerinde çalışır mı?

Uygun işletim sistemi, TUN erişimi, gerekli yetkiler ve ağ izinleri varsa çalışabilir. VPS/VDS pazarlama adı yerine altyapının tünel ve ağ yeteneklerini doğrulayın. Container tabanlı ortamda izinler ayrıca sınırlandırılmış olabilir.[2]

Otomatik kurulum scripti kullanabilir miyim?

Script yöntemleri vardır; Narweb OpenVPN kurulum deposu da bunlardan biridir. Ancak root olarak çalışan bir script firewall, paket ve sertifika yapılandırmasını değiştirebilir. Kaynağını, bakım durumunu ve hedef sürüm desteğini incelemeden çalıştırmayın; dosyanın indirilebilmesi güncel sisteminizde test edildiği anlamına gelmez. Bu rehberin ana akışı resmî paket ve belge yaklaşımıdır.[4]

Kurulumdan sonra güvenli işletim planını tamamlayın

Başarılı bir VPN bağlantısı; doğru profile ek olarak güncel sunucu, kullanıcıya özel kimlik, sınırlı erişim ve düzenli kontrol gerektirir. Ubuntu VDS ilk kurulum kontrol listesi sunucu tarafındaki temel işleri tamamlamanıza yardımcı olur. Farklı VPN yaklaşımlarını değerlendiriyorsanız WireGuard rehberini de inceleyebilirsiniz.

VPN sunucusu için uygun kaynak ve ağ ihtiyacını netleştirmek üzere Narweb VDS Hosting seçeneklerini değerlendirebilir veya teknik görüşme talep edebilirsiniz. Sunucu hizmeti ile özel VPN kurulum/yönetim desteğinin kapsamı teklif öncesinde ayrı netleştirilmelidir.

Resmî kaynaklar ve ek okuma

  1. Ubuntu Server — OpenVPN kurulumu, PKI ve systemd akışı
  2. OpenVPN 2.6 kılavuzu — yapılandırma, kimlik doğrulama ve yönlendirme seçenekleri
  3. OpenVPN Connect — istemci indirme ve profil içe aktarma
  4. Narweb OpenVPN kurulum deposu — alternatif script yönteminin kaynak kodu

4 Comments

  1. ŞEVKET TURGUT YAZICI Yanıtla 26/08/2023 - 23:12

    kurulum yaptım. normal çalışıyor tekrar reboot yapınca vpn çalıştıramıyorum, yardımcı olabilirmisiniz.

    • admin Yanıtla 31/08/2023 - 10:29

      Merhaba,

      ps auxf | grep openvpn

      bu komut ile kontrol ettiğinizde openvpn process ini görüyor musunuz?

      Ayrıca

      systemctl status openvpn@server.service

      ile kontrol ettiğinizde de servisin ayakta olduğunu ve logları görüyor olmanız lazım.

  2. Canss Yanıtla 11/01/2024 - 11:48

    Hangi sistemde kuracağıma karar veremedim.
    Detaylı açıklamaları nereden bulabilirim



Bir yanıt yazın

Hemen bugün siz de mutlu Narweb müşterileri arasına katılın!

Narweb Cloud altyapısına geçerek siz de hem uygun fiyat hem de kaliteli hizmet almaya hemen başlayabilirsiniz.

Copyright 2000 - 2025 © NARWEB.net. Tüm hakları saklıdır. Narweb® Markası Narnet Bilgisayar Dahili Tic. LTD. ŞTİ.'nin tescilli bir markasıdır.