ssh การเชื่อมต่อช้ามาก


18

ฉันมีระบบรีโมตหลายตัวและหนึ่งในนั้นคือ linode ที่กำลังเรียกใช้ debian ช้ามากที่จะใช้ ssh - ใช้เวลาประมาณ 20-25 วินาทีทุกครั้ง ดูเหมือนว่าจะเกิดขึ้นค่อนข้างเร็ว ๆ นี้ ฉันได้พยายามตั้งค่าGSSAPIAuthenticationการnoหรือเพื่อyesเป็นข้อเสนอแนะในหลายคำตอบสำหรับคำถามที่คล้ายกันและมันก็ไม่ได้สร้างความแตกต่าง นอกจากนี้ยังไม่ได้สร้างความแตกต่างถ้าฉันเข้าสู่ระบบโดยใช้ fqdn หรือที่อยู่ IP ฉันมีความล่าช้าเหมือนกันจากกล่อง linux ในพื้นที่ของฉันหรือเครื่อง Macintosh ในพื้นที่ของฉัน ฉันไม่มีความล่าช้าเช่น sshing จาก linode ไปยังกล่อง linux ในเครื่อง ฉันมีระบบรีโมตอื่นที่ใช้ Debian รุ่นเดียวกันและฉันสามารถ ssh เข้าไปภายใน 2 วินาที ข้อแตกต่างระหว่าง/etc/ssh/sshd_config ไฟล์ในสองช่อง Debian คือไฟล์ที่รวดเร็วไม่อนุญาตให้ใช้รหัสผ่านและยังระบุรายการของ ciphers ที่อนุญาต

หากฉันเข้าสู่ระบบโดยใช้ssh -vvv root@linodeความล่าช้าจะเกิดขึ้นที่ส่วนที่ทำเครื่องหมายด้วย >>>>>>

debug2: key: /root/.ssh/id_ecdsa ((nil))
debug2: key: /root/.ssh/id_ed25519 ((nil))
debug3: send packet: type 5
debug3: receive packet: type 6
debug2: service_accept: ssh-userauth
debug1: SSH2_MSG_SERVICE_ACCEPT received
debug3: send packet: type 50

>>>>>>

debug3: receive packet: type 51
debug1: Authentications that can continue: publickey,password
debug3: start over, passed a different list publickey,password
debug3: preferred gssapi-keyex,gssapi-with-mic,publickey,keyboard-interactive,password
debug3: authmethod_lookup publickey
debug3: remaining preferred: keyboard-interactive,password
debug3: authmethod_is_enabled publickey
debug1: Next authentication method: publickey
debug1: Offering RSA public key: /root/.ssh/id_rsa
debug3: send_pubkey_test

(นี่เป็นเพียงบันทึกบางส่วน - มีบันทึกแบบเต็มตามคำขอ)

ฉันไม่พบสิ่งใดเกี่ยวกับการเข้าสู่ระบบ/var/log/auth.logหรือ/var/log/syslogในช่วงเวลาที่ล่าช้า - หลังจากนั้นฉันเพิ่งได้รับ

Jul 27 13:46:43 linode sshd[23049]: Accepted publickey for root from 199.241.27.237 port 51464 ssh2: RSA 89:08:ef:44:48:a4:84:b7:0a:de:14:65:1b:d9:86:f8
Jul 27 13:46:43 linode sshd[23049]: pam_unix(sshd:session): session opened for user root by (uid=0)
Jul 27 13:46:43 linode systemd-logind[3235]: New session 10361 of user root.

คำตอบ:


25

หากการสร้างการเชื่อมต่อช้า แต่เป็นความเร็วปกติหลังจากถูกสร้างขึ้นคุณอาจมีปัญหาว่าเซิร์ฟเวอร์กำลังทำการค้นหา DNS ย้อนกลับสำหรับลูกค้าและด้วยเหตุผลบางอย่างมันล้มเหลว

โดยทั่วไปเมื่อทำการดีบั๊กนี้คุณสามารถลองล็อกอินจากเทอร์มินัลสองเครื่อง ด้วยการเข้าสู่ระบบครั้งแรกดูที่การsshdเข้าสู่ระบบเซิร์ฟเวอร์ในขณะที่คุณพยายามเข้าสู่ระบบจากที่สอง ที่ให้ข้อมูลเพิ่มเติมเกี่ยวกับสิ่งที่เซิร์ฟเวอร์กำลังทำ (หรือรอ)

คุณสามารถลองหาหลักฐานสำหรับการนี้สำหรับสาเหตุที่มีการค้นหา DNS ย้อนหลังโดยการตั้งค่าอย่างใดอย่างหนึ่งหรือทั้งสองต่อไปนี้ใน/etc/ssh/sshd_config:

UseDNS no
UsePAM no

และดูว่าการสร้างการเชื่อมต่อนั้นเร็วขึ้นหรือไม่ ถ้าเป็นเช่นนั้นคุณสามารถทิ้งสิ่งต่าง ๆ ไว้จนกว่าจะแก้ไขได้ (ถ้าคุณสนใจ)

หากนี่เป็นปัญหาการค้นหา DNS ย้อนกลับสิ่งนี้จะขึ้นอยู่กับเซิร์ฟเวอร์ DNS ที่เครื่องที่คุณเข้าสู่ระบบใช้งานอยู่ ตามที่อยู่Wikipediaไม่ใช่ที่อยู่ IP ทั้งหมดที่มีรายการย้อนกลับเนื่องจากนี่ไม่ใช่ข้อกำหนดมาตรฐานจริง แต่มีโอกาสมากขึ้นที่นี่เป็นปัญหาการกำหนดค่าบางอย่าง


ISP ใหม่ของฉัน (ไฟเบอร์ 1000Mbps ถึงบ้าน!) ไม่มีรายการ rDNS สำหรับ IP ของฉัน ดังนั้นUseDNS noแก้ไขปัญหาให้มากที่สุดเท่าที่จะได้รับการแก้ไข
Paul Tomblin

2
เพิ่ม UseDNS ไม่ทำงานสำหรับฉัน
Jose 'Vargas

พยายามทั้งหมดนี้ไม่มีลูกเต๋า ในที่สุดก็เพียงรีบูตเครื่องไคลเอนต์และทุกอย่างก็โอเค
medley56

สิ่งนี้มีประโยชน์มาก ... พบว่า DNS ของเซิร์ฟเวอร์ผิดพลาด แก้ไขที่แก้ไขการเชื่อมต่อ ssh ช้า
TemporalWolf

การเพิ่ม UseDNS = ไม่และเริ่ม sshd ทำงานให้ฉัน CentOS 7.
pzy

-2

บนระบบเดเบียน / อูบุนตูเคล็ดลับคือการกำจัด "avahi-daemon" จากระบบและปัญหาจะหายไป

apt-get -y purge avahi*

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