VpnHood! SERVER'ı Docker'da Çalıştırın
Sunucuyu Docker yüklü herhangi bir Linux makinesinde konteyner olarak çalıştırın. Tek bir komutla yönetilen veya bağımsız sunucu olarak kurulur; konteyner sunucunun kesintisiz ve güncel kalmasını sağlar.
Başlamadan önce
- Genel (public) IP adresine sahip, x64 veya arm64 mimarisinde bir Linux makinesi. İmaj her iki mimariyi de destekler.
- Root erişimi.
- Compose eklentisiyle birlikte Docker. Yükleyici; Ubuntu, Debian ve bunlara dayalı dağıtımlarda kurulumu sizin yerinize yapabilir.
- Hem makinenin güvenlik duvarında hem de barındırma sağlayıcınızda (hosting) TCP
443bağlantı noktası açık olmalıdır. Konteyner ana makinenin ağını paylaştığı için sunucu doğrudan bu bağlantı noktasını dinler.
Yönetilen sunucu kurun
VpnHood! MANAGER'da Servers bölümünü açın, Add seçeneğine tıklayın, sunucuya bir ad verip Create butonunu seçin. Kurulum yöntemleri arasından Install on Linux manually by running a command seçeneğini belirleyin. MANAGER'ın gösterdiği komuttaki VpnHoodServer-linux.sh kısmını VpnHoodServer.docker.sh olarak değiştirin ve makinede çalıştırın. Bu işlem, sunucuyu MANAGER'a bağlayan ayarlarla konteyneri kurar ve aşağıdaki bağımsız kurulumda yer alan soruyu sorar.
Önceden oluşturduğunuz bir konteyner için Install Manually by configuring appsettings seçeneğini belirleyin. MANAGER'ın gösterdiği ayarları ana makineye /opt/VpnHoodServer/storage/appsettings.json olarak kaydedin, ardından konteyneri sudo docker restart VpnHoodServer komutuyla yeniden başlatın.
Ardından MANAGER'da Access Tokens altından cihazlarınız için erişim anahtarları oluşturun.
Bağımsız sunucu kurun
Bu komutu çalıştırın. Compose dosyasını indirir, sunucunun konteynerini başlatır ve size tek bir soru sorar.
sudo su -c "bash <( wget -qO- https://github.com/vpnhood/VpnHood.App.Server/releases/latest/download/VpnHoodServer.docker.sh)"
Install Docker (y/n)? sorusu geldiğinde, Docker'ın kurulması için y, makinede zaten kuruluysa n yazın.
Komut dosyası (script) ile soru sorulmadan kurun. Docker zaten yüklüyse -install-docker parametresini eklemeyin.
sudo su -c "bash <( wget -qO- https://github.com/vpnhood/VpnHood.App.Server/releases/latest/download/VpnHoodServer.docker.sh) -install-docker -q"
Sunucu ayarlarını, anahtarlarını ve günlüklerini ana makinedeki /opt/VpnHoodServer/storage dizininde saklar; böylece konteyner silinse bile verileriniz korunur.
Erişim anahtarı oluşturun
Bunu makinede çalıştırın. Anahtar doğrudan sunucu konteyneri içinde üretilir, dolayısıyla sunucunun kendi ayarlarını kullanır.
sudo docker exec VpnHoodServer /app/vhsupervisor gen
Örneğin, tek bir telefon için anahtar
sudo docker exec VpnHoodServer /app/vhsupervisor gen -name Phone -maxClient 1
Çıktı ve seçenekler, Docker olmadan kurulan bağımsız bir sunucuyla aynıdır: --- AccessKey --- altındaki satırı kopyalayın ve anahtarı sınırlandıran seçenekler için İlk erişim anahtarınızı oluşturun bölümüne bakın.
Bağlanın
Her cihaza VpnHood! CLIENT uygulamasını yükleyin, anahtarı ekleyin ve bağlanın.
Sunucuyu başlatın, durdurun ve kontrol edin
Kapsayıcının adı VpnHoodServer şeklindedir. Docker, makine yeniden başlatıldığında kapsayıcıyı tekrar başlatır; sunucu çökerse de kapsayıcı içinde yeniden çalıştırılır.
sudo docker logs VpnHoodServer
sudo docker stop VpnHoodServer
sudo docker start VpnHoodServer
Aynı günlük, ana bilgisayardaki /opt/VpnHoodServer/storage/logs/server.log konumuna yazılır.
Ayarları değiştirin
Sunucu ayarlarını /opt/VpnHoodServer/storage/appsettings.json dosyasından okur. Dosyayı düzenleyin, ardından kapsayıcıyı sudo docker restart VpnHoodServer ile yeniden başlatın.
Dosya düzenleyemediğiniz durumlarda, appsettings.json dosyasının tüm içeriğini VH_APPSETTINGS ortam değişkenine ekleyin. Sunucu bu içeriği dosya yerine kullanacaktır.
Sunucunuzun IP adreslerini ayarlayın ve Bir alan adı üzerinden bağlanın rehberleri, en sık değiştireceğiniz ayarları adım adım gösterir.
Güncellemeler
Sunucu, kapsayıcı içinde kendini otomatik olarak günceller. Başlatıldığında ve her 12 saatte bir yeni sürümleri denetler, ardından yeni sürüme geçer.
Belirli bir sürümde kalmak için kapsayıcının ortam değişkenlerine VH_AUTO_UPDATE=0 değerini ekleyin.
Bazen yeni bir sürüm daha güncel bir kalıp gerektirebilir. Bu durumda sunucu mevcut sürümünü korur ve günlüğünde Pull the latest image! yazar. Kurulum komutunu tekrar çalıştırın: En son kalıbı çeker ve aynı ayarlar ile anahtarlarla kapsayıcıyı yeniden oluşturur.
Komut dosyasının daha eski bir sürümüyle kurulum yaptıysanız kurulum komutunu tekrar çalıştırın. Bu işlem sunucuyu yeni kalıba taşır ve eski VpnHoodUpdater kapsayıcısını kaldırır.
Kapsayıcıyı kendiniz oluşturun
Kapsayıcılarınızı manuel olarak yönetiyorsanız yükleyicinin oluşturduğu kapsayıcı budur. Yükleyicinin yaptığı gibi ana bilgisayar ağında (host network) çalıştırın.
sudo docker run -d --name VpnHoodServer --network host --restart always --stop-timeout 30 -v /opt/VpnHoodServer/storage:/app/storage vpnhood/vpnhoodserver
Daha yeni bir kalıba geçmek için vpnhood/vpnhoodserver kalıbını çekin ve kapsayıcıyı yeniden oluşturun.