본문 바로가기
지식/Linux

Raspberry Pi - iptables

by TheEC 2022. 1. 23.

라즈베리파이를 NAS나 웹서버등 각종 서버로 운영하는 경우가 많다.
이럴때 특정 ip만 접속을 허용하거나 반대로 특정 ip 의 접속을 차단할 필요가 있는 경우가 있는데 iptables를 사용하면 간단히 구현할 수 있다.
iptables는 arp나 이더넷 프레임보다는 ipv4에 적용하는 방화벽이라고 생각하면 된다.

아래처럼 하면 (차단할 IP 주소)의 접속은 차단된다.
# sudo iptables -A INPUT -s (차단할 IP 주소) -j DROP

그러나 재부팅하면 설정된 iptables는 지워져서 다시 설정해야 하는데,
iptables-persistent 로 이 문제도 해결할 수 있다.

# sudo apt-get install iptables-persistent
# sudo vi /etc/iptables/rules.v4
COMMIT 위에 설정을 적으면 된다.
아래 설정은 port 8000 으로의 모든 접속을 차단하되, IP 1.2.3.4 으로부터의 접속은 허용한다는 의미이다.

-A INPUT -p tcp --dport 8000 -s 1.2.3.4 -j ACCEPT
-A INPUT -p tcp --dport 8000 -j DROP
COMMIT

설정 완료 후 재부팅을 해도 iptables 가 적용되어 있음을 확인할 수 있다.
# sudo reboot
# sudo iptables -L
pi@retropie:/etc/iptables $ sudo iptables -L
Chain INPUT (policy ACCEPT)
target prot opt source destination
ACCEPT tcp -- 1.2.3.4 anywhere tcp dpt:8000
DROP tcp -- anywhere anywhere tcp dpt:8000

'지식 > Linux' 카테고리의 다른 글

Linux - GDB 사용법  (0) 2022.04.13
sed 사용법  (0) 2022.03.31
Raspberry pi - minidlna  (0) 2022.01.09
Raspberry pi - mopidy 설치  (0) 2021.05.30
Raspberry pi - Python3 설치  (0) 2021.05.30

댓글