1、首先可以参考鸟哥的linux私房菜一书中关于配置ssh免密码登录问题,会详细了解ssh免密码登录的原理。
2、接下来说配置步骤
(1)查看本机的有关于ssh 的相关默认的配置,目录是/etc/ssh/sshd_config,其中有关于免密码登录时使用的默认的档案的存放文件
默认是没有使用的,更改为使用默认的名称,也就是将注释解除
(2)假设机器的设置如下
test2要使用test账号登录server主机
1>在test2生成公钥和私钥进行如下操作
2>私钥就存在test2的账户下,在默认的位置,将公钥放在server的~/.ssh/目录下。
使用scp命令上传
scp ~/.ssh/id_rsa.pub 目的主机用户@目的主机ip:~/.ssh/id_rsa.pub.test2
然后将公钥放入authorized_keys文件夹中
cat ~/.ssh/id_rsa.pub.test2 >> authorized_keys
3>修改~/.ssh/目录下的known_hosts文件的权限
sudo chmod 644 ~/.ssh/known_hosts
修改.ssh目录的权限
sudo chmod 755 ~/.ssh
至此配置完成进行登录。
(3)登录的格式
ssh -p 端口号 用户名@主机ip
-p参数指名登录的端口号,默认是22端口,可以不用-p说明
3、简化登录设置
每次登录时命令太长不容易记忆,有两种方法可以简化。
(1)在shell中键入
alias 别名='ssh 用户名@主机ip -p 端口号'
之后就是可以直接使用别名进行登录
(2)更改配置文件
在~/.ssh/目录下创建config文件夹,配置格式如下
Host 登录时别名
HostName 主机名称或者IP
Port 端口号
User 用户名
eg:
Host test
HostName linux.dmsai.tw
Port 22
User test
配置完成后,直接使用
ssh test
这样可以免密码登录成功。