一个新的服务器到手之后,部署服务器的初始化
1、配置IP地址 网关 dns解析(static)内网和外网
2、安装源外网(在线即可),内网(只能用源码包编译安装)
3、磁盘分区,lvm raid阵列
4、系统权限配置和基础的安全加固
本章主要是系统权限配置和基础的安全加固
一、系统安全:
1、(核心)保护数据安全。例如客户信息,财务信息。
2、互联网,网络业务服务,必须要通过工信部的资质审核。
3、保护品牌形象。信息安全是红线。
二、账号安全控制
1、不需要或者不想登录的用户设置为nologin
将t1用户设置为nologin
[root@localhost ~]# usermod -s /sbin/nologin t1
2、锁定用户
- usermod -L 用户 上锁
- usermod -U 用户 解锁
- passwd -l 用户 上锁
- passwd -u用户 解锁
3、删除无用账号
- userdel -r 用户 (连同家目录删除)
4、锁定重要的文件
对文件锁定,以及对多个文件锁定,解锁,查看
三、密码安全控制
设置密码有效期
1、新建用户
修改/etc/login.defs 目录下第25行 PASS_MAX_DAYS修改天数一般默认99999,修改成所需天数即可且已有用户的密码有效期不受影响,修改后source改目录让其生效。
2、 已有用户
使用chage -M 天数 用户名进行修改。
3、强制用户在下一次登录的时候修改密码
使用chage -d 0 用户名
四、限制命令的历史记录
history 查看历史。
1、临时清除
history -c 临时清除信息,重启后还有一部分。
2、永久清除
修改/etc/profile配置文件HISTSIZE默认1000,一般清理保留60-100的命令行,修改后source改目录让其生效。
五、设置登录的超时时间
修改/etc/profile配置文件,增加一行 TMOUT=10 10秒内没有操作退出,正常生产中设置10分钟TMOUT =600(600秒),修改后source改目录让其生效。
六、对切换用户进行限制
1、su切换用户
su 用户名 (不推荐)不会更改环境变量,用的还是之前用户的shell,不完全切换
su - 用户名,使用 用户自己的环境
如果在root用户下,su相当于刷新
普通用户下,su相当于返回root
2、限制用户使用su命令:
A、PAM概述
PAM安全认证:linux系统身份认证的架构,提供了一种标准的身份认证的接口,允许管理员自定义认证的方式和方法。
一般遵循的顺序:Service(服务)---->PAM(配置文件)--->pam_*.so
PAM认证是一个可插拔式默认。
PAM安全认证流程 :
- required:一票否决,只有成功才能认证通过,认证失败,也不会立刻结束,只有所有的要素验证完整才会最终返回结果,必要条件。
- requisite:一票否决,只有成功才能通过,但是一旦失败,其他要素不再验证,立刻结束,必要条件。
- sufficient:一票否决,成功之后就是满足条件,但是失败了,也可忽略,成功了执行验证成功的结果,失败返回验证失败的结果,最终的结果。充分条件。
- optional:选项 反馈给用户的提示或者结果。
- 控制位,必须要满足充分和必要条件才能通过。
PAM认证类型:
- 认证模块严重用户的身份,基于密码的认证
- 授权模块 控制用户对系统资源的访问,文件去权限进程的权限
- 账户管理块,普通用户账号信息,密码过期策略,账号锁定策略
- 会话管理块,管理用户会话,注销用户
例如:passwd t1 三次机会,第三次跳出
B、wheel概述
- wheel:又称为wheel组,这个组文件当中没有,隐藏,特殊组。用来控制系统管理员的权限的一个特殊组。
- wheel组专门来为root服务,
- 如果普通用户组加入到whee组,就可以拥有管理员才能够执行的一些权限。
- 前面必须要加上sudo sudo之后可以使用wheel组的特殊权限
- wheel组默认是空的,没有任何成员,需要管理员账号手动添加。
- 配置sudo的规则,然后以sudo的方式才能够运行特定的指令(管理员才能够执行的权限)
- wheel组的权限很大,配置的时候要以最小权限的原则进行配置。
su控制用户
编辑/etc/pam.d/配置目录心下的su
vim /etc/pam.d/su
取消前面注释符号(插拔方式)
给普通用户dn test2 加入组wheel,t1不加
gpasswd -a wheel dn
gpasswd -a wheel test2
查看
谁在这个wheel组中可以切换,不在无法切换
七、 给普通用户使用管理员权限
sudo(最小权限,管理员可以使用的命令)用哪个给那个
修改/ect/sudoers,在102行 增加 dn ALL=(root) 绝对路径 dn为普通用户 绝对路径可以使用whereis查看命令的绝对路径
并将108行,111行注释加##
不需要source让其生效
dn用户可以使用root所有权限 。
八、gurb菜单加密
gurb2-setpassword 设置密码
九、弱口令扫描工具
将压缩包拉如opt目录下
先将依赖环境安装好
[root@localhost john-1.8.0]# yum -y install gcc gcc-c++ make
将etc目录下的shadow复制到opt目录下,改名为shadow.txt
[root@localhost src]# cp /etc/shadow /opt/shadow.txt
切换到压缩中的run目录下执行john文件
[root@localhost run]# ./john /opt/shadow.txt #./执行
展示结果 破解出本机弱口令并破解简单密码