网络状态查看 netstat [选项]
Netstat是一款命令行工具,用于显示Linux系统中网络的状态信息,可以显示网络连接、路由表、连接的数据统计等信息。
使用
选项
-a:显示所有选项,包括监听和未监听的端口。
-t:仅显示tcp相关选项。
-u:仅显示udp相关选项。
-n:拒绝显示别名,将地址转化为数字。
-l:仅列出在侦听中的socket。
-p:显示建立相关链接的程序名。
-r:显示路由信息,路由表。
-e:显示扩展信息,例如user等。
-s:按各个协议进行统计。
-c [秒数]:每隔一个固定时间,执行netstat命令。
可以与grep,管道符号同时使用,筛选结果
示例
防火墙管理 firewall
什么是防火墙
firewall是一个用于管理网络防火墙的工具,它提供了对网络数据包过滤和网络地址转换(NAT)等功能的控制。firewall通过配置规则来决定如何处理进入和离开系统的网络数据包,以保护系统的安全。
firewall的主要功能包括:
- 数据包过滤:firewall可以根据规则对进入和离开系统的数据包进行过滤,以控制网络访问。可以基于源IP地址、目标IP地址、端口号等条件进行过滤。
- 网络地址转换(NAT):firewall可以将内部私有IP地址转换为公共IP地址,实现对外网的访问。NAT可以用于实现共享上网、端口转发等功能。
- 区域管理:firewall支持定义不同的安全区域(zones),每个区域可以有不同的安全级别和规则。可以根据网络连接的类型(如有线、无线、VPN等)将接口分配给不同的区域,并针对每个区域配置相应的防火墙规则。
- 服务管理:firewall可以管理网络服务,允许或拒绝特定服务的访问。可以配置规则来允许或拒绝特定的协议、端口号和服务名称。
- 日志记录:firewall可以记录网络访问日志,以便于监控和审计网络流量。可以配置规则来记录特定的网络活动或异常流量。
下载firewall
yum install -y firewalld
sudo apt-get install firewalld
firewall使用
开启/关闭/开启开机启动/关闭开机启动/查看状态
systemctl start/stop/enable/disable/status firewalld
管理防火强
systemctl status firewalld 查看防火墙状态
firewall-cmd --permanent --add-port=3306/tcp 永久(--permanent)添加(--add-port)3306端口tcp协议(3306/tcp)
firewall-cmd --reload 重新加载,这样修改才会生效
firewall-cmd --permanent --remove-port=3306/tcp 永久(--permanent)移除(--remove-port)3306端口tcp协议(3306/tcp)
firewall-cmd --zone=public --query-port=3306/tcp 查看3306端口,协议为tcp,安全区域为public的开启状态
firewall-cmd --list-ports 查看所有开启的端口
firewall-cmd --zone=public --list-ports 查看所有安全区域为public且开启的端口
示例
补充了解
Linux firewall中常见的几种zone:
public:这是默认的zone,用于大多数情况下的网络安全设置。它包含了所有已配置的网络接口,并使用防火墙规则来限制进出网络的数据包。
home:这个zone提供了更严格的网络安全设置,通常用于家庭或小型企业网络环境。它可以定义更加具体的防火墙规则,以限制外部访问内部网络。
dmz:DMZ(Demilitarized Zone)是一个隔离区,通常用于将内部网络与外部网络隔离开来。在firewall中,dmz zone提供了一种安全的方式来允许外部访问某些特定的服务或端口,同时保持其他内部网络的隔离。
work:这个zone提供了适用于工作环境的网络安全设置。它可以定义规则来限制外部访问内部网络中的特定服务或应用程序。
external:这个zone用于保护外部网络接口,通常用于连接互联网的情况。它可以定义更加严格的防火墙规则,以限制外部访问内部网络。
internal:这个zone用于保护内部网络接口,通常用于连接内部网络中的其他设备或计算机。它可以定义适当的防火墙规则来限制外部访问内部网络。
firewall-cmd --list-all-zones可以查看所有的zone
一般就只用public