connettersi alla porta host localhost 22: connessione rifiutata


90

Durante l'installazione di hadoop nella mia macchina locale, ho ricevuto il seguente errore

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

qualcuno può aiutarmi a risolvere questo errore, piuttosto che cambiare il numero di porta

Risposte:


118

Se installi Hadoop su Mac OSX, assicurati di attivare Accesso remoto in Preferenze di Sistema, quindi Condivisione file . Questo ha funzionato sulla mia macchina.

Accesso remoto


2
Cordiali saluti, questo ha funzionato per me per risolvere questo errore in genral (per i futuri utenti) apparentemente non ha nulla a che fare specificamente con Hadoop. Grazie!
joedragons

89
  1. Rimuovi SSH con il seguente comando:

    sudo apt-get remove openssh-client openssh-server
    
  2. Installa di nuovo SSH con:

    sudo apt-get install openssh-client openssh-server
    

Risolverà il tuo problema.


3
Anche se la risposta sembra strana, funziona perfettamente anche sulla porta 22.
user1613360

2
Penso che il motivo sia che non è stato installato correttamente prima
Divyang Shah

1
Lavora come un incantesimo :)
Ashis Parajuli

1
@patrick il processo di rimozione è necessario nel caso in cui sia parzialmente aggiunto o meno in una fase coerente.
Divyang Shah

1
Questo è ridicolo: dopo 4 ore, era solo necessario reinstallarlo. Scriverò un articolo.
Leafyshark

33

Hai sshdinstallato? Puoi verificarlo con:

which ssh
which sshd

Per informazioni dettagliate puoi visitare questo link .


1
ho provato a dare il comando sudo apt-get install openssh-server, ha iniziato a chiedere la password per hduser, dove non ho creato alcuna password per l'utente, come posso conoscere la password predefinita
Surya

sono stanco quale ssh, quale sshd, questo mi dà il percorso interno '/ usr / bin / ssh', sono già installati nella mia macchina
Surya

3
ssh è il client e sshd è il server. Per installare sshdutilizzare sudo apt-get install openssh-server. Quando hai creato l'account utente per hduser, devi aver creato una password. Non confonderlo con la passphrase vuota che potresti aver impostato per ssh senza password hduserdall'account a se stesso su localhost.
arun

23

Prova a installare l'intero pacchetto di pacchetti SSH:

sudo apt-get install ssh

Avevo il sshcomando sul mio Ubuntu ma ho ricevuto l'errore come te. Dopo l'installazione completa, tutto è stato risolto.


1
Questo lo ha risolto per me, era esattamente la mia situazione (avevo anche già sshd installato e funzionante, fuori dalla scatola). Su Ubuntu 19.04.
Jonathan Hartley

12

Controlla se questa porta è aperta. Forse il tuo demone SSH non è in esecuzione. Controlla se sshd è in esecuzione. In caso contrario, avvialo.


ho provato a dare il comando sudo apt-get install openssh-server, ha iniziato a chiedere la password per hduser, dove non ho creato alcuna password per l'utente, come posso conoscere la password predefinita per hduser
Surya

1
No, sta chiedendo la password per l'utente root / sudo del sistema Linux in cui si sta installando.
abhinav

[root @ localhost .ssh] # quale ssh / usr / bin / ssh [root @ localhost .ssh] # quale sshd / usr / sbin / sshd, ssh è già installato sulla mia macchina
Surya,

1
quindi esegui il demone sshd /bin/etc/init.d sshd start
abhinav

sshd re-exec richiede l'esecuzione con un percorso assoluto, questo è un messaggio dal percorso
Surya,

10

Ho fatto tutto il suggerimento sopra e non ha funzionato. Quindi riavvio il servizio ssh e funziona. Questo è ciò che faccio:

service ssh restart

Poi rifaccio

ssh localhost

Ora posso connettermi al mio localhost. Spero che sia d'aiuto


6

Assicurati che /etc/hosts.allow contenga:

ssh:ALL:allow
sshd:ALL:allow

O

ssh:localhost:allow
sshd:localhost:allow

OPPURE - qualche altra variante

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

ASSICURARSI che la prima riga del file NON inizi con ALL: ALL: DENY

NIENTE sarà in grado di comunicare con l'host ... su qualsiasi porta.


Risposta perfetta!
Kanuj Bhatnagar

6

Ero solito:

sudo service ssh start

Poi:

ssh localhost

6

Se riavvii il servizio, funzionerà

$ service sshd restart

quindi controlla

$ ssh localhost

Funzionerà


6

Uso un Mac, questo ha funzionato per me:

Apri Preferenze di Sistema, quindi cerca "condivisione".

