ការអនុវត្ត / ដោះស្រាយបញ្ហា SSH

ដោះស្រាយបញ្ហា SSH៖ ពិនិត្យតាមសារកំហុស

ពេល SSH ទៅ Ubuntu VPS បរាជ័យ សូមយកសារកំហុសជាចំណុចចាប់ផ្ដើម។ មគ្គុទ្ទេសក៍នេះបែងចែកបញ្ហាបណ្តាញ service, authentication និង host identity ដោយរក្សាផ្លូវចូលដែលនៅប្រើបាន។

· កែថ្មី៖ · អានប្រហែល 5 នាទី

មាតិកាទំព័រ

កត់ការបរាជ័យមួយ ហើយរក្សាផ្លូវចូល

រក្សា SSH session ដែលជោគជ័យ និងរក provider recovery console ។ Client commands រត់លើកុំព្យូទ័រ Linux, macOS ឬ WSL ។ Server commands រត់តាម session ចាស់ឬ authenticated console; កុំបិទភ្ជាប់វាទៅ local terminal ។

ប្ដូរ documentation IP 203.0.113.10, username ubuntu, port 22 និង key path ទៅតម្លៃពិត។ បង្ហាញ client settings ដែលមានប្រសិទ្ធភាព រួចសាកការភ្ជាប់ថ្មីមួយ៖

ssh -G -p 22 -i ~/.ssh/ubuntu_vps ubuntu@203.0.113.10
ssh -v -S none -o ConnectTimeout=10 -o StrictHostKeyChecking=ask -p 22 -i ~/.ssh/ubuntu_vps ubuntu@203.0.113.10

ពិនិត្យ hostname, user, port, identityfile និង proxy settings ។ ពាក្យបញ្ជាទីពីរបិទ connection sharing សម្រាប់ការសាកនេះ។ កត់ពេលនិងសារចុងក្រោយ។ ផ្ទៀងផ្ទាត់ host-key prompt ថ្មីតាមផ្នែកខាងក្រោម។ លាក់ usernames, addresses និង paths មុនចែក debug output; កុំចែក private key ។

ជ្រើសការពិនិត្យតាមដំណាក់កាលកំហុស

លើអេក្រង់តូច អូសតារាងទៅចំហៀងដើម្បីមើលគ្រប់ជួរឈរ។

សារឬដំណាក់កាលអត្ថន័យពិនិត្យបន្ទាប់
Connection timed out មុន establishedTCP មិនបានភ្ជាប់ពេញលេញAddress, routing, firewalls និង provider state
Connection refusedការបដិសេធសកម្មនៅ IP/port នោះPort ត្រូវ, listener និង reject rules
Permission denied (publickey)ដល់ authentication តែ credentials បរាជ័យUsername, offered key និង server policy
REMOTE HOST IDENTIFICATION HAS CHANGEDHost identity បង្ហាញខុសពីដែលរក្សាផ្ទៀងផ្ទាត់ trusted host key មុនបន្ត

សារទាំងនេះកាត់បន្ថយកន្លែងស្វែងរក មិនបញ្ជាក់មូលហេតុតែមួយទេ។ បើ debug បង្ហាញ Connection established មុន timeout ពិនិត្យ SSH handshake និង logs មិនសន្មតថា packets ទាំងអស់ត្រូវបិទ។

Timeout ៖ តាមដានផ្លូវបណ្តាញដែលចង់ទៅ

ប្រៀបធៀប destination ក្នុង ssh -v ជាមួយ IP បច្ចុប្បន្នក្នុង provider panel ។ Hostname អាចមាន DNS ចាស់ឬ IPv6 ផ្សេង។ បញ្ជាក់ថា VPS ត្រូវការ public IP, VPN ឬ jump host ។

ពិនិត្យ instance Running និង public routing ។ ក្នុង provider firewall មើល SSH destination port ពិតនិង public source IP បច្ចុប្បន្ន។ Home IP អាចប្ដូរខណៈ /32 rule នៅចាស់។ ពិនិត្យ guest firewall តាម console ផង។

លើ Oracle ត្រូវពិនិត្យ security lists, NSGs, routing និង guest firewall ។ រក្សា rules របស់ image; ដំឡើង UFW ឬ flush iptables មិនមែនជាជំហានវិនិច្ឆ័យទេ។ មគ្គុទ្ទេសក៍ Oracleបង្ហាញ network layout ។ Ping បរាជ័យតែឯងមិនបញ្ជាក់ថា SSH មិនអាចប្រើបាន។

Connection refused ៖ ពិនិត្យ service ដែលកំពុង listen

Refusal មិនផ្ទៀងផ្ទាត់ថា destination ជា VPS របស់អ្នកទេ។ បញ្ជាក់អត្តសញ្ញាណនិង port រួចរត់ read-only checks លើ server តាម access ចាស់ឬ console ៖

systemctl status ssh.service ssh.socket --no-pager
sudo ss -lntp
sudo /usr/sbin/sshd -t
sudo journalctl -u ssh.service -u ssh.socket --since '15 minutes ago' --no-pager

រក listener លើ port/address ត្រឹមត្រូវ ហើយផ្គូផ្គង logs ជាមួយពេលសាក។ Ubuntu អាចប្រើ socket activation ៖ ssh.service មិនសកម្មតែឯងមិនបញ្ជាក់ថា SSH បិទ បើ ssh.socket កំពុង listen ។

sshd -t ពិនិត្យ config និង host keys ដោយមិនចាប់ផ្ដើម daemon ។ Silent success មិនបញ្ជាក់ network reachability ។ បើមានកំហុស រក file ឬ setting មុនពិចារណា reload; កុំ restart ដោយស្មាន។

