安全太重要啦,从小到大都在提安全。单位上班要签安全责任书、在校要签……大到国家,小到自己,安全工作重于泰山。对于站长朋友来说,除了自身的安全,还有数据的安全,甚至服务器的安全等。小七接下来要说的是“基于CentOS系统的VPS安全设置之帐号安全”,本文所有代码基于CentOS 6.4操作系统为例进行说明,对于其他版本的话主要是命令的路径不同,思路是一致的。安装好CentOS系统后,建议不要急着去做这些安装设置和优化,因为过早操作,会在Web环境搭建(特别是用主机控制面板的)过程当中因为早过禁止某些权限和程序而造成问题。所以这些安全设置和优化,建议最后才来操作。
账户安全管理具体操作如下:
1. 修改密码长度-通过vi命令
[root@localhost /]# vi /etc/login.defs
PASS_MIN_LEN 18
2. 创建一个普通用户账号并设置密码,这样所有的操作都使用该普通账号进行,后面还要禁止Root帐号的操作。
[root@localhost /]# useradd liru
[root@localhost /]# passwd liru
上面的liru用你想创建的用户名替代
3. 禁用不必要的帐号
Linux默认提供了很多账号,账号越多,系统就越容易受到攻击,所以应该禁止所有默认的被操作系统本身启动的并且不必要的账号。 可以使用 vi /etc/passwd 查看系统账号,使用 vi /etc/group 查看系统的用户组。
[root@localhost /]# userdel adm
[root@localhost /]# userdel lp
[root@localhost /]# userdel sync
[root@localhost /]# userdel shutdown
[root@localhost /]# userdel halt
[root@localhost /]# userdel news
[root@localhost /]# userdel uucp
[root@localhost /]# userdel operator
[root@localhost /]# userdel games
[root@localhost /]# userdel gopher
[root@localhost /]# userdel ftp
[root@localhost /]# groupdel adm
[root@localhost /]# groupdel lp
[root@localhost /]# groupdel news
[root@localhost /]# groupdel uucp
[root@localhost /]# groupdel games
[root@localhost /]# groupdel dip
[root@localhost /]# groupdel pppusers
以上代码一条一条输入运行既可。
5. 禁止非授权用户获得权限
[root@localhost /]# chattr +i /etc/passwd
[root@localhost /]# chattr +i /etc/shadow
[root@localhost /]# chattr +i /etc/group
[root@localhost /]# chattr +i /etc/gshadow
这样操作之后也无法创建账号和修改密码,后面可以使用chattr -i命令恢复之后再进行操作。这也是为什么本人文章开始时建议大家搭建VPS时最后做这些优化了。
6. 禁止Ctrl+Alt+Delete重启命令
修改 /etc/inittab 文件,将下面一行注释掉
ca::ctrlaltdel:/sbin/shutdown -t3 -r now
或者
[root@localhost ~]# vi /etc/init/control-alt-delete.conf
#exec /sbin/shutdown -r now “Control-Alt-Deletepressed” #注释掉
7. 设置/etc/profile
# 设置自动退出终端,防止非法关闭ssh客户端造成登录进程过多,可以设置大一些,单位为秒
[root@localhost /]# echo “TMOUT=3600” >>/etc/profile
# 历史命令记录数量设置为10条
[root@localhost /]# sed -i “s/HISTSIZE=1000/HISTSIZE=10/” /etc/profile
[root@localhost /]# source /etc/profile
8. 重新设置 /etc/rc.d/init.d/ 目录下所有文件的许可权限
/etc/rc.d/init.d/ 目录下所有文件仅root账号可以读、写和执行其中的所有脚本文件:
[root@localhost /]# chmod -R 700 /etc/rc.d/init.d/*