होस्टहोस्ट होस्ट पोर्ट 22 से कनेक्ट करें: कनेक्शन ने मना कर दिया


86

अपने स्थानीय मशीन में हूप स्थापित करते समय, मुझे निम्नलिखित त्रुटि मिली

ssh -vvv localhost 
OpenSSH_5.5p1, OpenSSL 1.0.0e-fips 6 Sep 2011 
debug1: Reading configuration data /etc/ssh/ssh_config    
debug1: Applying options for * 
debug2: ssh_connect: needpriv 0 
debug1: Connecting to localhost [127.0.0.1] port 22. 
debug1: connect to address 127.0.0.1 port 22: Connection refused 
ssh: connect to host localhost port 22: Connection refused

पोर्ट नंबर बदलने से, इस त्रुटि को हल करने के लिए कोई मेरी मदद कर सकता है

जवाबों:


116

पर मैक OSX Hadoop इंस्टॉल करते हैं, पर यकीन है कि बारी कर दूरस्थ प्रवेश के तहत सिस्टम प्राथमिकताएं तो साझा फ़ाइल । यह मेरी मशीन पर काम करता है।

रिमोट लॉगिन


2
FYI करें, यह मेरे लिए जनराल (भविष्य के उपयोगकर्ताओं के लिए) में इस त्रुटि को हल करने के लिए काम करता है प्रतीत होता है कि विशेष रूप से Hadoop के साथ कुछ नहीं करना है। धन्यवाद!
joedragons

83
  1. निम्न आदेश के साथ SSH निकालें:

    sudo apt-get remove openssh-client openssh-server
    
  2. SSH को फिर से स्थापित करें:

    sudo apt-get install openssh-client openssh-server
    

यह आपकी समस्या का समाधान करेगा।


2
भले ही उत्तर अजीब लगता है यह पोर्ट 22 पर भी सही काम करता है।
user1613360

इसे हटाना क्यों जरूरी होगा? यदि यह होता तो समस्या मौजूद नहीं होती।
लोर्ने का मार्किस

2
मुझे लगता है कि इसका कारण ठीक से पहले स्थापित नहीं है
दिव्यांग शाह

1
एक आकर्षण की तरह काम करें :)
आशीष पराजुली

1
यदि यह आंशिक रूप से जोड़ा गया है या एक सुसंगत चरण में नहीं है तो @patrick को हटाने की आवश्यकता है।
दिव्यांग शाह

32

क्या आपने sshdस्थापित किया है? आप इसे सत्यापित कर सकते हैं:

which ssh
which sshd

विस्तृत जानकारी के लिए आप इस लिंक पर जा सकते हैं ।


1
मैंने sudo apt-get install ओपनश-सर्वर कमांड देने की कोशिश की, यह hduser के लिए पासवर्ड पूछने लगा, जहाँ मैंने उपयोगकर्ता के लिए कोई पासवर्ड नहीं बनाया, मैं डिफ़ॉल्ट पासवर्ड कैसे जान सकता हूँ
सूर्या

मैं थक गया, जो ssh, जो sshd, यह मुझे आंतरिक पथ '/ usr / bin / ssh' देता है, वे पहले से ही मेरी मशीन में स्थापित हैं
सूर्या

3
ssh क्लाइंट है और sshd सर्वर है। sshdउपयोग स्थापित करने के लिए sudo apt-get install openssh-server। जब आपने उपयोगकर्ता खाता बनाया था hduser, तो आपने एक पासवर्ड बनाया होगा। भ्रमित न करें कि खाली पासफ़्रेज़ के साथ आपने hduserलोकलहोस्ट पर अकाउंट से पासवर्डलेस ssh के लिए सेट किया होगा ।
अरुण

23

पूरे SSH पैकेज पैक को स्थापित करने का प्रयास करें:

sudo apt-get install ssh

मेरे पास sshमेरे उबंटू पर कमान थी, लेकिन आपके पास त्रुटि हुई। पूर्ण स्थापना के बाद सभी का समाधान किया गया था।


1
यह मेरे लिए हल हो गया, बिल्कुल मेरी स्थिति थी (मैं पहले से ही sshd स्थापित और चल रहा था, बॉक्स से बाहर)। उबंटू 19.04 पर।
जोनाथन हार्टले

11

जांचें कि क्या यह पोर्ट खुला है। हो सकता है कि आपका SSH दानव नहीं चल रहा हो। देखें कि sshd चल रहा है या नहीं। यदि नहीं, तो इसे शुरू करें।


मैंने sudo apt-get install ओपनश-सर्वर कमांड देने की कोशिश की, यह hduser के लिए पासवर्ड पूछने लगा, जहाँ मैंने उपयोगकर्ता के लिए कोई पासवर्ड नहीं बनाया, मैं hduser के लिए डिफ़ॉल्ट पासवर्ड कैसे जान सकता हूँ
सूर्या

