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.