Websocket Proxy Kurulumu: Revizyonlar arasındaki fark

VMTools Türkçe Wiki sitesinden
Gezinti kısmına atla Arama kısmına atla
Değişiklik özeti yok
Değişiklik özeti yok
1. satır: 1. satır:
Nginx websocket proxy kurulumu için tavsiye ettiğimiz İşletim sistemi ve donanım gereksinimleri;
<u>3 Adımda Nginx Websocket Proxy Sunucu kurulumu gerçekleştirebilirsiniz.</u>
 
 
Hazırlık: Nginx websocket proxy kurulumu için tavsiye ettiğimiz İşletim sistemi ve donanım gereksinimleri;
{| class="wikitable"
{| class="wikitable"
|Ubuntu 22.04 LTS (Minimal server)
|Ubuntu 22.04 LTS (Minimal server)
10. satır: 13. satır:
|}
|}


 
1. Proxy sunucusunda kullanmak üzere alan adınız dns yönetimini bölümünden "proxy.siteadresiniz.com" şeklinde "A" kaydı oluşturun ve aşağıdaki komutta işaretlenmiş ilgili kısmı düzenleyerek çalıştırın.
 
1. Proxy sunucusunda kullanmak üzere bir alan adınız dns yönetiminden proxy.siteadresiniz.com şeklinde "A" kaydı oluşturun ve aşağıdaki komutta a kaydı ile ilgili kısmı düzenleyerek komutu çalıştırın.
{| class="wikitable"
{| class="wikitable"
|apt-get update -y && apt-get upgrade -y && shutdown -r now
|apt-get update -y && apt-get upgrade -y && shutdown -r now
apt-get install nginx -y && apt install certbot python3-certbot-nginx -y && sudo certbot --nginx -d '''proxy.siteadresiniz.com''' --non-interactive --agree-tos --email '''admin@siteadresiniz.com''' --redirect
apt-get install nginx -y && apt install certbot python3-certbot-nginx -y && sudo certbot --nginx -d '''proxy.siteadresiniz.com''' --non-interactive --agree-tos --register-unsafely-without-email --redirect
|}
 
 
 
2. Nano metin editörünü kullanarak nginx yapılandırmasını aşağıdaki gibi düzenleyip '''CTRL+O''' ve '''ENTER''' tuşları ile kaydedip '''CTRL+X''' tuş kombinasyonu ile editörden çıkabilirsiniz.
{| class="wikitable"
|nano /etc/nginx/sites-available/default
|}
 
 
 
3. Eklemeniz gereken nginx direktifleri ('''proxy.siteadresiniz.com kısımlarını düzenlemeyi unutmayınız''');
{| class="wikitable"
|map $arg_hostname $ng_hostname {
   default $arg_hostname;
 
}
 
map $arg_port $ng_port {
 
   default $arg_port;
 
}
 
map $arg_ticket $ng_ticket {
 
   default $arg_ticket;
 
}
 
server {
 
   listen 443 ssl;
 
   server_name '''proxy.siteadresiniz.com''';
 
   ssl_certificate /etc/letsencrypt/live/'''proxy.siteadresiniz.com'''/fullchain.pem;
 
   ssl_certificate_key /etc/letsencrypt/live/'''proxy.siteadresiniz.com'''/privkey.pem;
 
   ssl_protocols TLSv1.2 TLSv1.3;
 
   ssl_prefer_server_ciphers on;
 
   location /ticket {
 
       if ($ng_hostname = "") { return 400; }
 
       if ($ng_port = "") { return 400; }
 
       if ($ng_ticket = "") { return 400; }
 
       proxy_pass <nowiki>https://$ng_hostname:$ng_port$ng_ticket</nowiki>;
 
       proxy_http_version 1.1;
 
       proxy_set_header Upgrade $http_upgrade;
 
       proxy_set_header Connection "upgrade";
 
       proxy_set_header Host $host;
 
       proxy_set_header X-Forwarded-For $remote_addr;
 
       proxy_set_header X-Forwarded-Proto $scheme;
 
       proxy_read_timeout 86400;
 
       proxy_ssl_verify off;
 
       proxy_ssl_verify_depth 0;
 
       proxy_ssl_server_name on;
 
   }
 
}
|}
|}


 
2. Aşağıdaki komutu işaretlenmiş ilgili kısmı düzenleyerek çalıştırın.
 
4. Nginx direktiflerinde hata olup olmadığını test edin;
{| class="wikitable"
|nginx -t
|}
 
 
 
