云服务器端口安全:暴露风险排查与最小权限配置指南

端口暴露风险排查方法

通过端口扫描工具(如nmap)检测当前开放的端口:

bash 复制代码
nmap -sS -p 1-65535 <服务器IP>

检查结果中非必要开放的端口(如MySQL默认3306、Redis默认6379),若未使用应立即关闭。

查看服务器当前监听的端口及对应进程:

bash 复制代码
netstat -tulnp

或使用ss命令替代:

bash 复制代码
ss -tulnp

防火墙配置策略

启用防火墙(如iptablesfirewalld)并仅放行业务必要端口。以下为iptables示例,仅允许SSH(22)和HTTP(80):

bash 复制代码
iptables -A INPUT -p tcp --dport 22 -j ACCEPT
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
iptables -A INPUT -j DROP

使用firewalld的等价操作:

bash 复制代码
firewall-cmd --permanent --add-port=22/tcp
firewall-cmd --permanent --add-port=80/tcp
firewall-cmd --reload

最小权限原则实施

修改服务默认端口以降低扫描风险(如将SSH端口改为非22):

编辑/etc/ssh/sshd_config

ini 复制代码
Port 2222

重启服务生效:

bash 复制代码
systemctl restart sshd

数据库类服务(如MySQL)限制访问源IP:

sql 复制代码
GRANT ALL PRIVILEGES ON *.* TO 'user'@'特定IP' IDENTIFIED BY '密码';
FLUSH PRIVILEGES;

安全组与网络ACL配置

在云平台(如AWS、阿里云)配置安全组规则:

  • 入方向:仅允许业务端口(如80、443)及管理端口(SSH/RDP)来自可信IP。
  • 出方向:默认拒绝,按需放行。

网络ACL(如阿里云)建议规则:

  • 优先级1:放行特定IP访问管理端口。
  • 优先级100:拒绝所有其他入站流量。

日志监控与自动化告警

启用日志审计工具(如fail2ban)自动封禁恶意IP:

安装并配置fail2ban

bash 复制代码
apt install fail2ban  # Debian/Ubuntu
systemctl enable fail2ban

编辑/etc/fail2ban/jail.local

ini 复制代码
[sshd]
enabled = true
maxretry = 3

通过云平台日志服务(如AWS CloudTrail、阿里云ActionTrail)监控异常登录行为,并设置阈值告警。

相关推荐
科技小登16 分钟前
重大活动安全保障方案怎么选?重保服务、攻防演练、应急响应与安全意识培训实战与边界
数据库·人工智能·安全
数据知道40 分钟前
静态分析入门——PE 结构、字符串、导入表快速定性
网络·安全·web安全·网络安全
黄乐荣1 小时前
系统分析师-2025-11
安全
算法大模型备案干货咪3 小时前
《把内容安全做成CI卡点:AIGC合规的工程化落地》
安全·ci/cd·aigc
赫媒派3 小时前
OpenAI Recurrent Depth:3个安全隐患
安全·openai·ai编程
是隼人3 小时前
buuctf-pwn PWN1题解(学习过程持续更新)
c语言·学习·安全·pwn入门·ctf入门
恒拓高科WorkPlus4 小时前
企业如何搭建安全内部通讯平台|企业内部通讯平台怎么选才更安全?
jvm·数据库·安全
Lost of 程序猿4 小时前
.NET 线程安全集合与并发数据结构深度实战:从 lock 到无锁
数据结构·安全·.net
梦想很大很大5 小时前
从 Scope State 到 Guardrails:Workrun 如何为 Agent 工作流建立安全边界
安全·agent·workflow
Neighbor_OldY5 小时前
云上证书过期与HTTPS安全治理实战:证书到期没人管、自动化续期与证书链排查
安全·https·自动化