程序员需要拥有一台主机的云服务器。购买云服务器后,第一件事就是安全登录问题了,基本设置是:禁止root用户登录、禁止密码登录、启动RSA公匙认证 ,具体步骤如下文所述,have fun!
1.新建普通用户ahxin
adduser ahxin
给新用户赋予sudo权限
vi /etc/sudoers
在第21行增加 ahxin ALL=(ALL:ALL) ALL
2.生成RSA公钥及秘钥
安装git,运行Git Bash:
ssh-keygen
3.将公匙信息添加到authorized_keys文件
以新创建的用户ahxin登录ssh,在其用户目录下添加文件夹.ssh
mkdir .ssh
将上一步生成的公匙上传至服务器,移动到当前目录~,即:/home/ahxin
添加公匙信息:
cat id_rsa.pub >> ~/.ssh/authorized_keys
4.修改SSH配置
备份配置文件:
cp /etc/ssh/sshd_config /etc/ssh/sshd_config.bak
修改配置文件:
vi /etc/ssh/sshd_config
Port:2016 #修改端口号
PermitRootLogin no #禁止root用户登录
PasswordAuthentication no #禁止使用密码认证
启动RSA公匙认证,以下项是默认开启的
StrictModes yes #检查密钥的用户和权限是否正确
RSAAuthentication yes #启用RSA认证
PubkeyAuthentication yes #启用公钥认证
5.重启ssh服务,使之生效
切换到root用户:
su
重启ssh:
service ssh restart
6.SecureCRT连接配置
7.查看登录日志
sudo cat /var/log/auth.log
统计登录失败次数
sudo grep "Failed password for root" /var/log/auth.log | awk '{print $11}' | sort | uniq -c | sort -nr | more
(全文完)