Ubuntu VPS тохируулах
Шинэ Ubuntu 24.04 LTS VPS дээр SSH түлхүүр, тусдаа администратор, Nginx, DNS болон HTTPS-ийг дарааллаар нь бэлтгэж, жижиг статик сайт нийтлэх жишээ. Энэ заавар нь шинэ серверт зориулагдсан: ажиллаж буй систем дээр командыг шууд хуулж ажиллуулахгүй.
VPSuntu · Шалгасан: · Англи эхтэй уялдуулсан орчуулга
Агуулга
Сервер, домэйн ба сэргээх хандалтыг бэлтгэх
Үйлчилгээ үзүүлэгчийн консол, IP, домэйн удирдлага болон сэргээх замыг эхлээд шалга. Ubuntu 24.04 LTS image болон CPU архитектурыг баталгаажуул. Энэ жишээ зөвхөн шинэ instance-д хамаарна.
VM үүсгэхээс өмнө SSH түлхүүр бэлтгэх
Түлхүүрийг өөрийн компьютер дээр үүсгэнэ. Public key-г үйлчилгээ үзүүлэгчийн console-д нэм, private key-г хэзээ ч серверийн вэб каталогт эсвэл GitHub-д байрлуулахгүй.
Шинэ түлхүүрээр нэвтрэхийг туршиж байж хуучин аргаа хаана.
mkdir -p ~/.ssh
ssh-keygen -t ed25519 -f ~/.ssh/ubuntu_vps
cat ~/.ssh/ubuntu_vps.pubscp -i ~/.ssh/existing_vps_key ~/.ssh/ubuntu_vps.pub ubuntu@203.0.113.10:ubuntu-vps-admin.pubif ssh-keygen -lf ~/ubuntu-vps-admin.pub; then
mkdir -p ~/.ssh
chmod 700 ~/.ssh
printf '\n' >> ~/.ssh/authorized_keys
cat ~/ubuntu-vps-admin.pub >> ~/.ssh/authorized_keys
chmod 600 ~/.ssh/authorized_keys
fisudo ssh-keygen -lf /etc/ssh/ssh_host_ed25519_key.pubssh -i ~/.ssh/ubuntu_vps ubuntu@203.0.113.10scp -i ~/.ssh/ubuntu_vps ~/.ssh/ubuntu_vps.pub ubuntu@203.0.113.10:ubuntu-vps-admin.pubТусдаа администратор үүсгэж турших
Root-ээр өдөр тутмын ажил хийхийн оронд sudo эрхтэй тусдаа хэрэглэгч бэлтгэ. Шинэ хэрэглэгчийн SSH холболтыг өөр терминалаар туршиж, одоогийн ажиллаж буй session-ийг хадгал.
cat /etc/os-release
free -h
df -h /
sudo apt update
sudo apt upgrade
sudo adduser deploy
sudo usermod -aG sudo deploy
sudo install -d -m 700 -o deploy -g deploy /home/deploy/.ssh
sudo install -m 600 -o deploy -g deploy ~/ubuntu-vps-admin.pub /home/deploy/.ssh/authorized_keysssh -i ~/.ssh/ubuntu_vps deploy@203.0.113.10sudo whoamiNginx суулгах ба firewall-ийг зөв удирдах
Ubuntu image-ийн идэвхтэй сүлжээний систем, cloud firewall болон UFW ашиглаж буй эсэхийг шалга. SSH нэвтрэлт таслахгүйгээр зөвхөн шаардлагатай порт нээнэ. Нэг дор олон firewall өөрчилж болохгүй.
sudo apt install nginx
sudo systemctl enable --now nginxsudo apt install ufw
sudo ufw allow 22/tcp
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
sudo ufw enable
sudo ufw status verboseБие даасан Nginx сайт нийтлэх
Туршилтын HTML-ийг зориулалтын каталогт хийж, Nginx-ийн тусдаа server block ашигла. Эхлээд config syntax шалгаад reload хий. Ажиллаж буй бусад virtual host-уудыг дарж бичихгүй.
sudo install -d -m 755 /var/www/first-site
printf '%s\n' '<!doctype html><html lang="en"><title>First deployment</title><h1>Ubuntu VPS is serving this page</h1></html>' | sudo tee /var/www/first-site/index.html
sudo tee /etc/nginx/sites-available/first-site >/dev/null <<'EOF'
server {
listen 80;
listen [::]:80;
server_name app.example.com;
root /var/www/first-site;
index index.html;
location / {
try_files $uri $uri/ =404;
}
}
EOF
sudo ln -s /etc/nginx/sites-available/first-site /etc/nginx/sites-enabled/first-site
sudo nginx -tsudo systemctl reload nginxcurl --resolve app.example.com:80:203.0.113.10 http://app.example.com/DNS холбож HTTPS сертификат авах
Өөрийн удирддаг домэйны A/AAAA бичлэгийг зөв IP рүү чиглүүлж, HTTP хариу гадаадаас очиж буйг шалга. Үүний дараа HTTPS сертификат болон автомат сунгалтыг тохируул.
sudo apt install certbot python3-certbot-nginx
sudo certbot --nginx -d app.example.com --redirect
sudo nginx -t
sudo certbot renew --dry-run
systemctl list-timers --all certbot.timerГадаадаас болон reboot-ийн дараа шалгах
HTTPS хариу, TLS хугацаа, DNS, Nginx төлөв, 301 чиглүүлэлт, статик файл, шаардлагатай порт болон сервер дахин ачаалсны дараах байдалтай тулга.
curl -I http://app.example.com/
curl -I https://app.example.com/
curl -fsS https://app.example.com/Шалгалт амжилтгүй болвол өөрчлөлтөө зогсоох
Nginx error log, DNS, сүлжээний бодлого, сертификат болон файл эрхийг тус тус шалга. Хэрэв шинэ тохиргоо өмнөх үйлчилгээнд сөргөөр нөлөөлбөл ажилладаг хувилбар руу буц. Нууц түлхүүрийг алдааны тайланд бүү хавсарга.
Түгээмэл асуулт
Эдгээр командыг ажиллаж буй сервер дээр шууд ажиллуулах уу?
Үгүй. Энэ нь шинэ Ubuntu 24.04 instance-д зориулсан жишээ. Өмнөх тохиргоо, нөөц хуулбар, эрх, аюулгүй байдлыг эхлээд шалга.
HTTPS ажиллаж эхэлбэл дууссан уу?
Үгүй. DNS, redirect, сертификат сунгалт, алсаас хандах боломж болон дахин ачаалсны дараах төлөвийг шалгах хэрэгтэй.
Эх сурвалж ба баталгаажуулалт
Техникийн алхмууд болон командуудыг англи эх хувилбартай тулгана. Үйлчилгээ үзүүлэгчийн нөхцөл өөрчлөгдөж болох тул үйлдэхээсээ өмнө шинэ мэдээллийг шалга.
Холбогдох зааврууд
Linux VPS
Linux VPS хостинг сонгохдоо CPU, RAM, диск, сүлжээ, нөөцлөлт, удирдлага болон сарын нийт зардлыг нэг ижил ачааллаар харьцуулж шалгах заавар.
Зааврыг унших ↗Үнэгүй VPS
Үнэгүй VPS хайхдаа Oracle Cloud болон Google Cloud-ийн квот, туршилтын хугацаа, диск, IP, сүлжээ, нөөцлөлтийн төлбөрийн нөхцөлийг шалгаарай.
Зааврыг унших ↗Үнэгүй Ubuntu VPS
Oracle Cloud-д шаардлага хангасан Ubuntu VM үүсгэх, SSH түлхүүр, сүлжээ, host key шалгах, шинэчлэл ба туршилтын нөөцийг цэвэрлэх заавар.
Зааврыг унших ↗Ubuntu хувилбар ба архитектур сонгох
VPS-д Ubuntu LTS, amd64 эсвэл arm64 сонгохын өмнө runtime, багц, мэдээллийн сан, cloud-init болон шинэчлэлтийн нийцлийг шалгаарай.
Зааврыг унших ↗