Linux运维:安全措施(用户无操作登出/远程KEY登录/禁止密码)
温馨提示:
任何修改前做好文件的备份,必要时进行系统备份,此事与技术水平无关。
操作系统:CentOS 7
(一)设置用户无操作N秒后自动退出
针对设置用户生效
1)保持用户登录后的默认目录,编辑.bashrc,该文件用于储存用户的个性化设置,既然是用户个性化设置,也就是说以下设置对其它用户不管用。
vim .bashrc
编辑模式下在最后一行插入如下内容,保存退出。
TMOUT=180
表示180秒内无任何操作就会自动退出登录,如果设置为0表示永不自动退出。
2)保存后执行source命令,使修改立刻生效
source .bashrc
对非root一般用户生效
1)常规操作,备份profile文件
cp /etc/profile /etc/profilebak
2)编辑文件
vim /etc/profile
编辑模式下在插入如下内容,保存退出。
export TMOUT=300
表示300秒内无任何操作就会自动退出登录。
3)注销用户重新登录后生效。
(二)远程KEY登录和禁止使用密码远程登录
Xshell7创建用户密钥
1)工具→新建密钥生成向导
密钥类型:RSA
密钥长度:2048
密钥名称:默认即可
密钥加密的密码:此处创建密码目的是防止私钥被盗用,如果设置,选择key登录也需要输入密码。
公钥格式:选择SSH2 - OpenSSH
点击“保存为文件”按钮,记住存储位置,点击完成即可。
远程服务器配置
1)上传文件
上传生成的公钥文件id_rsa_2048.pub至用户家目录下,我使用的是Xftp完成的上传。
2)移动、修改文件
登录用户,移动文件至.ssh目录(如果没有这个目录就创建一个),同时修改文件名称:
mv id_rsa_2048.pub .ssh/authorized_keys
3)修改目录和文件权限
修改.ssh目录权限:
chmod 700 .ssh
修改authorized_keys文件权限:
chmod 600 authorized_keys
4)编辑配置文件
常规操作备份文件
cp /etc/ssh/sshd_config /etc/ssh/sshd_config.bak
编辑文件
vim /etc/ssh/sshd_config
修改以下内容,去掉注释#,没有的就手动敲上:
Protocol 2
ServerKeyBits 2048
RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys
退出保存,重启ssh服务
systemctl restart sshd
5)使用Xshell
方法选择Public Key,如果生成了多个私钥就在“设置”里面选择。
密码设置
KEY登录验证成功后,可以设置禁止使用密码远程登录#慎重修改此项,验证KEY登录成功后再修改#
编辑配置文件sshd_config修改以下内容,设置禁止使用密码远程登录。
PasswordAuthentication no
设置不允许空密码登录。
PermitEmptyPasswords no
退出保存,重启ssh服务。
systemctl restart sshd
(三)禁止root远程登录
禁止root用户远程登录
在禁止root用户远程登录前,应该创建好用于远程管理的用户,并设置好权限,试验成功后再禁止。
由于root用户拥有最高权限,建议远程登录尽量不使用root用户,使用普通用户登录远程连接,然后再切换到root用户。
1)常规操作,备份sshd_config文件(参考上文)
2)编辑配置文件
vim /etc/ssh/sshd_config
拒绝root用户远程登录设置为no。
PermitRootLogin no
重启服务,设置生效。
service sshd restart
不蒙圈秘诀:修改前做备份,修改后做记录。
请先 后发表评论~