安全加固之linux加固

注:
查看文件不做修改,硬要修改,记得备份
一切以你检查配置为准
1 、用户账号
1.1 验证账号
验证空口令
awk -F : 空格 '($2=="") {print $1}' /etc/shadow
uid 0 的账号,
awk -F : 空格 '($3==0) {print $1}' /etc/passwd
1.2 密码长度和有效期
cat /etc/login.defs
: (普通系统、涉密系统、核心业务系统等环境下对配至的要求不同,具体要分行业和国标)
pass_max_days 密码有效期 推荐 90
pass_min_days 修改密码的最短期限 推荐 2
PASS_MIN_LEN 密码的最小长度 推荐 8
PASS_WARN_AGE 密码过期提醒 推荐 7
1.3 密码复杂度
推荐:至少包含大、小写、数字、特殊字符中的最少两种
cat /etc/pam.d/system-auth
passwrod requisite pam_cracklib.so minlen = 8 difok = 5 dcredit = -1 lcredit = -1
ucredit = -1 ocredit = -1
password sufficient pam_unix.so sha512 shadow nullok try_first_pass
use_authtok 后面加 remember = 5 不允许和近期设置的 5 个历史密码相同
try_first_pass 防止新设置的密码和旧密码相同
minlen=8 最小长度
difok=5 新密码、旧密码至少有 5 个字符不同
dcredit=-1 最少 1 个数字
lcredit=-1 最少一个小写字母
ucredit=-1 最少一个大写字母
ocredit=-1 最少一个特殊字符
retry=1 几次登录失败后返回错误信息
type=xxx 用来修改默认的密码提示文本信息
1.4 会话超时
推荐: 5 分钟
1.5 ip spoof
echo "nospoof on" >>/etc/host.conf
1.6 限制指定用户组的用户可通过 su 且为 root
cat /etc/pam.d/system-auth
查找以下行,若不存在则自己新增
auth required pam_wheel.so user_uid
该配置的作用仅允许 wheel 组用户可通过 su 登录至 root
在终端直接输入:
usermod -G10 zhangsan zhangsan 用户加到 wheel 组( wheel 组在 group 文件中排第 10 位)
1.7 查看是否存在 suid 文件
find / -perm -u = s -type f 2 >/dev/null
find / -perm -g = s -type f 2 >/dev/null
2 、系统访问和授权
2.1crontab
chown root:root /etc/crontab 仅允许管理员(组),操作
chmod 400 /etc/crontab 仅管理员 root 有读的权限
chown root:root /var/spool/cron
chmod 跟随用户可给适当权限 /var/spool/cron
chown root:root /etc/cron.*
chmod 跟随用户可给适当权限 /etc/crontab (分配权限时,最好和用户进行沟通,部份用户有计划任务需 求)
2.2 守护进程、掩码
/etc/bashrc
/etc/profile
在上述文件的末尾增加 umask 027
umask 设置位 027 ,相当于将非文件所有者和所有者组的权限降低
默认情况下:
新建目录权限为 755
新建文件是 644
配置后:
新增目录为 750
新建文件是 640
3 、修改常用服务的 banner 信息
修改后端口扫描会增加时间成本,建议修改默认端口
vim /etc/ssh/sshd_config
Banner /etc/ssh/test 指定使用路径为 /etc/ssh/test
新建 /etc/ssh/test
touch /etc/ssh/test
可自定一文件内容
之后重启 ssh 服务
service sshd restart
4 、查看、关闭未知、不必要的服务
service --status-all # 查看所有服务
5 、设置 history 命令时间戳
vim /etc/profile
在文末新增一条
export HISTTIMEFORMAT = "%F %T `whoami` " (反单引号)
需要重新加载环境变量才能生效
source /etc/profile
之后输入 history 验证格式是否修改成功
6 、设置登录失败锁定
推荐登录失败 5 次后锁定账号 30 分钟,
cat /etc/pam.d/system-auth
auth required pam_tally2.so deny = 5 even_deny_root unlock_time = 1800
root_unlock_time = 1800
7 、禁止 root 用户通过 ssh 远程登录
推荐值 PermitRootLogin no
和之前的配置结合,仅能普通用户登录,且仅有特定组用户可用 su 提权
cat sshd_config |grep PermitRootLogin # 查看文件
vim sshd_config
修改配置
PermitRootLogin no
配置完成后需重启服务
8 ssh 其他配置
8.1 禁止空密码登录 文件 /etc/sshd_config
PermitEmptyPasswords no 在该配置前前去除注释即可
8.2 禁止 ssh 端口转发(若用户有使用需求,则需声明)
文件 /etc/sshd_config
AllowTcpForwarding no
GatewayPorts no
将上述两个配置前的注释去除,并设置为 no :P
9 、隐藏操作系统版本信息
/etc 目录下
修改 issue.net issue 为空
10 、最大文件打开数
echo "* soft nofile 65535
*hard nofile 65535 " >>/etc/security/limits.conf
11 、用户最大进程数
/etc/security/limits.d/20-nproc.conf
修改 unlimited 65535 以下
推荐配置:
root soft nproc 65535
root hard nproc 65535
* soft nproc 65535
* hard nproc 65535
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值