服务器安全加固

环境: CentOS 7.2

背景

帮客户托管在机房的服务器系统做安全加固,加固好后会有第三方机构进行安全扫描。

步骤

  1. 禁止root用户直接登陆
1) 编辑配置文件/etc/ssh/sshd_config 修改PermitRootLogin 后面的yes 为 no ,并且去掉前面的注释符
2)编辑 /etc/pam.d/login文件,配置auth required pam_securetty.so
 3)编辑/etc/passwd,账户信息的shell为/sbin/nologin的为禁止远程登陆,如要允许,则改成可以登陆的shell即可,如/sbin/bash。
4)然后重启sshd服务 service sshd restart
  1. 设置用户密码复杂度和过期时间
是在/etc/login.defs文件,里面几个选项
PASS_MAX_DAYS   90  #密码最长过期天数
PASS_MIN_DAYS   80  #密码最小过期天数
PASS_MIN_LEN    10  #密码最小长度
PASS_WARN_AGE   7   #密码过期警告天数
  1. 登陆超时设置
/etc/profile最后一行加入TMOUT=300

4.系统关键文件权限设置

通过chmod命令对目录的权限进行实际设置
/etc/passwd 必须所有用户都可读,root用户可写 –rw-r—r— 
/etc/shadow 只有root可读 –r-------- 
/etc/group  须所有用户都可读,root用户可写 –rw-r—r—
使用如下命令设置:
chmod 644 /etc/passwd
chmod 600 /etc/shadow
chmod 644 /etc/group

5.设置文件与目录缺省权限

在文件/etc/profile中设置umask 027或UMASK 027
设置默认权限: 
vi /etc/login.defs, 
在末尾增加umask 027或UMASK 027,将缺省访问权限设置为750

6.设置ssh登录前警告Banner

1.  执行如下命令创建ssh banner信息文件: 
#touch /etc/ssh_banner 
#chown bin:bin /etc/ssh_banner 
#chmod 644 /etc/ssh_banner 
#echo " Authorized only. All activity will be monitored and reported "> /etc/ssh_banner 
可根据实际需要修改该文件的内容。 
2.  修改/etc/ssh/sshd_config文件,添加如下行: 
Banner /etc/ssh_banner 
3.  重启sshd服务: 
#/etc/init.d/sshd restart 

7.设置文件与目录缺省权限

在文件/etc/profile中设置umask 027或UMASK 027
设置默认权限: 
vi /etc/login.defs, 
在末尾增加umask 027或UMASK 027,将缺省访问权限设置为750
如果服务器类型为采集服务器或应用中需要使用ftp的,需要设置umask为007,并把ftp用户组和启动应用的用户设置为同一用户组下

8.修改ssh默认端口

# vi /etc/ssh/sshd_config 修改
Port 17382
#service sshd restart

9.限制用户su到root

编辑su文件(vi /etc/pam.d/su),在开头添加下面两行: 
auth sufficient pam_rootok.so 和 
auth required pam_wheel.so group=wheel 这表明只有wheel组的成员可以使用su命令成为root用户。 
你可以把用户添加到wheel组,以使它可以使用su命令成为root用户。 
添加方法为:usermod –G wheel username
备注:双方共同运维服务器,且root密码为我方知晓时设置

10.检查拥有suid和sgid权限的文件

执行命令: 
find /usr/bin/chage /usr/bin/gpasswd /usr/bin/wall /usr/bin/chfn /usr/bin/chsh /usr/bin/newgrp /usr/bin/write /usr/sbin/usernetctl /usr/sbin/traceroute /bin/mount /bin/umount /bin/ping /sbin/netreport -type f -perm -04000 -o -perm -02000 -type f -xdev 2>/dev/null 
如果存在输出结果,则使用chmod 755 文件名 命令修改文件的权限。 
例如:chmod a-s /usr/bin/chage

注:所有软件最好用最新版本.
还对ftp端口进行了修改,防火墙注释掉对21 22端口的放行。vsp使用的是被动模式,开放出了高端位端口,目前还未进行安全扫描,后续根据扫描结果会继续修改本文。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Ubuntu的发音 Ubuntu,源于非洲祖鲁人和科萨人的语言,发作 oo-boon-too 的音。了解发音是有意...
    萤火虫de梦阅读 99,672评论 9 468
  • 一、用户帐号和环境……………………………………………………………. 2 二、系统访问认证和授权…………………………...
    大福技术阅读 6,028评论 0 5
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,099评论 19 139
  • 1、远程连接服务器 远程连接服务器对于管理员来说,是一个很有用的操作。它使得对服务器的管理更为方便。不过方便归方便...
    Zhang21阅读 39,631评论 0 20
  • linux资料总章2.1 1.0写的不好抱歉 但是2.0已经改了很多 但是错误还是无法避免 以后资料会慢慢更新 大...
    数据革命阅读 12,254评论 2 33