5. Nginx servisini yeniden başlatın;
{| class="wikitable"
{| class="wikitable"
|systemctl restart nginx
|DOMAIN="'''proxy.siteadresiniz.com'''<nowiki>" && sudo bash -c 'printf "map \$arg_hostname \$ng_hostname {\n   default \$arg_hostname;\n}\n\nmap \$arg_port \$ng_port {\n   default \$arg_port;\n}\n\nmap \$arg_ticket \$ng_ticket {\n   default \$arg_ticket;\n}\n\nserver {\n   listen 443 ssl;\n   server_name '"$DOMAIN"';\n\n   ssl_certificate /etc/letsencrypt/live/'"$DOMAIN"'/fullchain.pem;\n   ssl_certificate_key /etc/letsencrypt/live/'"$DOMAIN"'/privkey.pem;\n\n   ssl_protocols TLSv1.2 TLSv1.3;\n   ssl_prefer_server_ciphers on;\n\n   location /ticket {\n       if (\$ng_hostname = \"\") { return 400; }\n       if (\$ng_port = \"\") { return 400; }\n       if (\$ng_ticket = \"\") { return 400; }\n\n       proxy_pass https://\$ng_hostname:\$ng_port\$ng_ticket;\n       proxy_http_version 1.1;\n       proxy_set_header Upgrade \$http_upgrade;\n       proxy_set_header Connection \"upgrade\";\n       proxy_set_header Host \$host;\n       proxy_set_header X-Forwarded-For \$remote_addr;\n       proxy_set_header X-Forwarded-Proto \$scheme;\n       proxy_read_timeout 86400;\n       proxy_ssl_verify off;\n       proxy_ssl_verify_depth 0;\n       proxy_ssl_server_name on;\n   }\n}\n" | tee /etc/nginx/sites-available/default > /dev/null' && systemctl restart nginx</nowiki>
|}
|}


3. Wisecp/Whmcs admin üzerindeki VMTools yönetim paneli "Genel Ayarlar" bölümünden Web Konsol Ayarları kısmına proxy için oluşturduğunuz alan adını başında '''"http://"''' ve '''"www."''' ön eki olmadan tanımlayınız.




6. VMTools yönetim sayfası "Genel Ayarlar" bölümünden Web Konsol Ayarları kısmına proxy için oluşturduğunuz alan adını başında '''"http://"''' ve '''"www."''' ön eki olmadan tanımlamanız gerekmektedir.
Kurulumu başarıyla tamamladınız!

02.57, 18 Şubat 2025 tarihindeki hâli

3 Adımda Nginx Websocket Proxy Sunucu kurulumu gerçekleştirebilirsiniz.


Hazırlık: Nginx websocket proxy kurulumu için tavsiye ettiğimiz İşletim sistemi ve donanım gereksinimleri;

Ubuntu 22.04 LTS (Minimal server)

4 Core İşlemci

4 GB Ram

40 GB Disk

1. Proxy sunucusunda kullanmak üzere alan adınız dns yönetimini bölümünden "proxy.siteadresiniz.com" şeklinde "A" kaydı oluşturun ve aşağıdaki komutta işaretlenmiş ilgili kısmı düzenleyerek çalıştırın.

apt-get update -y && apt-get upgrade -y && shutdown -r now

apt-get install nginx -y && apt install certbot python3-certbot-nginx -y && sudo certbot --nginx -d proxy.siteadresiniz.com --non-interactive --agree-tos --register-unsafely-without-email --redirect

2. Aşağıdaki komutu işaretlenmiş ilgili kısmı düzenleyerek çalıştırın.

DOMAIN="proxy.siteadresiniz.com" && sudo bash -c 'printf "map \$arg_hostname \$ng_hostname {\n   default \$arg_hostname;\n}\n\nmap \$arg_port \$ng_port {\n   default \$arg_port;\n}\n\nmap \$arg_ticket \$ng_ticket {\n   default \$arg_ticket;\n}\n\nserver {\n   listen 443 ssl;\n   server_name '"$DOMAIN"';\n\n   ssl_certificate /etc/letsencrypt/live/'"$DOMAIN"'/fullchain.pem;\n   ssl_certificate_key /etc/letsencrypt/live/'"$DOMAIN"'/privkey.pem;\n\n   ssl_protocols TLSv1.2 TLSv1.3;\n   ssl_prefer_server_ciphers on;\n\n   location /ticket {\n       if (\$ng_hostname = \"\") { return 400; }\n       if (\$ng_port = \"\") { return 400; }\n       if (\$ng_ticket = \"\") { return 400; }\n\n       proxy_pass https://\$ng_hostname:\$ng_port\$ng_ticket;\n       proxy_http_version 1.1;\n       proxy_set_header Upgrade \$http_upgrade;\n       proxy_set_header Connection \"upgrade\";\n       proxy_set_header Host \$host;\n       proxy_set_header X-Forwarded-For \$remote_addr;\n       proxy_set_header X-Forwarded-Proto \$scheme;\n       proxy_read_timeout 86400;\n       proxy_ssl_verify off;\n       proxy_ssl_verify_depth 0;\n       proxy_ssl_server_name on;\n   }\n}\n" | tee /etc/nginx/sites-available/default > /dev/null' && systemctl restart nginx

3. Wisecp/Whmcs admin üzerindeki VMTools yönetim paneli "Genel Ayarlar" bölümünden Web Konsol Ayarları kısmına proxy için oluşturduğunuz alan adını başında "http://" ve "www." ön eki olmadan tanımlayınız.


Kurulumu başarıyla tamamladınız!