在实际工作中遇到了三种不同SSH协议登陆Linux服务器的方式,由简单到复杂分别阐述:
一.最简单也是最不安全的root账号密码登陆
通过root账号+root密码登陆Linux服务器。
二.普通用户登陆
通过普通用户登陆到服务器上,如果要使用sudo的权限就需要切换到root账号上去。
三.公钥私钥免密码的方式登陆
把本地主机公钥输入到被登陆的服务器上,这个是最常见,也是最保险的免密码登陆方式,不过如果是要登陆多台服务器的话就相对比较麻烦,需要多次添加本地主机的公钥到服务器上去。
以上三种方式都是和SSH中的配置文件/etc/ssh/sshd_config有关
1.如果使用的第一种登陆方式,所有的配置选项都可以采取默认。
2.如果使用第二种登陆方式,需要关闭PermitRootLogin no,重启sshd服务器,在此之前需要添加自定义登陆服务器的普通用户。当需要用到root权限时,执行su - root就可以了。
3.免密码登陆服务器方式可以和前二种方式共存,也可以只进行公钥私钥登陆,只需要控制PasswordAuthentication选项就可以了,PasswordAuthentication配置为no时就只能免密码登陆服务器。
补充:AuthorizedKeysFile指定存放公钥的路径,把要登陆服务器的主机公钥文件放到此路径中。如果AuthorizedKeysFile配置项填写的是.ssh/authorized_keys,那对于AuthorizedKeysFile每个用户的路径就是根据登陆的普通用户名称来决定的,例如fsdeploy用户,需要新增公钥的文件目录是在/home/fsdeploy/.ssh/authorized_keys。