izin verilmedi (publickey), ancak anahtar görünüyor


1

Umarım bir cevabı görmezden gelmedim ama şu ana kadar bir duvara çarpıyor gibiyim. Mac OS X'te VirtualBox'ı Ubuntu 12.04 konuk sistemiyle kullanıyorum. Parola doğrulamasıyla mükemmel çalışsa da, tuşlarla çalışmaz. Sadece hatamı bulamıyorum.

Herhangi bir yardım için minnettarım. Şimdiden teşekkürler!

Aşağıdakileri alıyorum:

myhost:~ myusername$ ssh -vp 3022 sshuser@192.168.56.1
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: /etc/ssh_config line 102: Applying options for *
debug1: Connecting to 192.168.56.1 [192.168.56.1] port 3022.
debug1: Connection established.
debug1: identity file /Users/myusername/.ssh/id_rsa type 1
debug1: identity file /Users/myusername/.ssh/id_rsa-cert type -1
debug1: identity file /Users/myusername/.ssh/id_dsa type -1
debug1: identity file /Users/myusername/.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.2p2 Ubuntu-6ubuntu0.4
debug1: match: OpenSSH_6.2p2 Ubuntu-6ubuntu0.4 pat OpenSSH*
debug1: SSH2_MSG_KEXINIT sent
debug1: SSH2_MSG_KEXINIT received
debug1: kex: server->client aes128-ctr hmac-md5-etm@openssh.com none
debug1: kex: client->server aes128-ctr hmac-md5-etm@openssh.com 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: RSA ed:7e:bb:97:27:dd:82:82:b7:52:f0:e6:de:0d:f3:0e
debug1: Host '[192.168.56.1]:3022' is known and matches the RSA host key.
debug1: Found key in /Users/myusername/.ssh/known_hosts:3
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
debug1: Next authentication method: publickey
debug1: Offering RSA public key: /Users/myusername/.ssh/id_rsa
debug1: Authentications that can continue: publickey
debug1: Offering RSA public key: vmssh
debug1: Authentications that can continue: publickey
debug1: Trying private key: /Users/myusername/.ssh/id_dsa
debug1: No more authentication methods to try.
Permission denied (publickey).

Şimdiye kadar aşağıdakileri yaptım:

0 post os install
$ adduser sshuser

1 backup config (remote host)
$ sudo cp /etc/ssh/sshd_config /etc/ssh/sshd_config.backup
$ sudo chmod a-w /etc/ssh/sshd_config.backup

2. config (remote host)
$ sudo nano /etc/ssh/sshd_config

  Port 22
  PermitRootLogin no
  AllowTcpForwarding no
  X11Forwarding no
  AllowUsers sshuser
  LogLevel Verbose (/var/log/auth.log)

$ mkdir ~/.ssh

3. Generate and send keys (localhost)
if no .ssh dir:
     $ mkdir ~/.ssh
     $ chmod 700 ~/.ssh

$ ssh-keygen -t rsa -b 4096
$ ssh-add id_rsa

$ scp -P 3022 ~/.ssh/id_rsa.pub sshuser@localhost:/home/sshuser/.ssh/uploaded_key.pub

(remote host)
$ touch authorized_files
$ cat uploaded_key.pub >> authorized_files
$ chmod 600 authorized_files
$ sudo nano /etc/ssh/sshd_config
$ PasswordAuthentication no

$ sudo service ssh restart

(localhost) 
$ ssh -p 3022 user@host
 (where host = vboxeth ip 192.x.x.x)

Ssh yapmaya çalışıyorsun sshuser@192.168.56.1, ancak anahtarınızı sshuser@localhost. Derp.
EEAA

Dosya adı yanlış değil. Neden sadece kullanmıyorsun ssh-copy-id bu arada?
Michael Hampton

1
orada birtakım hatalar olabilir ama yetkili olmalı
barlop

Yardımlarınız için hepinize teşekkür ederim. Barlop'un cevabı sorunu çözdü. Uzun bir gündü ... Bana cevap olarak, lütfen oy verir misin? :) EEAA, teşekkürler, IP'ler karıştı, çünkü farklı adaptörler ile oynuyordum. Fark etmedi, ben NAT ve portforwarding kullanıyorum. @MichaelHampton "Dosya adı yanlış" derken ne demek istediniz?
Flynn

Yanıtlar:


0

Kullanmayı denedin mi -i Özel anahtar yolu ile parametre? Sevmek:

ssh -i ~/.ssh/id_rsa user@host.com

Ayrıca, özel anahtar izinlerinin yalnızca kullanıcınızla sınırlı olduğunu kontrol edin ( chmod 700 Örneğin).


debug1: Offering RSA public key: /Users/myusername/.ssh/id_rsa İstemci anahtarı sunucuya sundu, bu yüzden istemci anahtarın iyi olduğunu düşünmüş olmalı.
Kenster

Sunucuya 3022 numaralı bağlantı noktasından erişiyorsunuz, ancak sshd_config'de 22 ile kurulum yapıyorsunuz.
rdelvira
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.