리눅스(Linux) 의 종류별 방화벽 설정 방법
Linux 서버 관리를 하다가 자주 마주치는 것 중 하나가 서버의 포트 및 방화벽 문제라고 할 수 있는데 삽질하면서 알아낸 바를 정리해두었다.
CentOS, Fedora 등의 리눅스에서 포트 방화벽을 확인 하는 방법
- iptables –-list
- iptables -L(리스팅) -v(자세히)
Ubuntu 에서 포트 방화벽을 확인하는 방법
- sudo ufw status
Ubuntu 에서 포트 방화벽을 활성화 / 비활성화 하는 방법
- sudo ufw enable
- sudo ufw disable
CentOS, Fedora 등의 리눅스에서 포트를 추가하는 방법 (WhiteList)
- iptables -I INPUT 1 -p tcp –-dport 80 -j ACCEPT (80 번 Input 포트를 1번으로 추가)
- iptables -I OUTPUT 2 -p tcp –-dport 8080 -j ACCEPT (8080번 Output 포트를 2번으로 추가)
Ubuntu 에서 포트를 추가하는 방법 (WhiteList)
- sudo ufw allow <port>/<optional: protocol> (sudo ufw allow 443/tcp)
CentOS, Fedora 등의 리눅스에서 포트 WhiteList를 제거하는 방법
- iptables -D INPUT 2 (INPUT 2번째 규칙 제거)
Ubuntu 에서 포트 WhiteList를 제거하는 방법
- sudo ufw deny <port>/<optional: protocol>
Iptables 를 이용한 포트포워딩
- iptables -t nat -A PREROUTING -p tcp -m tcp –dport 80 -j REDIRECT –to-ports 8080
- iptables -t filter -A FORWARD -p tcp -m tcp –dport 80 -j ACCEPT
정확히는 삽질한 부분은 클라우드 환경에서 인스턴스의 외부 Security Group 보안설정을 고려하지 않은 채, 인스턴스의 방화벽을 직접 건드린 부분이었으나,
외부 방화벽 제어 로직 역시 다르지 않으므로 기본적인 내용은 익혀두자.