操作系统层登录限制
Linux系统SSH加固
SSH作为Linux服务器最常用的远程管理协议,其安全配置直接影响整体防护水平,核心配置位于/etc/ssh/sshd_config文件,修改后需执行systemctl restart sshd生效。

| 配置项 | 推荐值 | 作用说明 |
|---|---|---|
PermitRootLogin |
no 或 prohibit-password |
禁止root直接登录,强制使用普通用户su切换 |
PasswordAuthentication |
no |
关闭密码认证,改用密钥认证 |
MaxAuthTries |
3 |
单次连接最大尝试次数 |
MaxSessions |
2 |
单个用户最大并发会话数 |
ClientAliveInterval |
300 |
心跳检测间隔(秒) |
ClientAliveCountMax |
2 |
无响应最大容忍次数 |
AllowUsers |
user1@10.0.0.* user2 |
白名单精确控制 |
经验案例:某金融客户曾因未限制MaxStartups参数,遭遇SSH慢速暴力破解攻击,攻击者利用低频率连接耗尽服务器资源,导致正常运维无法登录,建议追加配置MaxStartups 10:30:60,表示当未认证连接达10个时,30%概率拒绝新连接,超过60个直接拒绝。
Windows系统登录控制
通过本地安全策略(secpol.msc)和组策略实现精细化管控:
- 账户锁定策略:设置5次无效登录后锁定30分钟,防止字典攻击
- 交互式登录限制:配置”允许本地登录”和”允许通过远程桌面服务登录”的用户组
- 登录时间限制:使用
net user username /times:M-F,8:00-18:00限定工作时段 - 登录工作站限制:通过AD属性指定允许登录的计算机名
网络层访问控制
防火墙策略设计
iptables/nftables或云安全组应遵循最小权限原则:
# 示例:仅允许特定IP段访问SSH
iptables -A INPUT -p tcp --dport 22 -s 192.168.10.0/24 -j ACCEPT
iptables -A INPUT -p tcp --dport 22 -j DROP
经验案例:某电商平台曾将SSH端口暴露于公网且未做IP白名单,三个月内遭受超过200万次暴力破解尝试,迁移至跳板机架构后,生产服务器SSH仅对堡垒机IP开放,攻击面缩减99%以上,建议生产环境强制使用VPN或零信任网关作为唯一入口。
端口安全策略
| 方案 | 实施方式 | 适用场景 |
|---|---|---|
| 端口修改 | SSH改为非22端口 | 降低自动化扫描命中率 |
| 端口敲门 | knockd实现序列触发 | 高安全需求环境 |
| 单包授权 | fwknop结合SPA | 云服务器无固定IP场景 |
| 动态防火墙 | fail2ban自动封禁 | 通用防护补充 |
fail2ban配置示例(/etc/fail2ban/jail.local):

[sshd] enabled = true port = ssh filter = sshd logpath = /var/log/auth.log maxretry = 3 findtime = 600 bantime = 3600 backend = systemd
应用层与多因素认证
特权访问管理(PAM)
Linux PAM模块提供高度可扩展的认证框架,关键配置文件包括/etc/pam.d/sshd和/etc/pam.d/system-auth。
Google Authenticator集成:
# 安装配置 apt install libpam-google-authenticator google-authenticator # 用户执行生成密钥 # 修改PAM配置 echo "auth required pam_google_authenticator.so" >> /etc/pam.d/sshd
集中身份认证体系
| 方案 | 核心组件 | 特点 |
|---|---|---|
| LDAP/AD | OpenLDAP、Windows AD | 传统目录服务,成熟稳定 |
| RADIUS | FreeRADIUS | 网络设备统一认证 |
| SSO/OAuth | Keycloak、Authing | 现代应用集成 |
| 硬件令牌 | YubiKey、国密USBKey | 最高安全等级 |
经验案例:某政务云项目采用”证书+动态口令+生物特征”三因素认证,但初期因未考虑容灾设计,RADIUS服务器故障导致批量运维中断,后续架构改为双活RADIUS+本地缓存降级模式,确保极端情况下仍可通过应急证书登录。
审计与监控体系
登录行为的全生命周期记录不可或缺:
- 实时告警:ELK或Splunk聚合
/var/log/secure、/var/log/auth.log,对异常登录模式(如异地、非工作时间)触发告警 - 会话录制:script、ttyrec或专业堡垒机实现操作回放
- 基线核查:CIS Benchmarks定期扫描配置合规性
相关问答FAQs
Q1:完全禁用密码认证后,密钥丢失如何应急恢复?

A:建议预置以下机制:① 控制台VNC/带外管理保留密码通道;② 配置多把备用密钥分存于不同管理员;③ 云环境利用实例元数据服务重置密钥;④ 物理服务器配置IPMI SOL实现带外登录。
Q2:fail2ban封禁了正常IP如何快速解封?
A:执行fail2ban-client set sshd unbanip x.x.x.x即时解封,若频繁误封,应检查findtime和maxretry阈值是否合理,或调整白名单ignoreip包含NAT出口地址,生产环境建议对接CMDB动态维护可信IP库。
国内权威文献来源
- 《信息安全技术 网络安全等级保护基本要求》(GB/T 22239-2019),全国信息安全标准化技术委员会
- 《信息安全技术 服务器安全技术要求和测评准则》(GB/T 39680-2020),国家市场监督管理总局、国家标准化管理委员会
- 《Linux服务器安全运维实战》,人民邮电出版社,2021年版
- 《Windows Server 2019系统配置与管理》,清华大学出版社,2020年版
- 《中国网络安全产业白皮书(2023年)》,中国信息通信研究院
- 《云计算服务安全评估办法》,国家互联网信息办公室、国家发展和改革委员会、工业和信息化部、财政部,2019年发布
- 《关键信息基础设施安全保护条例》,国务院令第745号,2021年施行


















