iptables 규칙 재부팅 후에도 영구적으로 적용하기

iptables는 Linux 시스템에서 네트워크 트래픽을 관리하고 보호하기 위한 방화벽 도구입니다. 이를 통해 시스템 관리자는 네트워크로 들어오거나 나가는 트래픽을 필터링하고, 포트를 열거나 닫아서 보안을 강화할 수 있습니다. iptables를 사용하여 다양한 네트워크 보안 정책을 구현할 수 있으며, 이는 시스템의 안전성과 보안을 강화하는 데 중요한 역할을 하는데요. iptables 더 알아보기(링크 업데이트 예정)

iptables는 대부분의 Linux 배포판에서 기본적으로 제공되므로, 시스템 관리자들은 쉽게 이를 활용하여 네트워크 보안을 강화할 수 있어 자주 사용하게 되는 도구 입니다. 이렇게 iptables를 이용해 시스템의 방화벽을 구성 후 Linux 운영체제를 재부팅하게 되면 iptables 규칙은 자동으로 저장되지 않고 초기화됩니다. 하지만 이렇게 하는 것은 비효율적이고 위험하기도 합니다 만약 iptables 규칙을 영구적으로 유지하려면 다음과 같이 iptables-persistent패키지를 설치하고 /etc/iptables/rules.v4 또는 /etc/iptables/rules.v6 파일에 현재 규칙을 저장해야 합니다.

본문은 아래 튜토리얼 환경에서 ezis.org가 직접 검증 된 내용으로 작성 한 것 이지만, 각자 사용 환경이 다르기에 일부 사용자는 내용과 다른 결과가 나타날 수도 있습니다. 단순 하게 참고용으로 활용바랍니다.

튜토리얼 환경: Ubuntu 24.04v

iptables-persistent 패키지 설치

iptables를 이용해서 정책을 추가했다면 시스템의 방화벽 규칙을 영구적으로 저장하고 부팅 시에 자동으로 적용하는 데 사용되는 패키지인 iptables-persistent를 설치해야 합니다.

iptables-persistent-패키지-설치
iptables persistent 패키지 설치

명령줄에 다음 명령어를 작성하고 실행하면 apt-get 패키지 관리자iptables-persistent 패키지를 설치하고 필요한 의존성을 함께 처리합니다. 설치 과정에서 추가적인 패키지 설치, 설정 파일의 변경 등의 동의를 요구하니 y로 동의합니다.

sudo apt-get install iptables-persistent
규칙을-파일로-저장
규칙을 파일로 저장

설정한 규칙을 파일로 저장합니다. 일반적으로 이 파일은 /etc/sysconfig/iptables 또는 /etc/iptables/rules.v4에 저장됩니다. 필자의 경우 다음과 같이 사용합니다.

sudo iptables-save > /etc/iptables/rules.v4

만약 IPv6 규칙을 사용하고 있다면 다음과 같이 추가로 저장해야 합니다. IPv4와 IPv6는 서로 다른 프로토콜이기 때문에, iptables는 IPv4 규칙을 다루고, ip6tables는 IPv6 규칙을 다룹니다. 따라서, IPv6 규칙을 저장하려면 ip6tables-save 명령어를 사용해야 합니다. IP 주소 더 알아보기

sudo ip6tables-save > /etc/iptables/rules.v6
패키지-설정을-다시-구성
패키지 설정을 다시 구성

iptables persistent 패키지의 설정을 영구적으로 구성한다는 내용의 경고 페이지가 보여지게 됩니다. IPv4와 IPv6 두 가지 단계로 보여지는데 기본적으로 Yes에 선택되어 있으니 Enter로 동의합니다.

sudo dpkg-reconfigure iptables-persistent
Windows에서 batch 파일 만드는 방법

적용 확인

위 과정만으로 영구 적용이 완료되지만 실제 적용이 제대로 잘 되었는지 확인하고 싶다면 다음과 같이 현재 구성을 확인하고 실제 시스템을 재부팅한 뒤 다시 구성이 유지되는지를 확인합니다.

재부팅
재부팅

다음 명령으로 시스템을 재부팅합니다. 재부팅시 위와 같이 세션연결이 닫히게 되는데 재부팅 후 다시 아무키나 눌러주면 연결이됩니다.

sudo reboot
재부팅-후-정책-확인
재부팅 후 정책 확인

명령줄에서 sudo iptables -L 또는 sudo iptables -L -m -v 명령으로 현재 방화벽 규칙을 확인해 위와 같이 그대로 유지된다면 방화벽 규칙이 영구적으로 적용된 것 입니다.

관련 글

댓글로 남기기 어려운 내용은 Contact Form 에서 개별적으로 문의 할 수 있습니다. 해당 글과 연관 된 내용은 Copy를 이용해 현재 페이지의 주소를 복사 후 문의 폼에 입력시 보다 정확한 답을 얻을 수 있습니다.

Leave a Comment