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


不蒙圈秘诀:修改前做备份,修改后做记录。

举报
评论 0