Izin ditolak (publickey, kata sandi)

2

Saya mencoba untuk terhubung ke ip lokal melalui SSH dari terminal. Perintah adalah

ssh -v [email protected]

Tetapi tidak terhubung. Terus memberi saya kesalahan "Izin ditolak (publickey, kata sandi)." Saya telah mencari lama dan tidak bisa menemukan apa masalahnya. Saya dapat terhubung menggunakan metode yang sama melalui Putty di windows dan dapat terhubung melalui filezilla

Output penuh:

OpenSSH_6.2p2, OSSLShim 0.9.8r 8 Dec 2011
debug1: Reading configuration data /etc/ssh_config
debug1: /etc/ssh_config line 20: Applying options for *
debug1: Connecting to 192.168.0.2 [192.168.0.2] port 22.
debug1: Connection established.
debug1: identity file /Users/[UserName]/.ssh/id_rsa type 1
debug1: identity file /Users/UserName/.ssh/id_rsa-cert type -1
debug1: identity file /Users/UserName/.ssh/id_dsa type -1
debug1: identity file /Users/UserName/.ssh/id_dsa-cert type -1
debug1: Enabling compatibility mode for protocol 2.0
debug1: Local version string SSH-2.0-OpenSSH_6.2
debug1: Remote protocol version 2.0, remote software version OpenSSH_6.0p1 Debian-4+deb7u2
debug1: match: OpenSSH_6.0p1 Debian-4+deb7u2 pat OpenSSH*
debug1: SSH2_MSG_KEXINIT sent
debug1: SSH2_MSG_KEXINIT received
debug1: kex: server->client aes128-ctr hmac-md5 none
debug1: kex: client->server aes128-ctr hmac-md5 none
debug1: SSH2_MSG_KEX_DH_GEX_REQUEST(1024<1024<8192) sent
debug1: expecting SSH2_MSG_KEX_DH_GEX_GROUP
debug1: SSH2_MSG_KEX_DH_GEX_INIT sent
debug1: expecting SSH2_MSG_KEX_DH_GEX_REPLY
debug1: Server host key: [Server Host Key]
debug1: Host '192.168.0.2' is known and matches the RSA host key.
debug1: Found key in /Users/[UserName]/.ssh/known_hosts:1
debug1: ssh_rsa_verify: signature correct
debug1: SSH2_MSG_NEWKEYS sent
debug1: expecting SSH2_MSG_NEWKEYS
debug1: SSH2_MSG_NEWKEYS received
debug1: Roaming not allowed by server
debug1: SSH2_MSG_SERVICE_REQUEST sent
debug1: SSH2_MSG_SERVICE_ACCEPT received
debug1: Authentications that can continue: publickey,password
debug1: Next authentication method: publickey
debug1: Offering RSA public key: /Users/[UserName]/.ssh/id_rsa
debug1: Authentications that can continue: publickey,password
debug1: Trying private key: /Users/[UserName]/.ssh/id_dsa
debug1: No more authentication methods to try.
Permission denied (publickey,password).
Harnamc
sumber
Dari output, sepertinya ssh sedang mencoba menggunakan file identiy (termasuk baris 5-8). Jika Anda memiliki file identitas yang Anda gunakan, pastikan izinnya ditetapkan sehingga hanya pemilik yang dapat membaca / menulis.
Sarge
Apa yang harus menjadi izin? -rw------- 1 Username staff 314 9 May 00:08 id_ecdsa -rw-r--r-- 1 Username staff 199 9 May 00:08 id_ecdsa.pub -rw------- 1 Username staff 1766 8 May 22:40 id_rsa -rw-r--r-- 1 Username staff 419 8 May 22:40 id_rsa.pub -rw-r--r-- 1 Username staff 799 8 May 23:10 known_hosts
Harnamc

Jawaban:

4

coba tambahkan kunci lagi. atur dulu PasswordAuthentication ya di sshd_config di dest machine, lalu lakukan ssh-copy-id user@host login, maka itu akan menyalin kunci. Sekarang Anda dapat mengatur no PasswordAuthentication (jika Anda mau, untuk keamanan ekstra), dan Anda harus dapat masuk secara otomatis. Anda juga dapat menggunakan keingintahuan Anda dan memeriksa apakah id_rsa.pub dari mesin sumber ada di otor_keys pada mesin dest

barlop
sumber
juga, saya tidak berpikir izin adalah masalah, tetapi saya sudah membaca bahwa chmod 600 baik untuk semua file di ~ / .ssh dengan 700 untuk direktori itu sendiri sehingga Anda dapat membuat daftar file di dalamnya. Tentu saja hal yang kurang akan menjadi masalah
barlop
Temukan pasangan! bekerja seperti pesona
Harnamc
2

Mungkin berbeda karena sepertinya Anda terhubung localhost atau sesuatu ( 192.168.0.2 atau itu hanya untuk pertanyaan?).

Yang sering memecahkan hal-hal seperti ini adalah mengedit ~/.ssh/known_hosts file dan hapus entri untuk domain yang Anda hubungkan, itu akan meminta Anda kembali untuk kredensial ssh dan menghindari masalah yang disebabkan oleh "harapan" yang salah.

beroe
sumber
Localhost 192.168.0.2 adalah server vpn lokal yang telah mengaktifkan ssh. Saya dapat menghubungkannya dengan cara lain. Saya telah menghapus keseluruhannya di ~ / .ssh / known_hosts dan juga menghapus file dan membuatnya kembali. Tapi masalahnya masih ada. Masalahnya hanya ketika mencoba terhubung dari mac saya. Saya telah mencoba koneksi melalui dempul dari laptop jendela saya dan berfungsi dengan baik. Bahkan sftp via filezilla berfungsi dengan baik.
Harnamc
Coba juga menghapus id_rsa.pub ?
beroe
@beroe Saya pikir id_rsa.pub tidak berbuat banyak. Saya samar-samar ingat dari tes yang tampaknya ssh berfungsi sama dengan atau tanpa id_rsa.pub. Saya pikir ssh tidak menggunakan kunci publik dalam file pub meskipun isinya sama.
barlop
1
Mencoba menghapus dan membuat ulang semua kunci masih memiliki masalah yang sama. Apa yang berhasil adalah ya PasswordAuthentication di sshd_config dan salin kunci ssh-copy-id user@host
Harnamc
Senang Anda menemukannya dan terima kasih atas pembaruannya.
beroe
0

Lari pertama cat $HOME/.ssh/id_rsa.pub di komputer Anda, Anda akan mendapatkan kunci. simpan kunci ini di suatu tempat.

Kemudian buka file ini dengan menjalankan vim $HOME/.ssh/authorized_keys pada komputer yang Anda pilih. Kemudian salin kunci di baris baru file ini dan tutup dengan mengetik :wq

Anda sudah siap.

user2393015
sumber
Di atas paket OpenSSH itu termasuk ssh-copy-id perintah yang pada dasarnya melakukan perintah beberapa dalam satu
maoizm