iptables sample

本文详细介绍了iptables防火墙的基本配置原则及具体规则设置方法。通过一系列的iptables命令演示了如何针对特定IP地址进行流量过滤、如何开放指定端口以及如何处理不同类型的网络请求等关键操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

*filter
:INPUT DROP [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]

-A INPUT -s 1.2.3.4/32 -j DROP
-A INPUT -s 2.3.4.5/32 -j ACCEPT

-A INPUT -p tcp -m tcp --dport 80 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 2022 -j ACCEPT
-A INPUT -p tcp -m multiport --dports 993,995 -j ACCEPT

-A INPUT -p icmp -m icmp --icmp-type 0 -j ACCEPT
-A INPUT -p icmp -m icmp --icmp-type 8 -j ACCEPT
-A INPUT -p icmp -j DROP

-A INPUT -i lo -j ACCEPT
-A INPUT -p tcp -m tcp ! --tcp-flags FIN,SYN,RST,ACK SYN -m state --state NEW -j DROP
-A INPUT -p tcp -m tcp --tcp-flags SYN,ACK SYN,ACK -m state --state NEW -j DROP
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -p tcp -m tcp --tcp-flags FIN,ACK FIN -j LOG --log-prefix "Nmap Scan"
-A INPUT -p tcp -m tcp --tcp-flags FIN,ACK FIN -j DROP
-A OUTPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
COMMIT
<think>好的,用户遇到了chrony时间同步的问题,具体是sources输出中Reach为0,无法同步时间。我需要分析可能的原因和解决方法。首先,根据引用中的信息,Reach值表示最近8次同步请求的成功率,用八进制显示。如果Reach是0,说明所有尝试都失败了。 可能的原因有几个方面。首先,网络连接问题。用户可能配置了错误的服务器地址,或者服务器没有开放123端口的UDP访问。防火墙设置也可能阻止了时间同步请求。需要检查chrony.conf中的服务器配置是否正确,服务器是否可达,使用ping或telnet测试端口连通性。 其次,服务器端的问题。NTP服务器可能未正常运行,或者配置了访问控制,拒绝了客户端的请求。用户应该检查服务器端的chronyd或ntpd服务状态,确认是否允许客户端的IP地址同步时间。 第三,客户端配置错误。比如使用了错误的NTP协议版本,或者配置了不允许修改系统时间的选项。需要查看chrony.conf中的配置,确保没有设置makestep或cmdallow等限制性参数。 另外,时间偏差过大也可能导致同步失败。如果客户端与服务器的时间差超过允许的阈值,chronyd可能会放弃同步。这时需要手动调整时间,或者允许更大的偏差。 解决方法的话,首先验证网络连通性,使用chronyc命令检查源状态。然后检查服务器配置,确保服务运行且允许访问。调整客户端配置,比如增加重试次数或调整轮询间隔。如果时间偏差大,手动同步时间。最后,查看日志文件获取更多错误信息。 还要注意引用中的说明,比如服务器状态标记为^*表示正常同步,而Reach为0意味着无法建立连接。需要综合这些信息逐步排查。</think>### Chrony时间同步中Reach=0的原因分析及解决方法 #### 一、Reach值含义解析 在`chronyc sources -v`输出中,**Reach**字段以八进制表示最近8次时间同步请求的成功率。例如: $$ Reach\ 值为\ 377\ (八进制) \Rightarrow 二进制\ 11111111 \Rightarrow 100\%成功率 $$ 当出现**Reach=0**时,表示连续8次同步请求全部失败[^3][^4]。 --- #### 二、常见原因及排查步骤 1. **网络连接问题** - 检查服务器地址是否正确: ```bash grep ^server /etc/chrony.conf # 确认配置的NTP服务器地址有效 ``` - 验证端口连通性: ```bash nc -vzu ntp.aliyun.com 123 # 测试UDP 123端口是否开放[^2] ``` - 排查防火墙规则: ```bash iptables -L -n | grep 123 # 检查是否放行NTP流量 ``` 2. **服务器端问题** - 确认NTP服务状态: ```bash systemctl status chronyd # 服务端需处于active (running)状态[^4] ``` - 检查访问控制列表: ```bash grep allow /etc/chrony.conf # 服务端需配置allow子网/IP(如allow 192.168.1.0/24) ``` 3. **客户端配置错误** - 检查客户端时间偏差: ```bash chronyc tracking # 当System time >1000秒时会导致同步失败 ``` - 验证NTP协议版本: ```bash server ntp.aliyun.com iburst minpoll 4 maxpoll 6 # 建议添加iburst参数加速初始同步[^1] ``` --- #### 三、解决方法对照表 | 现象 | 解决方案 | 验证命令 | |------|----------|----------| | 防火墙阻挡 | 开放UDP 123端口 | `chronyc sources -v` | | 服务器未响应 | 更换可用NTP源 | `chronyc add server <new_ntp>` | | 时间偏差过大 | 手动强制同步 | `chronyc makestep` | | 服务未启动 | 重启chronyd服务 | `systemctl restart chronyd` | --- #### 四、关键日志定位 查看同步失败的具体原因: ```bash journalctl -u chronyd -S "1 hour ago" | grep -E 'Can't|reachable' # 定位网络错误或认证失败 ``` ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值