以下是服务器安全加固的步骤,本文以腾讯云的CentOS7.7版本为例来介绍,如果你使用的是秘钥登录服务器1-5步骤可以跳过。
0 r* N1 N- M% B2 N 设置复杂密码4 a3 A( a, v* W: o
- echo "root:wgr1TDs2Mnx0XuAv" | chpasswd" k2 a- X4 d3 K4 T
6 y+ ^* f6 \; b' E9 | 设置密码策略修改文件/etc/login.defs - 5 r! r2 d3 T/ ^( f$ Q
- 3 ~4 ?$ b6 n( I. s4 k' \8 n9 C
- PASS_MAX_DAYS 90 密码最长有效期# D5 V0 @/ E" `) ~: V
- PASS_MIN_DAYS 10 密码修改之间最小的天数
/ o- e: V I3 C( q& o9 d - PASS_MIN_LEN 8 密码长度
- P4 h6 e9 L" Q! _ - PASS_WARN_AGE 7 口令失效前多少天开始通知用户修改密码
复制代码
& X& C1 {( o8 E( L
2 k. _, t' @0 K' _+ l 对密码强度进行设置编辑文件/etc/pam.d/password-auth - 2 C& h$ O6 b* z! r9 X# B5 Q# y6 X
- password requisite pam_pwquality.so try_first_pass local_users_only retry=3 authtok_type= difok=1 minlen=8 ucredit=-1 lcredit=-1 dcredit=-1
9 S' h+ ]7 l2 ?5 a - difok= 定义新密码中必须要有几个字符和旧密码不同0 z8 r! T9 `4 ?% |$ J$ u5 L1 ^
- minlen=新密码的最小长度
1 ?' M! G/ u8 R; H5 j* t, A - ucredit= 新密码中可以包含的大写字母的最大数目。-1 至少一个0 G; `' Y3 |7 F' r
- lcredit=新密码中可以包含的小写字母的最大数: o0 x9 }4 B, M a
- dcredit=定新密码中可以包含的数字的最大数目
& I* ~" m3 @/ K% W6 ^! K2 G - 注:这个密码强度的设定只对"普通用户"有限制作用,root用户无论修改自己的密码还是修改普通用户的时候,不符合强度设置依然可以设置成功
复制代码
2 Y% x7 i. G0 {/ Y2 }$ u: t0 K- x6 S7 \
对用户的登录次数进行限制编辑文件 /etc/pam.d/sshd
+ }6 j1 u( h: C) N# u) T6 n1 Y
- auth required pam_tally2.so deny=3 unlock_time=150 even_deny_root root_unlock_time300
- P0 ]( @% g* Z8 g0 b) _( X; E
8 s/ S r& {# ?& [ G% {' w
多次输入密码失败后提示信息如下 pam_tally2 查看被锁定的用户
pam_tally2 --reset -u username 将被锁定的用户解锁 禁止root用户远程登录
* A; j" A% ?" C) L* I1 q禁止ROOT用户远程登录 。打开 /etc/ssh/sshd_config
6 w1 v' d& b2 j$ \3 _4 Q8 ]
- #PermitRootLogin no# k6 Y9 @# z; q) G) }; S
; \& m# {* q) m6 L) a, P; B
注:生效要重启sshd进程。 更改ssh端口" ?' [7 z# g: i7 v/ S( u! _
- vim /etc/ssh/sshd_config ,更改Port或追加Port8 B6 Z( U$ o$ C
+ L8 o. U5 E* u8 N5 p ~
注:生效要重启sshd进程。 安全组关闭没必要的端口设置账户保存历史命令条数,超时时间打开 /etc/profile ,修改如下
% J% W' u9 r! M+ F, S! ^. U- HISTSIZE=1000
6 Y9 z- x8 a* Q - TMOUT=600 " B3 x/ B+ c+ Y; e
- 五分钟未动,服务器超时自动断开与客户端的链接。1 p8 D+ B2 J7 \4 j! e4 S
复制代码
# C( X7 v3 V# g. d2 m2 @) t, i; D2 P7 E2 d' Q; o
/ C# E9 X9 L! I* |2 A! u
1 l: Y' r4 k; I 定期查看查看系统日志
: Y' s5 |1 U" \" R5 \( `- /var/log/messages+ {. B# y! Z: Z. W; ~ n$ n8 W3 B
- / V9 |5 ~4 P2 s' B% V
- /var/log/secure
复制代码 6 L( L* n' M' Y. [! t, y3 n
2 `# {/ b5 ]+ w$ ]6 C' M8 Y( h
重要服务器可以将日志定向传输到指定服务器进行分析。 定期备份数据目录要有规划,并且有周期性的打包备份数据到指定的服务器。 应用程序 /data1/app/ 程序日志 /data1/logs/ 重要数据 /data1/data/
# q, m8 d4 q) f- L |