terhubung ke host port localhost 22: Sambungan ditolak

90

Saat menginstal hadoop di mesin lokal saya, saya mendapat kesalahan berikut

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

dapatkah seseorang membantu saya untuk mengatasi kesalahan ini, daripada mengubah nomor port

Surya
sumber

Jawaban:

118

Jika menginstal Hadoop di Mac OSX, pastikan mengaktifkan Login Jarak Jauh di bawah Preferensi Sistem lalu Berbagi File . Ini bekerja pada mesin saya.

Login Jarak Jauh

vladof81.dll
sumber
2
FYI, ini berhasil bagi saya untuk menyelesaikan kesalahan ini dalam genral (untuk pengguna masa depan) yang tampaknya tidak ada hubungannya secara khusus dengan Hadoop. Terima kasih!
joedragons
89
  1. Hapus SSH dengan perintah berikut:

    sudo apt-get remove openssh-client openssh-server
    
  2. Instal SSH lagi dengan:

    sudo apt-get install openssh-client openssh-server
    

Ini akan menyelesaikan masalah Anda.

Divyang Shah
sumber
3
Meskipun jawabannya terdengar aneh, ini berfungsi sempurna bahkan pada port 22.
user1613360
2
Saya pikir alasannya adalah tidak terpasang dengan benar sebelumnya
Divyang Shah
1
Bekerja seperti pesona :)
Ashis Parajuli
1
@patrick proses penghapusan diperlukan jika itu ditambahkan sebagian atau tidak dalam tahap yang konsisten.
Divyang Shah
1
Ini konyol - setelah 4 jam, hanya perlu dipasang ulang. Saya akan menulis artikel.
Leafyshark
33

Apakah Anda sudah sshdmenginstal? Anda dapat memverifikasi itu dengan:

which ssh
which sshd

Untuk informasi rinci, Anda dapat mengunjungi tautan ini .

Tariq
sumber
1
saya mencoba memberikan sudo apt-get install openssh-server perintah, itu mulai meminta kata sandi untuk hduser, di mana saya tidak membuat kata sandi untuk pengguna, bagaimana saya bisa mengetahui kata sandi default
Surya
saya lelah yang ssh, yang sshd, ini memberi saya jalur internal '/ usr / bin / ssh', mereka sudah terpasang di mesin saya
Surya
3
ssh adalah klien dan sshd adalah server. Untuk menginstal, sshdgunakan sudo apt-get install openssh-server. Saat Anda membuat akun pengguna untuk hduser, Anda harus sudah membuat kata sandi. Jangan bingung bahwa dengan frasa sandi kosong Anda mungkin telah mengatur untuk ssh tanpa kata sandi dari hduserakun ke dirinya sendiri di localhost.
arun
23

Coba instal seluruh paket paket SSH:

sudo apt-get install ssh

Saya memiliki sshperintah di Ubuntu saya tetapi mendapatkan kesalahan seperti yang Anda miliki. Setelah penginstalan penuh semuanya diselesaikan.

Michael Z
sumber
1
Ini menyelesaikannya untuk saya, persis seperti situasi saya (saya juga sudah menginstal dan menjalankan sshd, di luar kotak). Di Ubuntu 19.04.
Jonathan Hartley
12

Periksa apakah port ini terbuka. Mungkin iblis SSH Anda tidak sedang berjalan. Lihat apakah sshd sedang berjalan. Jika tidak, maka mulailah.

abhinav
sumber
saya mencoba memberikan sudo apt-get install openssh-server perintah, itu mulai meminta kata sandi untuk hduser, di mana saya tidak membuat kata sandi untuk pengguna, bagaimana saya dapat mengetahui kata sandi default untuk hduser
Surya
1
Tidak, itu meminta kata sandi untuk pengguna root / sudo dari sistem linux tempat Anda menginstal.
abhinav
[root @ localhost .ssh] # yang ssh / usr / bin / ssh [root @ localhost .ssh] # yang sshd / usr / sbin / sshd, ssh sudah terinstal di mesin saya
Surya
1
kemudian jalankan sshd demon /bin/etc/init.d sshd start
abhinav
sshd re-exec membutuhkan eksekusi dengan jalur absolut, ini adalah pesan dari jalur
Surya
10

Saya melakukan semua saran di atas dan tidak berhasil. Kemudian saya memulai ulang layanan ssh dan berhasil. Inilah yang saya lakukan:

service ssh restart

Lalu saya ulangi

ssh localhost

Sekarang saya dapat terhubung ke localhost saya. Semoga membantu

Arwan Khoiruddin
sumber
6

Pastikan /etc/hosts.allow berisi:

ssh:ALL:allow
sshd:ALL:allow

ATAU

ssh:localhost:allow
sshd:localhost:allow

ATAU - varian lain

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

PASTIKAN bahwa baris pertama dalam file TIDAK dimulai dengan SEMUA: SEMUA: TOLAK

TIDAK ADA yang dapat berkomunikasi dengan host ... di port mana pun.

Larry Helms
sumber
Jawaban yang tepat!
Kanuj Bhatnagar
6

Saya menggunakan:

sudo service ssh start

Kemudian:

ssh localhost
Linh
sumber
6

Jika Anda memulai ulang layanan maka itu akan berhasil

$ service sshd restart

lalu periksa

$ ssh localhost

Ini akan berhasil

Rushikesh
sumber
6

Saya menggunakan Mac, ini berhasil untuk saya:

Buka System Preferences, lalu cari 'sharing'.

