जवाबों:
कई चीजें हैं जो गलत हो सकती हैं। -vvv
Ssh प्रिंट को जोड़ने के लिए जोड़ें कि यह क्या कर रहा है, और देखें कि यह कहाँ रुक रहा है।
समस्या क्लाइंट या सर्वर पर हो सकती है।
सर्वर पर एक आम समस्या यह है कि यदि आप एक क्लाइंट से कनेक्ट कर रहे हैं जिसके लिए DNS लुकअप समय को रिवर्स करता है। ("रिवर्स डीएनएस लुकअप" का मतलब क्लाइंट मशीन के आईपी पते से होस्ट नाम पर वापस मिलना है। यह सुरक्षा के लिए वास्तव में उपयोगी नहीं है, केवल लॉग प्रविष्टियों से ब्रेकिन प्रयासों का निदान करने में थोड़ा मददगार है, लेकिन डिफ़ॉल्ट कॉन्फ़िगरेशन वैसे भी करता है।) रिवर्स DNS खोज के बंद करने के लिए, जोड़ने UseDNS no
के लिए /etc/ssh/sshd_config
(आप सर्वर पर रूट करने की आवश्यकता है, बाद में SSH सेवा को पुनः आरंभ करने का ध्यान रखें)।
एक और चीज जो गलत हो सकती है, वह है GSSAPI प्रमाणीकरण टाइमिंग। अगर आपको नहीं पता कि वह क्या है, तो आप शायद उस पर भरोसा नहीं कर रहे हैं; आप पंक्ति जोड़कर इसे बंद कर सकते GSSAPIAuthentication no
करने के लिए /etc/ssh/ssh_config
या ~/.ssh/config
(है कि ग्राहक की ओर है)।
UseDNS no
इसे एक आकर्षण की तरह तय किया। मैं आंतरिक नेटवर्क पर हूं, आंतरिक आईपी के लिए रिवर्स लुकअप को संभालने के लिए कोई DNS सर्वर नहीं है।
GSSAPIAuthentication
? (15 मिनट के लिए googling उस पर प्रकाश डाला नहीं था)
लॉगिन प्रक्रिया को समय दें और देखें कि इसमें कितना समय लगेगा:
[root@gislab00207 ~]# time ssh root@ISSLABNTL01
root@isslabntl01's password:
Last login: Fri Oct 4 07:55:03 2013 from 3.60.40.232
[root@ISSLABNTL01 ~]# exit
logout
Connection to ISSLABNTL01 closed.
real 0m45.192s
user 0m0.003s
sys 0m0.005s
You have new mail in /var/spool/mail/root
[root@gislab00207 ~]#
ऊपर देखें कि लॉगिन करने में लगभग 45 सेकंड लग गए -------- बहुत कम
एक बार जब आप रूट एडिट sshd_config फ़ाइल के रूप में लॉगिन करते हैं और नीचे दिए गए UseDNS प्रविष्टि को बदलते हैं। यहाँ मैं फाइल को एडिट करने के बजाय sed का उपयोग कर रहा हूँ।
[root@ISSLABNTL01 ~]# grep -i dns /etc/ssh/sshd_config
#UseDNS yes
[root@ISSLABNTL01 ~]# sed -i 's/#UseDNS yes/UseDNS no/g' /etc/ssh/sshd_config
[root@ISSLABNTL01 ~]# grep -i dns /etc/ssh/sshd_config
UseDNS no
[root@ISSLABNTL01 ~]# service sshd restart
Stopping sshd: [ OK ]
Starting sshd: [ OK ]
[root@ISSLABNTL01 ~]# exit
हमें लॉगिन प्रक्रिया का समय दें और देखें कि अब कितना समय लगेगा।
[root@gislab00207 ~]# time ssh root@ISSLABNTL01
root@isslabntl01's password:
Last login: Fri Oct 4 07:55:03 2013 from 3.60.40.232
[root@ISSLABNTL01 ~]# exit
logout
Connection to ISSLABNTL01 closed.
real 0m6.192s
user 0m0.003s
sys 0m0.005s
You have new mail in /var/spool/mail/root
[root@gislab00207 ~]#
यह देखें कि मुझे पासवर्ड टाइप करने में अभी 6 सेकंड का समय है।
UseDNS no
इसे हल किया
यह कुछ ऐसा है जो उबंटू की स्थापना से गलत है।
इसे ठीक करने के लिए आपको इस पंक्ति को /etc/nsswitch.conf में बदलना होगा :
hosts: files mdns4_minimal [NOTFOUND=return] dns mdns4
और इसे इस एक के लिए बदलें:
hosts: files dns
nsswitch.conf
इस तरह से अपने आप को परेशान करना मुसीबत के लिए पूछ रहा है और एसएसएच को धीमा करने के लिए एक सामान्य समाधान प्रदान नहीं करता है।
मेरे मामले में, समस्या को फिर से शुरू करके हल किया जा सकता है systemd-logind
:
systemctl restart systemd-logind
यह सर्वरफॉल्ट पर उल्लिखित है ।
मुझे यह नियमित रूप से करना है, और मुझे नहीं पता कि समस्या का मूल कारण क्या है।
मेरे मामले में ssh के लिए डिबग आउटपुट सिर्फ 30 सेकंड के लिए बंद हो गया, जबकि यह 'कनेक्टिंग' था। समाधान मेरे स्थानीय सिस्टम पर DNS सेटिंग्स से संबंधित है। पिछले नेटवर्क कॉन्फ़िगरेशन ने /etc/resolv.conf
फ़ाइल में एक फर्जी DNS सर्वर को पीछे छोड़ दिया था । वर्तमान DNS सर्वर के साथ इसे बदलने से समस्या ठीक हो गई।
मेरे लिए सिस्टम डीएनएस को 127.0.0.1 में बदल रहा था, इससे पहले यह एक गैर-मौजूदा होस्ट था।
nano /etc/resolv.conf
और निम्नलिखित लिखिए
domain localdomain
search localdomain
(Removed this line) ===> nameserver 10.0.0.1
(Added this line) ===> nameserver 127.0.0.1
मैं पोस्टर के वातावरण के बारे में उतना नहीं जानता जितना मैं चाहूंगा, लेकिन एक समान समस्या वाले अन्य लोगों के लिए, यह एक मुद्दा हो सकता है sssd
, जिसका उपयोग हम ldap मोजो में टाई करने के लिए करते हैं।
मेरे साथ ऐसा होता है:
$ time ssh server.example.com
real 2m0.018s
user 0m0.006s
sys 0m0.004s
मुझे सर्वर तक पहुँच प्राप्त करनी है (कंसोल के माध्यम से मेरे मामले में) तो एक करें:
service restart sssd
उसके बाद, चीजें सिर्फ काम करती हैं। मेरे पास मूल कारण को डीबग करने का समय नहीं है, लेकिन यह बैंडेड मेरे लिए काम करता है।
मैं ssh के माध्यम से धीमी पासवर्ड प्रॉम्प्ट को हल कर सकता हूं । मेरे dlink राउटर पर DHCP सेटिंग्स में DNS रिले सक्षम करें चेक करके समस्या । बाद में एसएसएच के साथ कनेक्शन एक सेकंड के भीतर काम किया।
Network Settings -> Router Settings -> Enable DNS Relay [x]
डिफ़ॉल्ट कॉन्फ़िगरेशन प्रदाता के लिए हर DNS अनुरोध को आगे करता है। यह धीमा था, हालांकि मैं ssh pi@10.0.0.103 से जुड़ रहा था। समाधान का संकेत /etc/resolv.conf "Search upc.at" में एक प्रविष्टि थी जो कि dhcp के माध्यम से प्रदान की जाती है।
डंकल मैनुअल कहता है:
When DNS Relay is enabled, DHCP clients of the router will be assigned
the router's LAN IP address as their DNS server. All DNS requests that
the router receives will be forwarded to your ISPs DNS servers.
When DNS relay is disabled, all DHCP clients of the router will
be assigned the ISP's DNS server.
क्लाइंट और सर्वर पर एक dhcp रिलीज़ के बाद, SSH के माध्यम से कनेक्ट करना फिर से तेज़ हो गया था। HTH।