Scegli Accesso remoto, assicurati che sia attivo e ricordati di aggiungere gli utenti richiesti.inserisci qui la descrizione dell'immagine

Capito da qui


4

Per il mio caso (ubuntu 14.04, appena installato), eseguo semplicemente il seguente comando e funziona!

sudo apt-get install ssh


4

Per quel che vale, ho ricevuto il seguente errore nel tentativo di eseguire ssh nella mia macchina locale, eseguendo Ubuntu 16.04 Xenial, da un vm.

 ssh: connect to host 192.168.144.18 port 22: Connection refused

È stato risolto immediatamente con:

sudo apt-get install ssh

Prendi nota, prima della correzione: "quale sshd" non ha restituito nulla e "quale ssh" ha restituito

/usr/bin/ssh

E dopo la correzione: "which sshd" restituito

/usr/sbin/sshd

3

Potrebbe essere causato da alcuni dei seguenti:

  1. Il server SSH non è installato (solo il client SSH), prova: apt-get install ssh openssh-client openssh-server
  2. La connessione è bloccata da iptables (Firewall), prova: ufw allow ssh

per impostazione predefinita, ssh è bloccato sul firewall, anche durante l'installazione con openssh abilitato
DoctorPangloss

3

Su Mac vai alle impostazioni di sistema-> rete-> condivisione e consenti l'accesso remoto.

prova ssh localhost

Dovresti essere bravo.


3

Quello che ha funzionato per me è:

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

Ho provato tutte le soluzioni sopra menzionate ma in qualche modo questa directory / var / run / sshd mi mancava ancora. Ho Ubuntu 16.04.4 LTS. Spero che la mia risposta aiuti se qualcuno ha lo stesso problema.


2
  1. Prima di installare / reinstallare qualsiasi cosa controllare lo stato di sshd. . .
sudo systemctl status sshd
  1. Dovresti vedere qualcosa di simile. . .
● 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. Abilita e avvia sshd
sudo systemctl enable sshd
sudo systemctl start sshd

in ubuntu: funzionerà: systemctl abilita ssh.service
Krishna Kumar Singh

1

Il mio numero di porta è diverso. ho provato a usare

ssh localhost -p 8088

questo ha funzionato per me


1

Se i problemi persistono, prova quanto segue:

sudo ufw enable    
sudo apt-get install openssh-server

Anche questo potrebbe funzionare.


1

In realtà ho risolto questo problema, ho appena installato shh daemon.

nel terminal:

sudo apt-get install openssh-server


1

Un modo per farlo è andare al terminale

$ sudo gedit /etc/hosts

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

e riavvia nuovamente il tuo servizio ssh usando:

$ service ssh restart

Il problema sarà risolto. Grazie


1

se stai usando centOS o Red Hat, dovresti prima aggiornare SElinux. Eseguire la seguente istruzione

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

quindi devi eseguire

semodule -i my-sshd.pp

in bocca al lupo


1

Se sei sicuro di aver installato ssh, allora è possibile che sshe / osshd sia stato terminato o che il servizio server non sia stato avviato. Per verificare se questi processi sono in esecuzione, utilizzare:

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

O

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

È probabile che sshsia attivo e in esecuzione masshd non lo sarebbe. Per abilitarli:

sudo service ssh start

NB; - alcuni sistemi hanno un'opzione di riavvio ma il mio no


1

provare sudo vi /etc/ssh/sshd_config

nelle prime bugie troverai

File di configurazione generato dal pacchetto

Vedere la manpage sshd_config (5) per i dettagli

Quali porte, IP e protocolli ascoltiamo

Porta xxxxx

cambiare la Porta xxxxx in "Porta 22" ed uscire da vi salvando le modifiche.

riavvia ssh sudo service ssh restart


0

Potresti dover modificare il tuo file /etc/hosts. Ad esempio, se my hostnameè ub0, ma hostnamein /etc/hostsè localhost, potrebbe verificarsi

connect to host ub0 port 22: Connection refused

Perché la hostnamein /etc/hostsè localhostnon è ub0.

Quindi, dovresti fare attenzione hostnamequando crei cluster distribuiti.


0

Per Linux:

  1. Rimuovi SSH con il seguente comando:

    sudo apt-get remove openssh-client openssh-server
    
  2. Installa di nuovo SSH con:

    sudo apt-get install openssh-client openssh-server
    

0

è necessario controllare la configurazione in sshd_config ListenAddress 0.0.0.0 aggiornarlo e riavviare il servizio sshd che risolverà il problema.



0

Controlla il file / etc / ssh / sshd_config per il numero di porta. Assicurati che siano 22.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.