linux中ssh的config怎么配置可以省略输入密码?

在linux下进行远程连接服务器,ssh whis@192.168.1.231 然后输入密码登录。
但是为了省事,百度找了下。配置ssh下面的config 图片描述这样设置后可以简化登录,直接输入ssh w231 就可以了,但是还是要输入密码,我想把密码也省了,直接输入ssh w231就可以直接登录。有没有配置的方法,我百度找了好久都没有找到。

阅读 56.7k
5 个回答

我介绍个通用的方法吧, 可以让不同的服务器用不同的ssh文件登陆

ssh-keygen -f xxx 生成指定的文件名xxx
ssh-copy-id -i xxx.pub HOST 把公钥文件拷贝到指定的服务器
在.ssh/config 配置文件下中加个密钥文件的定义

HOST w231
    HostName 192.168.1.231
    IdentityFile ~/.ssh/xxx

在使用 ssh-keygen 创建个公钥,然后把这个公钥放在被登陆的机器的 ~/.ssh/authorized_keys 下

  1. 不用配置,首先使用 ssh-keygen 生成密钥文件。
  2. 使用ssh-copy-id 将密钥文件拷贝到目标机器上就好

有两个办法可以:
1. 生成一个密码为空的密钥,这样虽然可以不输入密码(但是安全性不高,别人拿到你的私钥就也可以登录了)
2. 使用keychain,登录的时候输入一次密码,以后只要电脑不重启,就可以一直不用输入密码。这个东西的原理就是ssh-agent,只每次登录都会自动使用上一次的agent。(这种方式只要堡垒机没有给攻破,还是安全的)

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
宣传栏