Linux端口安全管理说明_Linux控制网络访问权限方法

4次阅读

linux端口安全管理核心是查清开放端口、防火墙精准管控、服务层加固及SELinux细粒度控制;需定期用ss和firewall-cmd核查规则有效性。

Linux端口安全管理说明_Linux控制网络访问权限方法

Linux端口安全管理核心就三点:看清哪些端口开着、控制谁可以连、限制服务本身能用什么端口。不复杂,但容易忽略细节。

查清当前开放和监听的端口

先摸清家底,避免“不知道自己开了什么”。常用命令有:

  • ss -tulpn:推荐首选,比netstat更快更准确,显示所有TCP/udp监听端口及对应进程
  • lsof -i :22:查特定端口(比如22)被哪个进程占用,适合排错
  • nmap -sT -p1-1000 localhost:模拟外部扫描,验证真实暴露面(注意别扫生产环境全端口)

用firewalld精准放行或封禁端口

RHEL/centos 7+ 及 Fedora 默认用 firewalld,规则清晰、支持动态重载:

  • 只允许本机或内网访问 sshfirewall-cmd –permanent –add-rich-rule=’rule family=”ipv4″ source address=”192.168.1.0/24″ port port=”22″ protocol=”tcp” accept’
  • 开放 Web 端口并限制为 TCP:firewall-cmd –permanent –add-port=80/tcp
  • 批量关闭高危端口段:firewall-cmd –permanent –remove-port=3389-3395/tcp
  • 改完务必重载:firewall-cmd –reload

从服务层加固:改默认端口 + 限IP访问

防火墙是第一道门,服务自身配置是第二道锁:

Linux端口安全管理说明_Linux控制网络访问权限方法

Tunee AI

新一代AI音乐智能体

Linux端口安全管理说明_Linux控制网络访问权限方法 1104

查看详情 Linux端口安全管理说明_Linux控制网络访问权限方法

  • 修改 /etc/ssh/sshd_config 中的 Port 2222,再 systemctl restart sshd,避开暴力扫描主力目标
  • 用 TCP Wrappers 控制基础访问:在 /etc/hosts.allowsshd: 10.0.2.0/24,再在 /etc/hosts.denysshd: ALL,实现白名单机制
  • 数据库等敏感服务,禁用监听公网地址,改用 bind-address = 127.0.0.1mysql)或 listen_addresses = ‘localhost’postgresql

启用SELinux做细粒度端口管控

当需要按“服务类型”而非“端口号”授权时,SELinux 是关键补充:

  • 查看当前端口映射:semanage port -l | grep http_port_t
  • 把自定义端口(如8080)加入 HTTP 服务允许范围:semanage port -a -t http_port_t -p tcp 8080
  • 禁止某服务绑定任意端口:setsebool -P deny_sys_network on(慎用,影响较大)

基本上就这些。日常运维中,建议每季度跑一次 ss -tulpn + firewall-cmd –list-all 对照检查,比砌规则更重要的是知道每条规则为什么存在。

text=ZqhQzanResources