Centos 7에서 iptables를 사용하고 있는데 iptables가 활성화되면 패키지를 업데이트하거나 설치할 수 없습니다. Yum 업데이트/설치를 허용하려면 iptables에서 어떤 포트를 허용해야 합니까?
답변1
yum은 기본적으로 TCP 포트 80을 사용합니다. 다음과 같이 IP 테이블에 규칙을 추가할 수 있습니다.
# iptables -I INPUT 5 -i eth0 -p tcp --dport 80 -m state --state NEW,ESTABLISHED -j ACCEPT
필요한 경우 인터페이스를 eth0에서 em0으로 변경합니다. 거부 규칙보다 높은 규칙을 추가했는지 확인하세요.
원천:
답변2
정책이 삭제되면 이러한 규칙을 추가해야 합니다.
권한이 있는 사용자:
modprobe conntrack
iptables -I INPUT 6 -p tcp -m tcp --sport http -m conntrack --ctstate ESTABLISHED -j ACCEPT -m comment --comment "http input port 80"
iptables -I OUTPUT 6 -p tcp -m tcp --dport http -m conntrack --ctstate NEW,ESTABLISHED -j ACCEPT -m comment --comment "http output port 80"
HTTP는 포트(80)를 나타냅니다.
주석을 사용하면 IPtables에 대한 규칙을 식별할 수 있습니다.
답변3
다음 규칙을 추가했는데 업데이트/설치하려고 하면 항상 차단됩니다.
iptables -t filter -A INPUT -p tcp --dport 80 -j ACCEPT iptables -t filter -A OUTPUT -p tcp --sport 80 -j ACCEPT
당신은 아이디어가 있나요?
답변4
최근에 포트 53,80,443에 대한 일부 규칙이 추가되었지만 여전히 업데이트/설치할 수 없습니다. 규칙을 설정하는 데 사용하는 스크립트는 다음과 같습니다.
#!/bin/sh
# flush all
iptables -t filter -F
iptables -t filter -X
# Deny i/o
iptables -t filter -P INPUT DROP
iptables -t filter -P FORWARD DROP
iptables -t filter -P OUTPUT DROP
# Established co
iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
# loopback
iptables -t filter -A INPUT -i lo -j ACCEPT
iptables -t filter -A OUTPUT -o lo -j ACCEPT
# ICMP
iptables -t filter -A INPUT -p icmp -j ACCEPT
iptables -t filter -A OUTPUT -p icmp -j ACCEPT
# SSH
iptables -t filter -A INPUT -p tcp --dport 666 -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --sport 666 -j ACCEPT
# DNS
iptables -t filter -A INPUT -p tcp --dport 53 -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --sport 53 -j ACCEPT
iptables -t filter -A INPUT -p udp --dport 53 -j ACCEPT
iptables -t filter -A OUTPUT -p udp --sport 53 -j ACCEPT
# FTP
iptables -t filter -A INPUT -p tcp --dport 20:21 -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --sport 20:21 -j ACCEPT
# HTTP/S
iptables -t filter -A INPUT -p tcp --dport 80:443 -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --sport 80:443 -j ACCEPT