A机器免密登录C机器但是不用ssh-copy-id命令。
时间: 2023-08-24 13:07:44 浏览: 92
要实现A机器免密登录C机器,而不使用ssh-copy-id命令,可以按照以下步骤进行设置:
1. 在A机器上生成密钥对(如果未生成):
```shell
ssh-keygen -t rsa
```
这将生成一个公钥(`id_rsa.pub`)和一个私钥(`id_rsa`)。
2. 将A机器的公钥复制到C机器的`.ssh/authorized_keys`文件中。您可以使用`scp`命令或其他文件传输工具将公钥复制到C机器。
```shell
scp ~/.ssh/id_rsa.pub user@C:/path/to/.ssh/authorized_keys
```
请将`user`替换为C机器上的用户名,`C`替换为C机器的IP地址或主机名,以及`/path/to/`替换为C机器上`.ssh/authorized_keys`所在的路径。
3. 在C机器上设置正确的权限:
```shell
chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys
```
这将确保`.ssh`目录和`authorized_keys`文件的权限设置正确。
现在,您应该能够在A机器上通过SSH连接到C机器而无需输入密码。请记住,这个方法只是一种手动复制公钥的方式,相当于手动执行了ssh-copy-id命令。如有其他问题,请随时提问!
相关问题
免密登录不用ssh -copy-id
如果您不想使用`ssh-copy-id`命令来实现免密登录,可以通过手动操作来完成。以下是一种方法:
1. 在本地生成SSH密钥对:
```shell
ssh-keygen -t rsa
```
这将生成公钥(`id_rsa.pub`)和私钥(`id_rsa`)文件。
2. 将公钥复制到目标服务器上:
```shell
scp ~/.ssh/id_rsa.pub user@server_ip:~/
```
将`user@server_ip`替换为目标服务器的用户名和IP地址。
3. 在目标服务器上,将公钥追加到`authorized_keys`文件中:
```shell
cat ~/id_rsa.pub >> ~/.ssh/authorized_keys
```
4. 设置`authorized_keys`文件的权限:
```shell
chmod 600 ~/.ssh/authorized_keys
```
现在,您应该能够通过SSH进行免密登录。请确保您在目标服务器上的`sshd_config`文件中启用了公钥身份验证(PubkeyAuthentication)。
请注意,这种方法需要手动复制公钥到目标服务器,并且需要在每个目标服务器上重复执行上述步骤。使用`ssh-copy-id`命令可以更方便地完成这个过程。
4、配置主机IP映射 vi /etc/hosts 10.14.72.205 liangjinghan 5、配置SSH免密登录本地结点 ssh-keygen ssh-copy-id liangjinghan ssh liangjinghan
好的,你的第一个问题是关于配置主机IP映射和SSH免密登录本地节点的命令,是吗?那么我来解答一下:
1. 配置主机IP映射,可以使用命令:`vi /etc/hosts`,然后在文件中添加对应的IP和主机名的映射关系,例如:`10.14.72.205 liangjinghan`。
2. 配置SSH免密登录本地节点,需要先生成公钥和私钥,可以使用命令:`ssh-keygen`,然后将公钥拷贝到需要登录的节点上,可以使用命令:`ssh-copy-id liangjinghan`,最后通过命令:`ssh liangjinghan`就可以无需输入密码登录到对应节点了。
希望我的回答能够解决你的问题,如果还有其他疑问,请随时提出。
阅读全文