Docker Üzerine OpenVPN Sunucusu Kurulumu

10 ay önce

Bu yazımızda, AlmaLinux işletim sistemi ve Docker kullanarak nasıl OpenVPN sunucusu kurulacağını ve bu sunucuya nasıl kullanıcı ekleneceğini detaylı bir şekilde ele alacağız.
Gereksinimler
Öncelikle, aşağıdaki gereksinimlerin karşılandığından emin olun:
- AlmaLinux işletim sistemi yüklü bir sunucu
- Docker ve Docker Compose kurulu olmalı
- Root veya sudo yetkilerine sahip bir kullanıcı (root önerilir)
Adım 1: Docker Kurulumu
Docker’ı kurmak için aşağıdaki adımları izleyeceğiz:
Docker’ın resmi deposunu ekleyelim ve Docker’ı yükleyelim:
yum install -y yum-utils yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo yum install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
Docker servisini bağlatıyoruz ve sunucu yeniden başlarsa otomatik açılması için servis olarak aktif ediyoruz:
systemctl enable --now docker
Adım 2: OpenVPN Sunucusu Kurulumu
İlk olarak OpenVPN sunucusunun sistemd hizmetiyle sorunsuz çalışması için ovpn-data- ön ekini kullanmanız tavsiye edilir. Kullanıcıların example kelimesini açıklayıcı bir isimle değiştirmeleri önerilir.
OVPN_DATA="ovpn-data-example"
Daha sonra verilerin tutulacağı alanı oluşturalım.
docker volume create --name $OVPN_DATA
OpenVPN kurulumunu gerçekleştirelim. Eğer IP adresine yönelmiş bir alan adınız var ise alan adını, yok ise sunucu IP adresini VPN.SERVERNAME.COM kısmına yazabilirsiniz.
docker run -v $OVPN_DATA:/etc/openvpn --rm kylemanna/openvpn ovpn_genconfig -u udp://VPN.SERVERNAME.COM
Bir sonraki adımda OpenVPN kullanıcıları için sertifika oluşturulması gerekmektedir. Komutu girdikten sonra size iki defa şifre soracaktır. Yeni kullanıcı oluştururken bu şifreye ihtiyacımız olacaktır.
docker run -v $OVPN_DATA:/etc/openvpn --rm -it kylemanna/openvpn ovpn_initpki
OpenVPN sunucusunu başlatıyoruz.
docker run --restart always -v $OVPN_DATA:/etc/openvpn -d -p 1194:1194/udp --cap-add=NET_ADMIN kylemanna/openvpn
Adım 3: Kullanıcı Ekleme
Yeni bir kullanıcı için aşağıdaki kullanıcı oluşturma komutunu gireceğiz. Adım 2’deki şifreye ihtiyacımız olacak. CLIENTNAME kısmına kullanıcı ismini girip komutu uyguluyoruz:
docker run -v $OVPN_DATA:/etc/openvpn --rm -it kylemanna/openvpn easyrsa build-client-full CLIENTNAME nopass
Kullanıcı için OpenVPN yapılandırma dosyasını oluşturuyoruz:
docker run -v $OVPN_DATA:/etc/openvpn --rm kylemanna/openvpn ovpn_getclient CLIENTNAME > CLIENTNAME.ovpn
Oluşturduğumuz dosyayı SFTP üzerinden çekip OpenVPN istemcisinden kullanabiliriz.
Sorun Giderme
1. Bilinen en sık hatalardan birisi iptables’in kernel modülünün yüklenmemesidir. Modüllerin yüklenmesi için aşağıdaki dosyayı oluşturup içerisine iptable_nat yazıp kaydediyoruz. Daha sonra sunucuyu yeniden başlatıyoruz.
nano /etc/modules-load.d/iptable_nat.conf iptable_nat
2. Eğer üstteki hatayı aldıysanız docker üzerinde oluşturduğumuz container hata vermiş ve durmuş olabilir. Aşağıdaki komut ile kontrol edip eğer durmuş ise tekrar başlatabilirsiniz.
docker ps -a
Status eğer Exited ise CONTAINER ID’sini alıp tekrar başlatabilirsiniz. Ben örnek olarak f977bdc34c7e kullandım. Sizde farklı olacaktır.
docker start f977bdc34c7e
Sonuç
Bu rehberde, AlmaLinux ve Docker kullanarak nasıl OpenVPN sunucusu kuracağınızı ve kullanıcı ekleyeceğinizi öğrendiniz. OpenVPN ile güvenli ve güvenilir bir VPN çözümü kurarak, ağ bağlantılarınızı güvence altına alabilirsiniz.
Henüz yorum yapılmadı, ilk yorumu sen yapmak ister misin?