authorized_keys怎么创建
时间: 2024-05-03 19:16:36 浏览: 253
在Linux系统中,可以使用以下步骤创建authorized_keys文件:
1. 登录到要创建authorized_keys文件的用户账户。
2. 在用户的home目录下创建.ssh目录,如果已经存在则可以跳过这一步。
```
mkdir ~/.ssh
```
3. 进入.ssh目录,并使用以下命令创建authorized_keys文件。
```
touch ~/.ssh/authorized_keys
```
4. 打开authorized_keys文件,并将公钥内容添加到其中。
```
vi ~/.ssh/authorized_keys
```
在vi编辑器中,按下i键进入编辑模式,将公钥内容粘贴到文件中。保存并退出编辑模式,可以按下ESC键然后输入`:wq`保存文件并退出vi编辑器。
现在,您已经成功创建了authorized_keys文件,并将公钥添加到其中。这将允许您在SSH连接时使用该密钥进行身份验证。
相关问题
用nano ~/.ssh/authorized_keys打开authorized_keys文件后我该如何将本地计算机上的公钥粘贴到打开的authorized_keys文件中
在打开的authorized_keys文件中,你可以将本地计算机上的公钥粘贴进去,每个公钥应该占据一行,并且在行末应该添加一个换行符。
一般情况下,你可以使用以下命令将本地计算机上的公钥粘贴到远程服务器的authorized_keys文件中:
1. 打开本地计算机上的终端。
2. 运行以下命令来将公钥复制到剪贴板中:
```
pbcopy < ~/.ssh/id_rsa.pub
```
如果你的公钥文件名不是id_rsa.pub,请将其替换为正确的文件名。
3. 连接到远程服务器,并打开authorized_keys文件:
```
ssh username@remote_server
nano ~/.ssh/authorized_keys
```
请将username替换为你的用户名,remote_server替换为远程服务器的地址或IP地址。
4. 在打开的authorized_keys文件中,将本地计算机上的公钥粘贴到其中,并确保每个公钥占据一行,并在行末添加一个换行符。
5. 按下Ctrl + X,输入Y,然后按下Enter键保存并退出文件。
现在你应该已经成功将本地计算机上的公钥添加到远程服务器的authorized_keys文件中了。
[hadoop@127 ~]$ ~/.ssh/authorized_keys -bash: /home/hadoop/.ssh/authorized_keys: 权限不够
当你看到这个错误信息的时候,它表示当前Hadoop用户(在这个例子中是`hadoop`)试图通过`.ssh/authorized_keys`文件访问SSH密钥,但是权限不足。`.ssh/authorized_keys`通常用于非交互式登录,允许SSH客户端验证用户的公钥而无需输入密码。解决这个问题,你需要确保`hadoop`用户对`.ssh/authorized_keys`文件有正确的读取权限。
1. 打开终端并切换到`hadoop`用户:
```
sudo su hadoop
```
2. 检查文件权限:
```
ls -l .ssh/authorized_keys
```
如果权限不是`600`(即所有者可读、写,其他用户无权限),你可以更改权限:
```
chmod 600 .ssh/authorized_keys
```
3. 确认`.ssh`目录权限也正确,如果是`700`(仅所有者可读写):
```
chmod 700 .ssh
```
4. 之后,退出`hadoop`用户并检查是否能正常加载SSH密钥进行无密码登录:
完成以上步骤后,你应该可以正常访问`.ssh/authorized_keys`文件了。如果问题依然存在,可能是其他权限设置导致的,比如`.ssh`目录的组权限不合适,需要进一步排查。
阅读全文