ปัญหา SSH - อ่านจากซ็อกเก็ตล้มเหลว: รีเซ็ตการเชื่อมต่อโดยเพียร์


23

ฉันสามารถ SSH ในทิศทางเดียวโดยไม่มีปัญหา:

ตกลง:

ssh user@computerA

แต่วิธีอื่น ๆ :

ssh user@computerB

Read from socket failed: Connection reset by peerฉันได้รับ

ฉันไม่ได้เริ่มรู้ว่าจะแก้ปัญหานี้ได้ที่ไหน

ใครมีเบาะแสบ้าง


การกำหนดค่าเครือข่ายของคุณคืออะไร มีเครื่องใดอยู่หลังไฟร์วอลล์ / เราเตอร์หรือไม่
NorTicUs

ทั้งสองเชื่อมต่อกันผ่านสายอีเธอร์เน็ตผ่านเราเตอร์ พวกเขามี SSH ทั้งสองทิศทางในอดีต
boehj

คุณตรวจสอบทั้ง SSH daemons แล้วหรือยัง มีอะไรในบันทึกบ้าง
NorTicUs

ข่าวดีและข่าวร้าย: ฉันตอบคำถามของฉันเอง ฉันจะพิมพ์ด้านล่าง ขอบคุณสำหรับความช่วยเหลือของคุณเหมือนกันทั้งหมด
boehj

คำตอบ:


13
  1. เริ่มการตรวจสอบไฟล์บันทึกของเซิร์ฟเวอร์

    tail -f /var/log/auth.log

  2. เพิ่ม -v เพื่อรับเอาต์พุต verbose ที่ส่วนท้ายของไคลเอ็นต์

    ssh user@computerB -v

นี่อาจให้รายละเอียดเพิ่มเติมเกี่ยวกับสาเหตุ หากคีย์ rsa และ dsa หายไปบนเซิร์ฟเวอร์ให้แก้ไขโดย:

ssh-keygen -t rsa1 -f /etc/ssh/ssh_host_rsa_key
ssh-keygen -t dsa  -f /etc/ssh/ssh_host_dsa_key

สิ่งนี้ใช้ได้สำหรับฉัน แม้ว่าฉันจะต้องรูทเพื่อเรียกใช้สิ่งต่อไปนี้: ssh-keygen -t dsa -f / etc / ssh / ssh_host_dsa_key
StarDust

คีย์รุ่นใหม่ทำงานอย่างแน่นอน ในกรณีของฉันมันคือการเปลี่ยนที่อยู่ IP ของเครื่องหลังจาก openssh ติดตั้ง (และคีย์ที่สร้างขึ้นระหว่างการติดตั้ง)
Alfishe

หลังจากทำเช่นนี้ฉันเสียโอกาสในการเชื่อมต่อกับเซิร์ฟเวอร์ของฉัน ต้องขอความช่วยเหลือจากผู้ให้บริการโฮสต์ ยังคงรอคำตอบของพวกเขา Centos 7 พร้อม cPanel
Tomas Gonzalez

8

ฉันติดตั้งบิต SSH อีกครั้งโดยทำ:

sudo apt-get --reinstall install openssh-server openssh-client

สิ่งนี้แก้ไขปัญหาทั้งหมดของฉันได้


8
อาจเป็นเรื่องบังเอิญ ว่าปัญหาหยุดเกิดขึ้นในเวลาที่คุณติดตั้ง ssh ใหม่ไม่ใช่การรับประกันแบบสุญญากาศของสาเหตุและผลกระทบ คุณติดตั้งอีกด้านหนึ่งโดยวิธีใด หรือทั้งคู่? ไม่ว่าในกรณีใด ๆ "คำถามนี้ไม่น่าจะช่วยผู้เข้าชมในอนาคต"
Kaz

5

วิธีการของänthräXมีประโยชน์มาก มันใช้งานได้สำหรับฉัน!

โดยทั่วไปฉันคิดว่าหลังจากติดตั้ง ssh จำเป็นต้องใช้ไฟล์คีย์

การแก้ไขเพียงอย่างเดียวที่ฉันทำคือใช้rsaแทนrsa1:

ssh-keygen -t rsa -f /etc/ssh/ssh_host_rsa_key 
ssh-keygen -t dsa -f /etc/ssh/ssh_host_dsa_key

วิธีการแก้ไขที่ได้ผลสำหรับฉัน


นี่เป็นปัญหาในกรณีของฉัน แพคเกจเซิร์ฟเวอร์ ssh ที่มี Ubuntu ปัจจุบันสำหรับเครื่อง Utilite ARM ที่ติดตั้งพร้อมกับอาการของ OP หลังจากรันคำสั่งทั้งสองนี้ (ซึ่งฉันทำเหมือนรูท) ฉันก็สามารถ ssh ได้ในที่สุดขอบคุณมาก +1
James T Snell