1
नहीं, यह linux सिस्टम के रूट / sudo उपयोगकर्ता के लिए पासवर्ड पूछ रहा है जहाँ आप इंस्टॉल कर रहे हैं।
अभिनव

[root @ localhost .ssh] # जो ssh / usr / bin / ssh [रूट @ localhost .ssh] # जो sshd / usr / sbin / sshd, ssh पहले से ही मेरी मशीन में स्थापित है
सुरसा

1
उसके बाद sshd demon /bin/etc/init.d sshd start
abhinav

sshd re-exec पर निरपेक्ष पथ के साथ निष्पादन की आवश्यकता है, यह पथ से संदेश है
सूर्य

10

मैंने उपरोक्त सभी सुझाव दिए और यह काम नहीं किया। तब मैं ssh सेवा को पुनरारंभ करता हूं और यह काम करता है। मैं यह करता हूं:

service ssh restart

तब मैं फिर से

ssh localhost

अब मैं अपने लोकलहोस्ट से जुड़ सकता हूं। आशा करता हूँ की ये काम करेगा


6

सुनिश्चित करें कि /etc/hosts.allow में शामिल हैं:

ssh:ALL:allow
sshd:ALL:allow

या

ssh:localhost:allow
sshd:localhost:allow

या - कुछ अन्य प्रकार

ssh:{host1,host2,host3...}:allow
sshd{host1,host2,host3...}:allow

सुनिश्चित करें कि फ़ाइल में पहली पंक्ति सभी के साथ शुरू नहीं होती है: ALL: DENY

NOTHING किसी भी पोर्ट पर होस्ट ... के साथ संवाद करने में सक्षम होगा।


एकदम सही जवाब!
कानूज भटनागर

5

यदि आप सेवा को फिर से शुरू करते हैं तो यह काम करेगा

$ service sshd restart

तो जाँच

$ ssh localhost

यह काम करेगा


5

मैं एक मैक का उपयोग करता हूं, यह मेरे लिए काम करता है:

सिस्टम वरीयताएँ खोलें, फिर 'साझाकरण' खोजें।

रिमोट लॉगिन चुनें, सुनिश्चित करें कि यह चालू है और आवश्यक उपयोगकर्ताओं को जोड़ना याद रखें।यहां छवि विवरण दर्ज करें

यहीं से मिला


4

मेरे मामले के लिए (ubuntu 14.04, ताजा स्थापित), मैं सिर्फ निम्नलिखित कमांड चलाता हूं और यह काम करता है!

sudo apt-get install ssh


4

इसकी कीमत के लिए मुझे अपने स्थानीय मशीन में ssh, Ubuntu 16.04 Xenial, को एक vm से चलाने की कोशिश करने में निम्न त्रुटि मिली।

 ssh: connect to host 192.168.144.18 port 22: Connection refused

यह तुरंत तय हो गया:

sudo apt-get install ssh

ध्यान दें, ठीक करने से पहले: 'कौन सा sshd' कुछ नहीं लौटा और 'कौन सा ssh' वापस लौटा

/usr/bin/ssh

और ठीक होने के बाद: 'कौन सा sshd' लौटा

/usr/sbin/sshd

4

मैंनें इस्तेमाल किया:

sudo service ssh start

फिर:

ssh localhost

3

यह निम्नलिखित में से कुछ के कारण हो सकता है:

  1. SSH सर्वर स्थापित नहीं है (केवल SSH क्लाइंट), कोशिश करें: apt-get install ssh openssh-client openssh-server
  2. कनेक्शन iptables (फ़ायरवॉल) द्वारा अवरुद्ध है, कोशिश करें: ufw allow ssh

डिफ़ॉल्ट ssh द्वारा फ़ायरवॉल पर अवरुद्ध किया जाता है, यहां तक ​​कि जब
ओपेनश

3

मैक पर सिस्टम सेटिंग्स-> नेटवर्क-> साझा करने और रिमोट लॉगिन की अनुमति दें।

ssh लोकलहोस्ट की कोशिश करें

आपको अच्छा होना चाहिए।


3

मेरे लिए क्या काम किया है:

sudo mkdir /var/run/sshd
sudo apt-get install --reinstall openssh-server

मैंने उपर्युक्त सभी समाधानों की कोशिश की लेकिन किसी तरह यह निर्देशिका / var / run / sshd अभी भी मेरे लिए गायब था। मेरे पास Ubuntu 16.04.4 LTS है। उम्मीद है कि मेरा जवाब किसी को एक ही मुद्दा है अगर मदद करता है।


1

मेरा पोर्ट नंबर अलग है। मैंने प्रयोग करने की कोशिश की

ssh localhost -p 8088

यह मेरे लिए काम किया


1

