TRUSTY:ssh 连接 [[email protected] 权限被拒绝]

TRUSTY:ssh 连接 [[email protected] 权限被拒绝]

我有这个脚本我试图在我的机器Ubuntu 14.04上执行,这表明我应该管理服务器上的 ssh 密钥,以避免每次都输入密码,我不知道该怎么做,并且执行过程不断要求我输入密码(然后我输入计算机密码),但它给出的权限被拒绝,

正如脚本中提到的,我的机器将同时作为服务器和客户端

你能帮我做什么吗?我应该如何配置 ssh 连接?

谢谢

答案1

在您的情况下,“服务器”和“客户端”是同一台计算机。

客户端设置

生成 SSH 密钥对。

mkdir ~/.ssh

cd ~/.ssh && ssh-keygen -b 2048 -t rsa -C "My Comment for key" -t "access_key"

您可以在手册页中阅读有关 ssh-keygen 选项的详细信息:

man ssh-keygen

之后你可以在 ~/.ssh/ 中找到两个文件 access_key 和 access_key.pub

在 ~/.ssh 目录中创建名为“config”的文件。此文件允许您为需要连接的每台主机设置不同的设置。

以下是该文件的简单内容

Host my.remote-host.com
   User remoteusername
   Identityfile ~/.ssh/access_key

my.remote-host.com- 要连接的目标主机(localhost)

远程用户名- 远程机器上的用户登录名

身份文件- 通往你的道路私人的钥匙

服务器端设置

如何启用“PublickKey”认证:

sudo nano /etc/ssh/sshd_config

取消注释下一行:

RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile     %h/.ssh/authorized_keys

RSA认证- 启用 RSA 密钥支持

公钥认证- 启用公钥身份验证

授权密钥文件- 包含公钥的文件路径

重新启动 ssh 服务器

sudo service sshd restart

创建目录并设置正确的权限

mkdir ~/.ssh
sudo chmod 700 ~/.ssh

为公钥创建文件并设置正确的权限

touch ~/.ssh/authorized_keys
sudo chmod 600 ~/.ssh/authorized_keys

将您的公钥(access_key.pub)放入〜/ .ssh / authorized_keys

每个键只应使用一行。例如:

ssh-dss AAAAB3NzaC1kc3MAAAbC2kVOJpcnfu7UqKV44uZ/khiP9K7F...aoSe MyComment

如何彻底禁用密码验证

sudo nano /etc/ssh/sshd_config

改变密码验证从“是”到“否”重新启动 sshd 服务器

sudo service sshd restart

相关内容