Pilih Remote Login, pastikan sudah aktif dan ingat untuk menambahkan pengguna yang diperlukan.masukkan deskripsi gambar di sini

Dapatkan dari sini

Dami
sumber
4

Untuk kasus saya (ubuntu 14.04, baru diinstal), saya hanya menjalankan perintah berikut dan berhasil!

sudo apt-get install ssh

Shiqing Fan
sumber
4

Untuk apa nilainya, saya mendapatkan kesalahan berikut mencoba ssh ke mesin lokal saya, menjalankan Ubuntu 16.04 Xenial, dari vm.

 ssh: connect to host 192.168.144.18 port 22: Connection refused

Itu segera diperbaiki dengan:

sudo apt-get install ssh

Perhatikan, Sebelum memperbaiki: 'yang sshd' tidak mengembalikan apa-apa dan 'yang ssh' dikembalikan

/usr/bin/ssh

Dan Setelah diperbaiki: 'yang sshd' dikembalikan

/usr/sbin/sshd
IskandarG
sumber
3

Ini mungkin disebabkan oleh beberapa hal berikut:

  1. Server SSH tidak diinstal (hanya Klien SSH), coba: apt-get install ssh openssh-client openssh-server
  2. Koneksi diblokir oleh iptables (Firewall), coba: ufw allow ssh
damian1baran
sumber
secara default ssh diblokir di firewall, bahkan ketika menginstal dengan openssh diaktifkan
DoctorPangloss
3

Di mac, buka pengaturan sistem-> jaringan-> berbagi dan izinkan login jarak jauh.

coba ssh localhost

Kamu harusnya baik.

pengguna2498105
sumber
3

Apa yang berhasil untuk saya adalah:

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

Saya mencoba semua solusi yang disebutkan di atas tetapi entah bagaimana direktori / var / run / sshd ini masih hilang untuk saya. Saya memiliki Ubuntu 16.04.4 LTS. Semoga jawaban saya membantu jika seseorang memiliki masalah yang sama.

Frida Schenker
sumber
2
  1. Sebelum menginstal / menginstal ulang apa pun, periksa status sshd. . .
sudo systemctl status sshd
  1. Anda harus melihat sesuatu seperti. . .
● 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. Cukup aktifkan dan mulai sshd
sudo systemctl enable sshd
sudo systemctl start sshd
0p3r4t0r
sumber
di ubuntu: ini akan berfungsi: systemctl mengaktifkan ssh.service
Krishna Kumar Singh
1

Nomor port saya berbeda. saya mencoba menggunakan

ssh localhost -p 8088

ini berhasil untuk saya

Surya
sumber
1

Jika Anda masih menghadapi masalah, coba yang berikut ini:

sudo ufw enable    
sudo apt-get install openssh-server

Ini mungkin berhasil juga.

Dinesh
sumber
1

Sebenarnya saya menyelesaikan ini, saya baru saja menginstal shh daemon.

di terminal:

sudo apt-get install openssh-server

Pembelajaran Pengguna
sumber
1

Cara yang bisa dilakukan adalah pergi ke terminal

$ sudo gedit /etc/hosts

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

dan restart layanan ssh Anda menggunakan:

$ service ssh restart

Masalah akan teratasi. Terima kasih

Sanyog Tiwari
sumber
1

jika Anda menggunakan centOS atau Red Hat, Anda harus memperbarui SElinux terlebih dahulu. Jalankan pernyataan berikut

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

maka Anda harus mengeksekusi

semodule -i my-sshd.pp

semoga berhasil

Berk CELEBI
sumber
1

Jika Anda yakin telah menginstal ssh, kemungkinan itu sshdan / atau sshdtelah dihentikan atau layanan server belum dimulai. Untuk memeriksa apakah proses ini sedang berjalan, gunakan:

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

ATAU

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

Kemungkinan itu sshakan aktif dan berjalan tetapi sshdtidak. Untuk mengaktifkannya:

sudo service ssh start

NB; - beberapa sistem memiliki opsi restart tetapi milik saya tidak

Kwaku Sarpong Manu
sumber
1

mencoba sudo vi /etc/ssh/sshd_config

dalam beberapa kebohongan pertama yang akan Anda temukan

File konfigurasi yang dihasilkan paket

Lihat halaman manual sshd_config (5) untuk detailnya

Port, IP, dan protokol apa yang kami dengarkan

Port xxxxx

ubah Port xxxxx ke "Port 22" dan keluar dari vi dengan menyimpan perubahan.

restart ssh sudo service ssh restart

Himanshu Singh
sumber
0

Anda mungkin harus mengedit file /etc/hosts. Misalnya jika saya hostnameadalah ub0, tetapi hostnamedalam /etc/hostsadalah localhost, itu mungkin terjadi

connect to host ub0 port 22: Connection refused

Karena hostnamedi /etc/hostsadalah localhosttidak ub0.

Jadi, Anda harus berhati-hati hostnamesaat membangun cluster terdistribusi.

GoingMyWay
sumber
0

Untuk Linux:

  1. Hapus SSH dengan perintah berikut:

    sudo apt-get remove openssh-client openssh-server
    
  2. Instal SSH lagi dengan:

    sudo apt-get install openssh-client openssh-server
    
Nehal Pawar
sumber
0

Anda perlu memeriksa konfigurasi di sshd_config ListenAddress 0.0.0.0 update ini dan restart layanan sshd yang akan menyelesaikan masalah.

Rupeshram
sumber
0

Periksa file / etc / ssh / sshd_config untuk nomor Port. Pastikan jumlahnya 22.

madushan
sumber