我在装有 Ubuntu 16.04 的计算机上安装了 openssh serve。然后我使用以下说明生成了 rsa 密钥:Linux rsa。我也按照链接中的建议将其传输到主机,但我不明白为什么当主机是我的本地计算机时我需要传输。
我尝试过了sudo restart ssh
但收到以下错误信息:
restart: Unable to connect to Upstart:
Failed to connect to socket /com/ubuntu/upstart: Connection refused
您知道什么地方出了问题以及如何解决它吗?
ssh localhost
命令运行良好。
另外私钥在哪里?我可以简单地将其移动到我将要登录的计算机上吗?
答案1
(从评论中添加此答案)
sudo restart ssh
应该:
sudo service ssh restart
私钥/公钥 RSA SSH 密钥分别位于~/.ssh/id_rsa
和中~/.ssh/id_rsa.pub
。您可以将公钥传输到另一台计算机,以通过公钥身份验证连接到该计算机。这可以通过ssh-copy-id
以下方式完成:
ssh-copy-id username@host
或者,你可以将你的公钥(id_rsa.pub
)附加到服务器的/home/username/.ssh/authorized_keys
文件中,这实际上就是这样ssh-copy-id
做的。
答案2
如果您尚未openssh-server
安装并且已经在系统中进行了更改,ssh_config
则无需重新启动该服务。只需执行以下操作:
ps aux | grep ssh
如果唯一的进程是,/usr/bin/ssh-agent
那么您就没有openssh-server
。
openssh-server
当有人想要连接到您的机器(ssh 或 sftp)时使用,您可以将其找到为sshd
进程。
只有这样你才能sshd
使用以下命令重新启动该进程:
sudo service ssh restart