前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >iptables 配置INPUT policy DROP git pull 失败

iptables 配置INPUT policy DROP git pull 失败

作者头像
超级大猪
发布2023-03-14 17:37:52
3030
发布2023-03-14 17:37:52
举报
文章被收录于专栏:大猪的笔记大猪的笔记

今天,vps发现修改了INPUT的默认policy后,git pull无法使用。

代码语言:javascript
复制
iptables -P INPUT DROP

git pull
# 失败,报
ssh: Could not resolve hostname github.com: Temporary failure in name resolution
fatal: Could not read from remote repository.

现象是长时间阻塞。

添加日志

代码语言:javascript
复制
iptables -A INPUT -m limit --limit 40/min -j LOG --log-prefix "Iptables" --log-level 7

注意,这条要用-A的方式添加在最下面,使得上面放通的规则被匹配。

此时可以在

代码语言:javascript
复制
/var/log/syslog
/var/log/message

中找到iptables的日志。

定位问题

发现日志如下:

代码语言:javascript
复制
Feb  1 16:52:44 localhost kernel: [26544901.701341] IptablesIN=eth0 OUT= MAC=aa:aa:00:12:15:13:30:7c:5e:84:9a:01:08:00 SRC=1.1.1.1 DST=104.243.28.195 LEN=72 TOS=0x00 PREC=0x00 TTL=59 ID=58349 DF PROTO=UDP SPT=53 DPT=47599 LEN=52 
Feb  1 16:52:44 localhost kernel: [26544901.701442] IptablesIN=eth0 OUT= MAC=aa:aa:00:12:15:13:30:7c:5e:84:9a:01:08:00 SRC=1.1.1.1 DST=104.243.28.195 LEN=140 TOS=0x00 PREC=0x00 TTL=59 ID=58350 DF PROTO=UDP SPT=53 DPT=47599 LEN=120 
Feb  1 16:52:49 localhost kernel: [26544906.706491] IptablesIN=eth0 OUT= MAC=aa:aa:00:12:15:13:30:7c:5e:84:9a:01:08:00 SRC=1.0.0.1 DST=104.243.28.195 LEN=72 TOS=0x00 PREC=0x00 TTL=59 ID=61408 DF PROTO=UDP SPT=53 DPT=57553 LEN=52 
Feb  1 16:52:49 localhost kernel: [26544906.706638] IptablesIN=eth0 OUT= MAC=aa:aa:00:12:15:13:30:7c:5e:84:9a:01:08:00 SRC=1.0.0.1 DST=104.243.28.195 LEN=140 TOS=0x00 PREC=0x00 TTL=59 ID=61409 DF PROTO=UDP SPT=53 DPT=57553 LEN=120 

代码语言:javascript
复制
Feb  1 16:56:27 localhost kernel: [26545124.797668] IptablesIN=eth0 OUT= MAC=aa:aa:00:12:15:13:30:7c:5e:84:9a:01:08:00 SRC=192.30.255.113 DST=104.243.28.195 LEN=60 TOS=0x00 PREC=0x00 TTL=55 ID=0 DF PROTO=TCP SPT=22 DPT=51254 WINDOW=65535 RES=0x00 ACK SYN URGP=0 

添加规则如下:

代码语言:javascript
复制
iptables -A INPUT -p tcp --dport 53 -j ACCEPT
iptables -A INPUT -p udp --dport 53 -j ACCEPT
iptables -A INPUT -p tcp --sport 22 -j ACCEPT
iptables -A INPUT -p udp --sport 22 -j ACCEPT
iptables -A INPUT -s 1.1.1.1 -j ACCEPT
iptables -A INPUT -s 1.0.0.1 -j ACCEPT

如果还不行,添加下面规则

代码语言:javascript
复制
iptables -A INPUT -p tcp -m multiport --dports 22,80,443,3000,9418 -m state --state NEW,ESTABLISHED -j ACCEPT 
iptables -A OUTPUT -p tcp -m multiport --sports 22,80,443,3000,9418 -m state --state ESTABLISHED -j ACCEPT

不太理解,为什么git pull git服务器会以22端口向我发入包。不过这么操作后,git pull问题解决。

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2023-02-01 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 添加日志
  • 定位问题
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档