阿里云ecs服务器配置ssh免密登录
这里使用的是阿里云的centos8.1
服务器,网上很多配置ssh的都是使用的阿里云密钥对,但是那样不如自己配置的灵活。密钥对会禁止root用户登录等。
我这里配置的并不禁止root用户登录,如果想禁止,进行配置就可以了。
centos ssh配置
首先查看你本地的rsa公钥,如果你还没生成rsa公钥,建议百度,生成方式很多。
cat ~/.ssh/id_rsa.pub
复制你的公钥。
登录你的服务器,把刚才复制的公钥粘贴到下面的文件。
vim ~/.ssh/authorized_keys
服务器现在有了你的公钥。现在开始配置ssh连接信息。找到下面的文件。
vim /etc/ssh/sshd_config
修改这个文件的内容。
#Port 22
这个是端口,默认22,可以进行修改,如果进行修改,把 # 注释去掉,然后修改就可以了,比如修改成下面这样。
Port 222
这里只是个示例。
找到下面几个配置,如果没有,那么你可以自己加上。
PermitRootLogin no //no表示禁止root用户登录,你也可以不禁止,那么就是yes
UsePAM no
PasswordAuthentication no //no表示禁止密码登录,因为以后都使用私钥登录,所以这里禁止密码登录
RSAAuthentication yes //yes表示启用rsa密钥登录
PubkeyAuthentication yes //yes表示公钥权限 和rsa配合使用
配置完成后重启服务。
systemctl restart sshd
重启完成后可以测试一下是否管用。
新增用户
如果要禁止root用户登录,那么就需要增加一个新用户使用了。
创建用户
adduser 用户名
修改新用户密码
passwd 用户名
对新用户授权。
sudo命令的权限在sudoers文件中。这个文件默认是只读,所以先修改权限。
chmod -v u+w /etc/sudoers
开始修改这个文件
vim /etc/sudoers
找到下面一行,增加用户名 ALL=(ALL) ALL。
root ALL=(ALL) ALL
增加以后是下面这样。
root ALL=(ALL) ALL
用户名 ALL=(ALL) ALL
wq退出以后,把文件权限修改回去。
chmod -v u-w /etc/sudoers
增加新用户后增加公钥
增加了新用户,别忘记在新用户的文件夹下增加.ssh
文件夹和本地公钥。
cp -r ~/.ssh /home/用户名/.ssh
修改权限,用户组默认和用户名是一样的。
chown 用户名:用户组 -R /home/用户名/.ssh
接下来就完成了配置,可以在本地免密登录了。