부팅 할 때마다 iptable 규칙을 복원해야합니까? 복원 할 수

내가 다시 부팅 할 때마다 나는 너무 길어 들어간 iptables 규칙을 느슨하게했다. 나는 그것들저장하고 부팅 할 때 복원 할 수 있다는 것을 알고 있지만 영원히 저장 할 수 있습니까? 부팅 할 때마다 복원해야합니까? 진심이야?

문제는 while 루프를 사용하여 IP를로드 하는 거대한 IP 목록 이 있다는 것입니다.이 작업에는 10 분 이상 걸릴 수 있습니다.

이것은 내 집 FTP 서버입니다. 1GB 램과 처리 능력이 거의없는 작은 VM입니다. 내가 아시아 대륙에서 거의 포기했기 때문에 IP가 너무 많습니다. 난폭 한 힘으로 매일 FTP 서버를 공격 할 필요가 없습니다. 또한 정부를 차단합니다. 모니터, 트래커 및 스패머.

이것은 목록에로드하는 데 사용하는 while 루프입니다.

grep INPUT block.list | while read LISTA; do sudo iptables -A $LISTA; done



답변

먼저 다음과 같은 내용으로 파일을 만듭니다 iptables-save.

sudo iptables-save > /etc/iptables_rules

파일을 어디에 두는지는 중요하지 않으므로 다음 줄이 동일한 파일을 참조해야합니다. 그런 다음 /etc/rc.local이 줄을 열고 추가하십시오.

/sbin/iptables-restore < /etc/iptables_rules

이제부터는 컴퓨터 전원을 켜거나 재시작 할 때마다 iptables가 지정한 파일에서 규칙을로드합니다.


답변

apt-get install iptables-persistent

설치시 현재 iptables 구성을 저장해야합니다. 그렇지 않으면 (v4 또는 v6에 따라) 이러한 파일에 파일을 저장할 수 있으며 iptables-persistent는 부팅시 파일을로드합니다 🙂

iptables-save > /etc/iptables/rules.v4
ip6tables-save > /etc/iptables/rules.v6


답변

규칙이 많으면 iptables와 함께 ipset을 사용하는 것도 고려해야합니다. Ipset은 인덱싱 된 데이터베이스 테이블을 사용하며 주소를 조회 할 때 iptables보다 훨씬 빠르므로 수락 또는 거부 여부를 결정합니다.

http://ipset.netfilter.org/index.html


답변