저는 공급업체의 Linux 커널 3.12.70 사용자 정의 배포판을 실행하는 셀룰러 모뎀/라우터를 사용하고 있습니다.
사용자 정의 규칙을 추가하고 싶지만 iptables
재부팅 시 계속 삭제됩니다.
나는 노력했다https://help.ubuntu.com/community/IptablesHowTo#Saving_iptables해결 방법 2이지만 작동하지 않습니다.
그런데 cat on 을 실행하면 iptables-restore
문자 ipstables-save
가 왜곡되어 바이너리이거나 암호화되어 보호될 수 있습니다.
그러나 iptables
SSH를 통해 개별 명령을 실행하면 재부팅할 때까지 계속 작동합니다.
iptables
재부팅 시 CLI를 통해 단일 규칙을 자동으로 실행하는 방법을 찾으려고 합니다 .
#!/bin/sh -e
나는 추가하고 싶은 줄을 추가 하고 그것을 init.d
디렉토리에 넣고 실행 가능하게 만들고 실행한 update-rc.d
다음 rc5.d
디렉토리에 복사했습니다 ln -s
.
답변1
- sudo -s (루트로 로그인)
- mount -o remount,rw / (전체 파일 시스템을 읽기-쓰기 모드로 마운트합니다)
- /etc/init.d/에 스크립트를 생성합니다(제 경우에는 install_firewall.sh 스크립트를 생성했습니다).
- "update-rc.d start 99 5." (update-rc.d 명령을 사용하여 원하는 런레벨에 스크립트를 추가합니다. 제 경우에는 "update-rc.d install_firewall.sh start 99 5." 명령을 넣습니다. runlevel 5 및 우선 순위 99의 install_firewall.sh는 재부팅 후 마지막 스크립트 실행을 의미합니다.
- 내 스크립트에서는 코드의 모든 방화벽 규칙이 적용되도록 35초 지연을 추가한 다음 스크립트를 통해 이를 조작하기 시작합니다.
'#!/bin/bash'
sleep 35
iptables [...]//Add custom iptables rules here
exit 0