Барои пайвастшавӣ ssh root@<server-ip>-ро бо калиди SSH, ки ҳангоми сохтани сервер интихоб кардед, ё бо пароли root, ки ба почтаи электронии шумо фиристода шудааст, иҷро кунед. Агар SSH дастрас набошад, аз намуди сервер дар консол консоли браузер ё реҷаи rescue-ро истифода баред.
Суроғаро ёбед
Серверро дар консол кушоед. Саҳифаи умумӣ IPv4-и оммавӣ (агар бошад) ва суроғаи IPv6-и онро нишон медиҳад. Серверҳое, ки дар шабакаи хусусӣ ҳастанд, танҳо суроғаҳои хусусӣ доранд; бахши зерро дар бораи серверҳои бе IP-и оммавӣ бинед.
Пайвастшавӣ аз Linux ё macOS
ssh [email protected] # example IPv4
ssh root@2001:db8::10 # example IPv6
Агар калиди шумо ~/.ssh/id_ed25519-и пешфарз набошад, онро нишон диҳед:
ssh -i ~/.ssh/wolkra_ed25519 [email protected]
Ҳангоми пайвастшавии аввал изи ангушти ҳостро (fingerprint) бо yes тасдиқ кунед.
Пайвастшавӣ аз Windows
Windows 10 ва 11 OpenSSH-ро дар бар мегиранд. Дар PowerShell:
Бо PuTTY суроғаро дар майдони Host Name ворид кунед, калиди .ppk-и худро дар Connection → SSH → Auth → Credentials бор кунед ва ҳамчун root ворид шавед.
Бо пароли root
Агар шумо калиди SSH интихоб накарда бошед, пароли root бо почтаи электронӣ меояд. Ворид шавед ва фавран онро иваз кунед:
passwd
Аз ин ҳам беҳтар, калиди худро илова кунед ва воридшавӣ бо паролро хомӯш кунед. Дастур оид ба калидҳои SSH нишон медиҳад, ки чӣ тавр.
Миёнбур захира кунед
Серверро ба ~/.ssh/config илова кунед:
Host web-1
HostName 203.0.113.10
User root
IdentityFile ~/.ssh/id_ed25519
Акнун ssh web-1 кифоя аст.
Дастрасӣ ба серверҳои бе IP-и оммавӣ
Серверҳое, ки танҳо дар шабакаи хусусӣ ҳастанд, суроғаи оммавӣ надоранд. Тавассути сервере, ки суроғаи оммавӣ дорад, яъне jump host пайваст шавед:
ssh -J [email protected] [email protected] # example addresses
Ё дар ~/.ssh/config:
Host db-1
HostName 10.0.0.5
User root
ProxyJump web-1
VPN-и WireGuard ба шабакаи хусусӣ барои дастаҳо имконияти хуби дигар аст.
Консоли браузер
Серверро кушоед ва Console-ро интихоб кунед. Он экрани серверро нишон медиҳад, гӯё монитор пайваст бошад, ва ҳатто вақте ки шабака ё SSH вайрон аст, кор мекунад. Бо корбаре ворид шавед, ки парол дорад. Агар root танҳо калид дошта бошад, то даме ки дастрасии SSH ҳаст, аввал парол гузоред:
passwd
Консолро барои ислоҳи қоидаи firewall, хатои танзимоти SSH ё танзимоти шабака истифода баред.
Реҷаи rescue
Агар система дигар бор нашавад, дар намуди сервер Rescue-ро интихоб кунед. Сервер дар системаи хурди наҷотдиҳӣ аз нав оғоз мешавад. Тибқи дастури дар консол нишондодашуда ворид шавед, баъд диски худро васл (mount) кунед ва онро таъмир кунед:
lsblk # find the system disk and its partitions
mount /dev/vda1 /mnt # device names vary, check lsblk first
Баъд аз анҷом, дискро ҷудо (unmount) кунед, аз реҷаи rescue бароед ва серверро ба таври муқаррарӣ аз нав бор кунед.
Ҳалли мушкилот
| Нишона | Чиро санҷидан лозим |
|---|---|
Connection timed out |
Сервер кор мекунад? Порти 22 дар UFW ва дар firewall иҷозат дода шудааст? IP дуруст аст? |
Connection refused |
Хидмати SSH қатъ шудааст ё дар порти дигар аст: дар консол бо systemctl status ssh санҷед |
Permission denied (publickey) |
Корбар ва калид дурустанд? Иҷозатҳои 700 барои ~/.ssh ва 600 барои authorized_keys? |
REMOTE HOST IDENTIFICATION HAS CHANGED |
Сервер аз нав сохта шудааст: ssh-keygen -R 203.0.113.10 |
Барои логи муфассал ssh -v-ро иҷро кунед. Боз ҳам мушкил ҳал нашуд? Дар консол дархости дастгирӣ (тикет) кушоед.
Қадами навбатӣ: серверро бо дастури чӣ тавр сервери Ubuntu-ро ҳифз кардан мустаҳкам кунед.
Саволҳои маъмул
Кадом номи корбарро истифода барам?
Барои сервери нав root. Дар барномаҳои якклика низ ҳамин тавр аст, агар дар қайдҳои барнома чизи дигар гуфта нашуда бошад. Баъдан корбари sudo-и худро созед.
Ман калиди SSH интихоб накардам. Чӣ тавр ворид шавам?
Пароли root ба почтаи электронии шумо фиристода мешавад. Бо он ворид шавед, онро бо passwd иваз кунед ва баъд калид илова кунед.
SSH «permission denied» мегӯяд. Акнун чӣ кор кунам?
Корбар, калид ва IP-ро санҷед. Агар боз кор накунад, аз намуди сервер консоли браузерро кушоед ва ~/.ssh/authorized_keys ва танзимоти SSH-ро тафтиш кунед.
Оё аз консол ба сервери мавҷуда калид илова карда метавонам?
Калидҳои захирашуда ҳангоми сохтани сервер илова мешаванд. Барои сервери кордаста калиди оммавиро худатон ба ~/.ssh/authorized_keys илова кунед, масалан тавассути консоли браузер.