EQVPS

የ nginx ተገላቢጦሽ ፕሮክሲን ከ HTTPS ጋር እንዴት ማዋቀር እንደሚቻል

በአካባቢያዊ ወደብ ላይ የሚያዳምጥ ማንኛውም መተግበሪያ ፊት ንፁህ ጎራና ራስ-ሰር HTTPS ያኑሩ። ሁለት መንገዶች: nginx ከ Certbot ጋር፣ ወይም Caddy በአንድ መስመር ራስ-ሰር TLS ለማግኘት። ደረጃ በደረጃ፣ ለመቅዳት ዝግጁ ከሆነ ውቅር ጋር።

አብዛኞቹ በራስ የተስተናገዱ መተግበሪያዎች እንደ 127.0.0.1:3000 ባለ አካባቢያዊ ወደብ ላይ ያዳምጣሉ እና ግልፅ HTTP ይናገራሉ። ተገላቢጦሽ ፕሮክሲ ፊት ለፊት በወደብ 80/443 ላይ ይቆማል፣ HTTPS ን በእውነተኛ የምስክር ወረቀት ያጠናቅቃል፣ ትራፊክንም ወደዚያ አካባቢያዊ ወደብ ያስተላልፋል — ንፁህ https://app.yourdomain.com ይሰጥዎታል እና ከአንድ IP ኋላ ብዙ መተግበሪያዎችን እንዲያስኬዱ ያስችልዎታል። ሁለቱ የተለመዱ መንገዶች እነሆ።

ቅድመ ሁኔታዎች

አማራጭ A — Caddy (ራስ-ሰር HTTPS፣ አንድ መስመር)

sudo apt install -y caddy
echo 'app.yourdomain.com { reverse_proxy 127.0.0.1:3000 }' | sudo tee /etc/caddy/Caddyfile
sudo systemctl restart caddy

ይኸው ብቻ — Caddy ለጎራው የ Let's Encrypt የምስክር ወረቀት ያገኛል እና ራስ-ሰር ያድሰዋል።

አማራጭ B — nginx + Certbot

sudo apt install -y nginx certbot python3-certbot-nginx

/etc/nginx/sites-available/app ይፍጠሩ:

server {
    listen 80;
    server_name app.yourdomain.com;
    location / {
        proxy_pass http://127.0.0.1:3000;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
    }
}

ያንቁት እና HTTPS ይጨምሩ:

sudo ln -s /etc/nginx/sites-available/app /etc/nginx/sites-enabled/
sudo nginx -t && sudo systemctl reload nginx
sudo certbot --nginx -d app.yourdomain.com

Certbot HTTPS ለማቅረብ ውቅሩን ያስተካክላል እና ራስ-ሰር ማደሻን ያዘጋጃል።

ታማኝ ማስጠንቀቂያዎች

ቀጣይ ደረጃዎች

ተገላቢጦሽ ፕሮክሲ አንድ አገልጋይ ብዙ ነገሮችን እንዲያቀርብ የሚያስችለው ነገር ነው — ይመልከቱ ከአንድ IP ኋላ ብዙ አገልግሎቶችን በራስ ማስተናገድ። መተግበሪያውን በኮንቴይነር ውስጥ እያስኬዱ ነው? በ Docker እንዴት እንደሚጫን ይጀምሩ። መተግበሪያው ራሱ ዳግም ማስነሳትንና ብልሽትን አልፎ በሕይወት እንዲቆይ፣ ይመልከቱ የ systemd አገልግሎት እንዴት እንደሚፈጠር

FAQ

ተገላቢጦሽ ፕሮክሲ ምንድን ነው እና ለምን ያስፈልገኛል?

መተግበሪያዎ ብዙውን ጊዜ እንደ 127.0.0.1:3000 ባለ አካባቢያዊ ወደብ ላይ ያዳምጣል። ተገላቢጦሽ ፕሮክሲ ፊት ለፊት በወደብ 80/443 ላይ ይቆማል፣ HTTPS ን ያጠናቅቃል፣ ጥያቄዎችንም ወደዚያ አካባቢያዊ ወደብ ያስተላልፋል። ንፁህ ጎራ፣ ትክክለኛ የ TLS የምስክር ወረቀት፣ እና ከአንድ IP ኋላ ብዙ መተግበሪያዎችን የማስኬድ ችሎታ ይሰጥዎታል — ይህንም ሁሉ መተግበሪያው ራሱ ማድረግ ሳያስፈልገው።

nginx ወይስ Caddy — የትኛውን ልምረጥ?

Caddy ፈጣኑ መንገድ ነው: የ Let's Encrypt የምስክር ወረቀቶችን ራስ-ሰር ያገኛል እና ያድሳል፣ የሚሰራ የ HTTPS ፕሮክሲ ደግሞ የአንድ መስመር ውቅር ነው። nginx የበለጠ የታወቀና ተለዋዋጭ ነው፣ ግን ለ TLS Certbot ትጨምራላችሁ። HTTPS በትንሽ ችግር ከፈለጋችሁ Caddy ተጠቀሙ፤ nginx አስቀድማችሁ ካወቃችሁ ወይም ባህሪያቱን ከፈለጋችሁ nginx ተጠቀሙ።

ጎራ ያስፈልገኛል?

ለታመነ የ HTTPS የምስክር ወረቀት፣ አዎ — Let's Encrypt የምስክር ወረቀቶችን ለጎራ ስሞች እንጂ ለባዶ IP አይሰጥም። የ A ሪከርድን ወደ አገልጋይዎ IP ያመልክቱ፣ የ DNS ስርጭትን ይጠብቁ፣ ከዚያ ፕሮክሲው ለዚያ ስም የምስክር ወረቀት ማግኘት ይችላል።

የትኞቹ ወደቦች ክፍት መሆን አለባቸው?

ገቢ 80 እና 443። ወደብ 80 ለመጀመሪያው የምስክር ወረቀት ፈተናና ወደ HTTPS ለማዞር ይጠቅማል፤ 443 የተመሰጠረ ትራፊክ ያቀርባል። ሁለቱንም በእሳት ግድግዳዎ ውስጥ ይክፈቱ (የ UFW መመሪያን ይመልከቱ) እና ሌላ ነገር አስቀድሞ እንዳልያዛቸው ያረጋግጡ።

የምስክር ወረቀት አሰጣጥ ለምን ይከሽፋል?

ሁልጊዜ ማለት ይቻላል DNS ወይም ወደቦች። የጎራው A ሪከርድ ወደዚህ አገልጋይ ማመልከትና መሰራጨት አለበት፣ ወደቦች 80/443 ደግሞ ተደራሽ መሆን አለባቸው (በእሳት ግድግዳ ክፍት፣ ከላይ ያልታገዱ)። እነዚህን ሁለት ካስተካከሉ አሰጣጡ ይሳካል፤ Caddy እና Certbot ሁለቱም እንደገና ይሞክራሉ።

አስተያየቶች

እስካሁን አስተያየቶች የሉም። መጀመሪያ ይሁኑ።

አስተያየት ይተዉ

አስተያየቶች ከመታየታቸው በፊት ይጣራሉ።