यदि आपको अभी भी समस्याओं का सामना करना पड़ रहा है, तो निम्नलिखित प्रयास करें:

sudo ufw enable    
sudo apt-get install openssh-server

यह भी काम कर सकता है।


1

वास्तव में मैंने इसे हल कर दिया, मैंने सिर्फ शाह डेमॉन स्थापित किया।

टर्मिनल में:

sudo apt-get install ओपनश-सर्वर


1

टर्मिनल जाने का एक तरीका है

$ sudo gedit /etc/hosts

***enter your ip address ipaddress of your pc  localhost 
    ipaddress of your pc  localhost(Edit your pc name with localhost) **

और पुनः अपनी ssh सेवा का उपयोग करके पुनः आरंभ करें:

$ service ssh restart

समस्या का समाधान होगा। धन्यवाद


1

यदि आप सेंटोस या रेड हैट का उपयोग कर रहे हैं, तो आपको पहले सेलाइनक्स अपडेट करना चाहिए। निम्न कथन निष्पादित करें

ausearch -c 'sshd' --raw | audit2allow -M my-sshd

फिर आपको निष्पादित करने की आवश्यकता है

semodule -i my-sshd.pp

सौभाग्य


1

यदि आप निश्चित हैं कि आपने ssh स्थापित किया है, तो यह संभव है कि sshऔर / या sshdसमाप्त कर दिया गया हो या सर्वर सेवा शुरू नहीं की गई हो। यह जाँचने के लिए कि क्या ये प्रक्रियाएँ चल रही हैं:

//this tells you whether your ssh instance is active/inactive
sudo service ssh status

या

//this list all running processes whose names contain the string "ssh"
sudo ps -A | grep ssh

यह संभावना है कि sshसक्रिय और चल रहा sshdहोगा, लेकिन नहीं होगा। उन्हें सक्षम करने के लिए:

sudo service ssh start

नायब; - कुछ सिस्टम में रिस्टार्ट का ऑप्शन होता है लेकिन मेरा नहीं था


1

प्रयत्न sudo vi /etc/ssh/sshd_config

पहले कुछ झूठों में आप पाएंगे

पैकेज उत्पन्न कॉन्फ़िगरेशन फ़ाइल

विवरण के लिए sshd_config (5) मैनपेज देखें

हम किस पोर्ट, आईपी और प्रोटोकॉल के लिए सुनते हैं

पोर्ट xxxxx

पोर्ट XXXXX को "पोर्ट 22" में बदलें और परिवर्तनों को सहेजकर वी से बाहर निकलें।

पुनः आरंभ करें ssh sudo service ssh restart


1
  1. कुछ भी स्थापित / पुनः स्थापित करने से पहले sshd की स्थिति की जाँच करें। । ।
sudo systemctl status sshd
  1. आपको कुछ ऐसा देखना चाहिए। । ।
● sshd.service - OpenSSH server daemon
   Loaded: loaded (/usr/lib/systemd/system/sshd.service; disabled; vendor prese>
   Active: inactive (dead)
     Docs: man:sshd(8)
           man:sshd_config(5)
  1. बस सक्षम करें और sshd शुरू करें
sudo systemctl enable sshd
sudo systemctl start sshd

0

आपको अपना संपादन करना चाहिए /etc/hosts। उदाहरण के लिए यदि मेरी hostnameहै ub0, लेकिन hostnameमें /etc/hostsहै localhost, यह हो सकता है

connect to host ub0 port 22: Connection refused

क्योंकि hostnameमें /etc/hostsहै localhostनहीं ub0

इसलिए, आपको hostnameवितरित क्लस्टर बनाते समय सावधान रहना चाहिए ।


0

लिनक्स के लिए:

  1. निम्न आदेश के साथ SSH निकालें:

    sudo apt-get remove openssh-client openssh-server
    
  2. SSH को फिर से स्थापित करें:

    sudo apt-get install openssh-client openssh-server
    

0

आपको sshd_config ListenAddress 0.0.0.0 में कॉन्फ़िगरेशन की जांच करने की आवश्यकता है। इसे अपडेट करें और sshd सेवा को पुनरारंभ करें जो समस्या को हल करेगा।


0

यदि आप पिंग करने में सक्षम हैं और ssh करने में सक्षम नहीं हैं, तो यह एक फ़ायरवॉल है। डिफ़ॉल्ट रूप से 18.4 पर फ़ायरवॉल (अन्य संस्करणों के बारे में निश्चित नहीं) और केवल पोर्ट 8080 की अनुमति देता है।

यहाँ आप इसे कैसे ठीक करते हैं

https://linuxconfig.org/how-to-enable-disable-firewall-on-ubuntu-18-04-bionic-beaver-linux


0

पोर्ट नंबर के लिए फ़ाइल / etc / ssh / sshd_config चेक करें। सुनिश्चित करें कि यह 22 है।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.