Public key ត្រូវបដិសេធ៖ ពិនិត្យគណនីនិង key

ប្រើ initial account របស់ provider ឬ admin ដែលអ្នកបង្កើត មិនស្មាន username ។ ក្នុង client debug រក fingerprint របស់ key ដែលបាន offer ។ ដើម្បីកាត់ keys មិនពាក់ព័ន្ធពី agent សាកលើកុំព្យូទ័រ៖

ssh -v -S none -o IdentitiesOnly=yes -o StrictHostKeyChecking=ask -p 22 -i ~/.ssh/ubuntu_vps ubuntu@203.0.113.10

IdentityFile entries ដែល config អាចនៅអនុវត្ត; ពិនិត្យ ssh -G ។ បើ client អាន key មិនបានឬ private-key permissions ទូលាយពេក កែ local file មុនកែ server ។

លើ server ពិនិត្យ target account និង authorized public keys ។ គំរូប្រើ /home/ubuntu; ប្ដូរតាម home ដែល getent បង្ហាញ៖

getent passwd ubuntu
sudo ls -ld /home/ubuntu /home/ubuntu/.ssh /home/ubuntu/.ssh/authorized_keys
sudo ssh-keygen -lf /home/ubuntu/.ssh/authorized_keys

ផ្គូផ្គង authorized fingerprints ជាមួយ key ដែល offer ។ មើល journal សម្រាប់ ownership, permissions ឬ account policy ។ ពិនិត្យ AuthorizedKeysFile, included snippets និង Match rules បើមិនប្រើ default path ។ Provider-managed key service អាចប្ដូរវិធីផង។ រក្សា authorized keys ចាស់; កុំបិទ StrictModes ឬបើក password ដើម្បីលាក់មូលហេតុ។

Host identity ប្ដូរ៖ ផ្ទៀងផ្ទាត់មុនភ្ជាប់វិញ

Rebuild ឬ IP ដែលបានចាត់តាំងថ្មីអាចប្ដូរ host key ប៉ុន្តែការប្ដូរមិនរំពឹងទុកក៏អាចជា endpoint ខុសឬការស្ទាក់។ បញ្ជាក់ instance ID និង planned rebuild ក្នុង authenticated provider panel ។

តាម trusted console របស់ guest ពិនិត្យ public host key ដែលត្រូវនឹង algorithm ក្នុង client ។ សម្រាប់ Ed25519៖

sudo ssh-keygen -lf /etc/ssh/ssh_host_ed25519_key.pub -E sha256

ប្រៀបធៀប SHA256 fingerprint ជាមួយ warning ។ នេះជា server key មិនមែន login key ឬ console gateway key ។ ក្រោយផ្ទៀងផ្ទាត់ replacement អាចត្រូវកែ saved entry របស់ server នោះ; backup ឯកសារហើយរក្សា entries មិនពាក់ព័ន្ធ។ កុំលុប known_hosts ទាំងមូល ឬរំលងការពិនិត្យ។ បើ identity មិនទាន់ពន្យល់បាន សូមឈប់ភ្ជាប់ហើយស៊ើបអង្កេត។

ផ្ទៀងផ្ទាត់ការកែជាក់លាក់ក្នុង session ថ្មី

កែ address, user, key, network rule តូច ឬ config error ដែលបានរកឃើញ។ រក្សាផ្លូវចូលឯករាជ្យពេលកែ server ហើយ validate SSH config មុន apply ។ ប្ដូរ port អាចពាក់ព័ន្ធ socket activation មិនមែនតែ restart service ។

សាកការភ្ជាប់ដើមដោយបិទ connection sharing ។ បញ្ជាក់ថា login ថ្មីដល់គណនីត្រូវ ហើយ sudo ដែលត្រូវការប្រើបាន។ Session ចាស់នៅភ្ជាប់មិនមែនការសាកនេះទេ។ កត់មូលហេតុនិងការកែ រួចត្រឡប់ទៅការដំឡើង Ubuntu VPSបើបានផ្អាក។

សំណួរនិងចម្លើយ

គួរ reinstall Ubuntu ដើម្បីជួសជុល SSH ឬ?

រកមូលហេតុសិន។ IP, username ឬ key ខុសមិនត្រូវការ reinstall ដែលអាចបំផ្លាញទិន្នន័យ។ បើគ្មាន access ប្រើ provider recovery process ។

Console ប្រើបានមានន័យថា SSH គួរប្រើបានឬ?

មិនមែនទេ។ Console និង public SSH ប្រើផ្លូវផ្សេង។ Guest listener, account authentication និង network rules នៅតែត្រូវអនុញ្ញាតការភ្ជាប់។

ឧទាហរណ៍បច្ចេកទេសត្រូវកែតាមបរិស្ថានរបស់អ្នក។ ពិនិត្យលទ្ធផលរាល់ជំហាន និងរក្សាផ្លូវសង្គ្រោះ។ លក្ខខណ្ឌអ្នកផ្ដល់សេវាអាចផ្លាស់ប្ដូរ; ពិនិត្យឯកសារដើម និងគណនីមុនបង្កើតធនធាន។

ឯកសារយោងផ្លូវការ

  1. ឯកសារ 1៖ ubuntu.com
  2. ឯកសារ 2៖ man.openbsd.org
  3. ឯកសារ 3៖ man.openbsd.org
  4. ឯកសារ 4៖ man.openbsd.org
  5. ឯកសារ 5៖ man.openbsd.org
  6. ឯកសារ 6៖ man.openbsd.org
  7. ឯកសារ 7៖ documentation.ubuntu.com
  8. ឯកសារ 8៖ docs.oracle.com

មគ្គុទ្ទេសក៍ពាក់ព័ន្ធ