1

มันเป็นเพราะการอนุญาตของไฟล์ใน/etc/sshนั้นมีการเปลี่ยนแปลง ... ดังนั้นเปลี่ยนการอนุญาตของไฟล์เหมือนตัวอย่างที่ให้ไว้ด้านล่าง:

ใช้:

chmod 644 ssh_config
chmod 600 moduli

และอื่น ๆ ...

ในที่สุดการอนุญาตไฟล์ควรดูเหมือนสิ่งที่กำหนดด้านล่าง

[root@hostname ssh]# ls -latr
total 172

-rw-r--r--.   1 root root   2047 Aug 12  2010 ssh_config
-rw-------.   1 root root 125811 Aug 12  2010 moduli
-rw-------.   1 root root    963 Mar  1 16:02 ssh_host_key
-rw-r--r--.   1 root root    627 Mar  1 16:02 ssh_host_key.pub
-rw-r--r--.   1 root root    382 Mar  1 16:02 ssh_host_rsa_key.pub
-rw-------.   1 root root   1675 Mar  1 16:02 ssh_host_rsa_key
-rw-r--r--.   1 root root    590 Mar  1 16:02 ssh_host_dsa_key.pub
-rw-------.   1 root root    668 Mar  1 16:02 ssh_host_dsa_key
-rw-------.   1 root root   3845 May  7 11:52 sshd_config

หลังจากเปลี่ยนสิทธิ์ลองเชื่อมต่อจากผงสำหรับอุดรู, ควรทำงานได้ดี ..


1
ทำไมสีโป๊วจึงมีความเกี่ยวข้อง และพิจารณาถาม OP ว่าการอนุญาตมีอะไรบ้างในไฟล์ก่อนที่จะแจ้งว่าเขา / เธอเปลี่ยนมัน
Clive van Hilten

ขออภัยเป็นอย่างยิ่งสำหรับการโพสต์คำตอบในลักษณะที่ไม่ถูกต้องตอนนี้นี่คือสิ่งที่ในระหว่างการติดตั้งแอพบางคนเปลี่ยนสิทธิ์ของไฟล์เหล่านี้เป็น 777 ฉันรู้ว่าในขณะที่จะผ่าน / var / log / ข้อความ เครื่อง) ดังนั้นจึงเปลี่ยนสิทธิ์และเดาอะไร มันทำงานได้ดีหลังจากนั้น
Varun Joseph

1

เรามีปัญหาที่คล้ายกัน แต่เกิดขึ้นเฉพาะเมื่อเข้าสู่ระบบจาก Ubuntu ไปยัง Solaris ตรวจสอบให้แน่ใจว่าทุกบรรทัดเหล่านี้มีอยู่ใน/etc/ssh/ssh_config โฮสต์ Ubuntu แก้ไขปัญหา (คุณควรพบว่าบรรทัดเหล่านี้มีอยู่แล้ว):

Host *
SendEnv LANG LC_*
HashKnownHosts yes
GSSAPIAuthentication yes
GSSAPIDelegateCredentials no
Ciphers aes128-ctr,aes192-ctr,aes256-ctr,arcfour256,arcfour128,aes128-cbc,3des-cbc
HostKeyAlgorithms ssh-rsa,ssh-dss
MACs hmac-md5,hmac-sha1,hmac-ripemd160

ในกรณีของ Xubuntu ฉันต้องการเพียงสองอันสุดท้าย


0

ข้อความนี้ยังสามารถเกิดจากการโจมตี SSH หลายครั้ง หากคุณเห็นข้อความนี้ในบันทึกของคุณอาจเป็นแหล่งที่เป็นอันตรายอาจพยายามที่จะ ssh เข้าสู่เครื่องของคุณโดยใช้ความพยายามรหัสผ่าน brute-force

เพื่อชะลอความพยายามติดตั้งแพคเกจ "fail2ban":

sudo apt-get install fail2ban

จากหน้า wiki ของ fail2ban :

Fail2ban สแกนไฟล์บันทึก (เช่น / var / log / apache / error_log) และแบนไอพีที่แสดงสัญญาณที่เป็นอันตราย - รหัสผ่านล้มเหลวมากเกินไปการค้นหาช่องโหว่ ฯลฯ โดยทั่วไป Fail2Ban จะใช้เพื่อปรับปรุงกฎไฟร์วอลล์เพื่อปฏิเสธที่อยู่ IP ตามระยะเวลาที่กำหนด


1
โปรดอธิบายคำตอบของคุณพร้อมรายละเอียดเพิ่มเติมว่าทำไมสิ่งนี้ถึงได้ผล
DnrDevil
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.