-
Notifications
You must be signed in to change notification settings - Fork 0
김현욱 6주차 학습일지
김현욱 edited this page Aug 9, 2024
·
2 revisions
# 시스템 업데이트
sudo yum update -y
# IP 포워딩 활성화
echo "net.ipv4.ip_forward = 1" | sudo tee -a /etc/sysctl.conf
sudo sysctl -p
# iptables 규칙 설정
sudo yum install -y iptables-services
sudo systemctl start iptables
sudo systemctl enable iptables
sudo iptables -L -v -n
sudo iptables -t nat -L -v -n
sudo iptables -F
sudo iptables -t nat -F
sudo iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
sudo iptables -A FORWARD -i eth0 -o eth1 -m state --state RELATED,ESTABLISHED -j ACCEPT
sudo iptables -A FORWARD -i eth1 -o eth0 -j ACCEPT
# iptables 규칙 저장
sudo service iptables save
# iptables 재 시작
sudo systemctl restart iptables
- 필터 테이블 규칙 확인:
$ sudo iptables -L -v -n
-
iptables
: 리눅스 커널의 패킷 필터링 규칙을 설정하는 명령어. -
-L
: 선택한 체인의 모든 규칙을 나열. -
-v
: 자세한 모드. 각 규칙에 대한 상세 정보를 제공. -
-n
: 주소와 포트를 숫자 형태로 출력. IP 주소를 도메인 이름으로 변환하지 않아서 명령어 실행이 더 빠릅니다.
- nat 테이블 규칙 확인:
sudo iptables -t nat -L -v -n
-
-t nat
: nat 테이블을 지정. 이 테이블은 네트워크 주소 변환(NAT)에 사용됩니다.
- 필터 테이블의 모든 규칙 초기화:
sudo iptables -F
-
-F
: 선택한 체인의 모든 규칙을 플러시(초기화)합니다.
- nat 테이블의 모든 규칙 초기화:
sudo iptables -t nat -F
-
-t nat -F
: nat 테이블의 모든 규칙을 초기화.
- POSTROUTING 체인에 NAT 규칙 추가:
sudo iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
-
-A POSTROUTING
: POSTROUTING 체인에 규칙을 추가. -
-o eth0
: eth0 인터페이스를 통해 패킷이 나가는 경우. -
-j MASQUERADE
: 소스 NAT를 수행하여 출발지 IP 주소를 변경. 주로 동적 IP를 사용하는 경우에 사용.
- 포워딩 규칙 추가 (eth0에서 eth1로):
sudo iptables -A FORWARD -i eth0 -o eth1 -m state --state RELATED,ESTABLISHED -j ACC
-
-A FORWARD
: FORWARD 체인에 규칙을 추가. -
-i eth0 -o eth1
: eth0 인터페이스에서 들어오고 eth1 인터페이스로 나가는 패킷에 대해. -
-m state --state RELATED,ESTABLISHED
: 연결이 이미 설정되었거나 관련된 패킷에 대해서만. -
-j ACCEPT
: 패킷을 허용.
- 포워딩 규칙 추가 (eth1에서 eth0로):
sudo iptables -A FORWARD -i eth1 -o eth0 -j ACCEPT
-
-A FORWARD
: FORWARD 체인에 규칙을 추가. -
-i eth1 -o eth0
: eth1 인터페이스에서 들어오고 eth0 인터페이스로 나가는 패킷에 대해. -
-j ACCEPT
: 패킷을 허용.
- iptables 규칙 저장:
sudo service iptables save
- 현재 설정된 iptables 규칙을 저장하여 시스템 재부팅 후에도 유지되도록 합니다.
- iptables 서비스 재시작:
sudo systemctl restart iptables
-
systemctl restart iptables
: iptables 서비스를 재시작하여 변경된 규칙을 적용.