서버가 다시 시작될 때 iptables가 중지되기를 원합니다. 이것이 실용적이지 않다는 것을 알고 있지만 iptables를 사용하여 해결하려는 문제가 있으므로 이제 재부팅 시 이를 중지해야 합니다. 이제 iptables가 실행되었으므로 재부팅 시 서비스를 자동으로 중지하는 방법을 찾고 있습니다. 모두 감사합니다!
답변1
댓글에서 다음과 같이 말씀하셨습니다.
sudo service iptables stop
iptables
이는 iptables 설정이 not iptables-restore
, notnor 라는 firewalld
서비스에 의해 관리 된다는 것을 알려줍니다 ufw
.
이것은 서버가 다시 시작될 때 실행하는 명령입니다. 서비스가 중지되도록 재부팅 시 자동으로 명령을 실행해야 합니다.
아니, 너가 틀렸어.다음을 실행해야 합니다.
sudo systemctl disable iptables
(시스템에서 사용하는 경우systemd
)- 또는
sudo chkconfig iptables off
(이 없는 시스템의 경우systemd
).
이러한 명령은 iptables
부팅 시 시작되지 않도록 해야 합니다.그러니 애초에 주저할 것이 없습니다.
효과를 실행 취소하려면 각각 sudo systemctl enable iptables
또는 를 사용하십시오 sudo chkconfig iptables on
. 이 명령은 iptables
다음 재부팅 시 다시 시작됩니다.
사용 중이고 systemd
다른 서비스가 다음과 같이 구성되어 있는 경우필요 iptables
sudo systemctl mask iptables
, 그런 다음 다른 서비스를 시작할 수 없는 경우에도 서비스가 시작되지 않도록 절대적으로 방지 해야 할 수도 있습니다 . 이 작업을 실행 취소하려면 sudo systemctl unmask iptables
.
답변2
의견에 따르면 "시작"이나 "중지"가 없습니다. 커널이 실행 중이면 iptables를 사용할 수 있습니다(그러나 모듈을 블랙리스트에 올릴 수는 있지만 실제로 OP가 묻는 질문에 대한 답변은 아닙니다).
규칙 로딩을 비활성화하는 것도 문제를 해결하는 올바른 방법이 아닐 수도 있습니다. 문제를 해결하는 올바른 방법은 규칙을 적절한 규칙으로 변경하고(활성 규칙이 없음을 의미하더라도) 기본 구성으로 설정하는 것입니다. 이렇게 하면 iptables에 의존하는 기능(예: docker)이 정말로 필요한 경우 해당 기능을 사용할 수 있습니다.
이것이 어떤 분포인지 모르기 때문에 이를 수행하는 방법을 알려드릴 수 없습니다. 구성은 이름에 "iptables"가 있는 파일의 /etc에 저장될 수 있습니다.