Ինչպես ամրացնել SSH-ը Linux VPS-ում

Հեղինակ՝ ONIE ինժեներական թիմ · Թարմացվել է November 12, 2026 · Ընթերցանություն՝ 2 րոպե

Հանրային VPS-ը սկսում է ավտոմատ մուտքի փորձեր ստանալ արդեն մի քանի րոպե անց՝ առցանց դառնալուց հետո։ Այս քայլերը SSH-ը շատ ավելի դժվար են դարձնում հարձակման համար։ Դրանք գրված են Ubuntu-ի կամ Debian-ի համար։ Եթե սերվեր դեռ չունեք, կարող եք վարձակալել Linux VPS և սկսել մաքուր պատկերից։ Նոր կարգավորումները փորձարկելուց առաջ պահեք ձեր ընթացիկ SSH սեսիան բաց, մինչև երկրորդ պատուհանից փորձարկեք նորը։

1. Ստեղծեք սովորական օգտատեր sudo-ով

adduser deploy
usermod -aG sudo deploy

2. Օգտագործեք SSH բանալիներ գաղտնաբառերի փոխարեն

Ձեր սեփական համակարգչում՝

ssh-keygen -t ed25519 -C "you@example.com"
ssh-copy-id deploy@YOUR_SERVER_IP
ssh deploy@YOUR_SERVER_IP

Մուտք գործեք մեկ անգամ բանալիով՝ նախքան գաղտնաբառերն անջատելը, որպեսզի հաստատեք, որ այն աշխատում է։

3. Անջատեք գաղտնաբառով և root մուտքը

Ստեղծեք /etc/ssh/sshd_config.d/99-hardening.conf ֆայլը՝

PasswordAuthentication no
PermitRootLogin no
PubkeyAuthentication yes
MaxAuthTries 3

Ստուգեք շարահյուսությունը և վերաբեռնեք ծառայությունը։ Ծառայության անունը Ubuntu-ում և Debian-ում ssh է, իսկ RHEL-ի վրա հիմնված համակարգերում՝ sshd։

sudo sshd -t && sudo systemctl reload ssh

Բացեք երկրորդ տերմինալը և նորից մուտք գործեք։ Միայն դրանից հետո փակեք հին սեսիան։

4. Միացրեք firewall

sudo ufw default deny incoming
sudo ufw default allow outgoing
sudo ufw allow OpenSSH
sudo ufw enable
sudo ufw status verbose

Բացեք միայն անհրաժեշտ պորտերը, օրինակ՝ 80-ը և 443-ը վեբ սերվերի համար։ Կարող եք նաև սահմանափակել SSH-ը ձեր սեփական IP հասցեով՝ ամպային վահանակում firewall կանոնի միջոցով։

5. Արգելափակեք կրկնվող ձախողումները Fail2ban-ով

sudo apt install -y fail2ban

Ստեղծեք /etc/fail2ban/jail.local ֆայլը՝

[sshd]
enabled = true
maxretry = 5
findtime = 10m
bantime = 1h
sudo systemctl enable --now fail2ban
sudo fail2ban-client status sshd

6. Տեղադրեք անվտանգության թարմացումները ավտոմատ

sudo apt install -y unattended-upgrades
sudo dpkg-reconfigure --priority=low unattended-upgrades

7. Լրացուցիչ տարբերակներ

  • SSH պորտը փոխելը նվազեցնում է լոգերի աղմուկը, բայց ինքնին անվտանգության միջոց չէ։
  • Պաշտպանեք մասնավոր բանալին գաղտնաբառային արտահայտությամբ (passphrase) և պահեք պահուստային պատճենը ապահով տեղում։
  • Վերանայեք մուտքերը հետևյալ հրամաններով՝ last և sudo journalctl -u ssh --since today։
  • Վերցրեք snapshot սերվերի կարգավորումից հետո, որպեսզի կարողանաք վերականգնել մաքուր հիմքը։

Եթե կողպվել եք դուրս, օգտագործեք ամպային վահանակի բրաուզերային կոնսոլը՝ մուտք գործելու և կարգավորումը ուղղելու համար։ Մեր DDoS պաշտպանության ուղեցույցը ներկայացնում է պաշտպանության հաջորդ շերտը։

Հաճախ տրվող հարցեր

Արդյո՞ք ապահով է root մուտքը անջատելը։

Այո՛, եթե նախ ստեղծել եք sudo օգտատեր և ստուգել, որ նրա բանալին աշխատում է։ Վարչական հրամանները դեռ կարող եք կատարել sudo-ով։

Արդյո՞ք Fail2ban-ը անհրաժեշտ է, եթե օգտագործում եք միայն բանալիներ։

Այն պարտադիր չէ։ Երբ գաղտնաբառով մուտքն անջատված է, բրուտֆորս հարձակումը չի կարող հաջողվել, սակայն Fail2ban-ը նվազեցնում է լոգերի աղմուկը և բեռը։

Ի՞նչ անեմ, եթե կորցնեմ SSH բանալիս։

Օգտագործեք ամպային վահանակի կոնսոլը՝ մուտք գործելու համար, ավելացրեք նոր հանրային բանալի ~/.ssh/authorized_keys ֆայլում և հեռացրեք հինը։

Աղբյուրներ և հավելյալ ընթերցանություն

VPS-ի այլ ուղեցույցներ