우분투에서 iptables를 시작 / 중지하는 방법은 무엇입니까? 서비스를 시작 / 중지하려면 어떻게해야합니까? 나는 시도했다

우분투에서 iptables 서비스를 시작 / 중지하려면 어떻게해야합니까?

나는 시도했다

 service iptables stop

그러나 “인식되지 않은 서비스”를 제공하고 있습니다.

왜 그렇게합니까? 다른 방법이 있습니까?



답변

나는 “우분투”에 대해 모른다. 그러나 리눅스에서 일반적으로 “iptables”는 서비스가 아니다-넷 필터 커널 방화벽을 조작하는 명령이다. 모든 표준 체인의 기본 정책을 “ACCEPT”로 설정하고 규칙을 삭제하여 방화벽을 “비활성화”(또는 중지) 할 수 있습니다.

iptables -P INPUT ACCEPT
iptables -P OUTPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -F

(사용한 경우 “nat”과 같은 다른 테이블도 플러시해야합니다.)

Ubuntu 웹 사이트의 다음 기사에서는 NetworkManager와 함께 사용할 iptables 설정에 대해 설명합니다. https://help.ubuntu.com/community/IptablesHowTo


답변

당신은 모두 잘못되었습니다 🙂

찾고있는 명령은 다음과 같습니다.

$ sudo ufw disable


답변

먼저 설치되어 있는지 확인합니다 (아마도) :

dpkg -l | grep iptables

우분투에서 iptables는 서비스가 아닙니다. 중지하려면 다음을 수행해야합니다.

sudo iptables-save > /root/firewall.rules
iptables -X
iptables -t nat -F
iptables -t nat -X
iptables -t mangle -F
iptables -t mangle -X
iptables -P INPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -P OUTPUT ACCEPT

이전 규칙을 복원하려면 다음을 수행하십시오.

iptables-restore < /root/firewall.rules

이것은 http://www.cyberciti.biz/faq/turn-on-turn-off-firewall-in-linux/ 에서 가져 왔으며 많은 우분투 8.X 및 9.10 설치에서 테스트되었습니다.


답변

iptables는 서비스가 아닌 명령이므로 일반적으로 다음과 같은 명령을 사용할 수 없습니다

service iptables start

또는

service iptables stop

방화벽을 시작하고 중지하기 위해 centos와 같은 일부 배포판에서는 방화벽을 시작 및 중지하기 위해 iptables라는 서비스와 방화벽을 구성하기위한 구성 파일을 설치했습니다. 어쨌든이 범위에 대한 스크립트를 편집하거나 설치하여 ipotables를 관리하는 서비스를 만들 수 있습니다. 리눅스의 모든 서비스, 우분투는 예외가 아니며 표준 인터페이스를 구현하는 /etc/init.d 폴더 내의 실행 가능한 스크립트입니다 (시작, 중지, 다시 시작) 가능한 스크립트는 다음과 같습니다.

 #!/bin/sh -e
 ### BEGIN INIT INFO
 # Provides:          iptables
 # Required-Start:    mountvirtfs ifupdown $local_fs
 # Default-Start:     S
 # Default-Stop:      0 6
 ### END INIT INFO

 # July 9, 2007
 # James B. Crocker <ubuntu@james.crocker.name>
 # Creative Commons Attribution - Share Alike 3.0 License (BY,SA)
 # Script to load/unload/save iptables firewall settings.

 PATH="/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin"

 IPTABLES=/sbin/iptables
 IPTABLES_SAVE=/sbin/iptables-save
 IPTABLES_RESTORE=/sbin/iptables-restore

 IPTABLES_CONFIG=/etc/iptables.conf

 [ -x $IPTABLES ] || exit 0

 . /lib/lsb/init-functions


 case "$1" in
 start)
    log_action_begin_msg "Starting firewall"
         type usplash_write >/dev/null 2>/dev/null && usplash_write "TIMEOUT 120" || true
    if $IPTABLES_RESTORE < $IPTABLES_CONFIG ; then
        log_action_end_msg $?
    else
        log_action_end_msg $?
    fi
         type usplash_write >/dev/null 2>/dev/null && usplash_write "TIMEOUT 15" || true
    ;;

 stop)
    log_action_begin_msg "Saving current firewall configuration"
    if $IPTABLES_SAVE > $IPTABLES_CONFIG ; then
        log_action_end_msg $?
    else
        log_action_end_msg $?
    fi
    log_action_begin_msg "Flushing ALL firewall rules from chains!"
    if $IPTABLES -F ; then
        log_action_end_msg $?
    else
        log_action_end_msg $?
    fi
    log_action_begin_msg "Deleting ALL firewall chains [Warning: ACCEPTING ALL PORT SERVICES!]"
    if $IPTABLES -X ; then
        $IPTABLES -P INPUT ACCEPT
        $IPTABLES -P FORWARD ACCEPT
        $IPTABLES -P OUTPUT ACCEPT
        log_action_end_msg $?
    else
        log_action_end_msg $?
    fi
    ;;

 save)
    log_action_begin_msg "Saving current firewall configuration"
    if $IPTABLES_SAVE > $IPTABLES_CONFIG ; then
        log_action_end_msg $?
    else
        log_action_end_msg $?
    fi
    ;;

 force-reload|restart)
    log_action_begin_msg "Reloading firewall configuration [Warning: POTENTIAL NETWORK INSECURITY DURING RELOAD]"
    $IPTABLES -F
    $IPTABLES -X
    if $IPTABLES_RESTORE < $IPTABLES_CONFIG ; then
        log_action_end_msg $?
    else
        log_action_end_msg $?
    fi
    ;;

 *)
    echo "Usage: /etc/init.d/iptables {start|stop|save|restart|force-reload}"
    exit 1
    ;;
 esac

 exit 0

이 스크립트는이 튜토리얼의 일부이며 , 방화벽을 구성하기위한 모든 명령은 위 스크립트에 따라 /etc/iptables.conf 파일에 삽입해야합니다. 이 스크립트는 /etc/init.d의 iptables 파일에 삽입되어 다음을 사용하여 실행 가능해야합니다.

chmod+x *iptables*

다음을 사용하여 서비스를 런레벨에 추가하십시오.

update-rc.d iptables defaults

쉘에서 새 규칙을 추가 할 수 있습니다.이 규칙은 즉시 활성화되며 서비스가 중지되면 /etc/iptables.conf에 추가됩니다 (시스템 종료시 확실히 저장됨을 의미합니다).

이것이 모두에게 도움이되기를 바랍니다.


답변

iptables와 ufw는 Linux 에서 넷 필터 방화벽 을 관리하는 방법 이며, 둘 다 기본적으로 Ubuntu에서 사용 가능하므로 방화벽 규칙을 시작 및 중지 (및 관리) 할 수 있습니다.

iptables는 더 유연하지만 ufw는 간단하고 일반적인 기능을위한 매우 간단한 인터페이스 언어를 제공하므로 다음을 사용할 수 있습니다.

sudo ufw disable # 방화벽을 비활성화하려면

sudo ufw enable # 방화벽을 활성화하려면

현재 방화벽 설정을 보려면 sudo ufw status verbose또는을 사용하십시오 iptables -L.

iptablesUFW 의 Ubuntu Community docs 페이지 에는 많은 정보가 있습니다.


답변

우분투에서 방화벽을 관리하는 몇 가지 방법이 있으므로 https://help.ubuntu.com/community/IptablesHowTo#Configuration%20on%20startup 을 읽어보십시오.

모든 현재 규칙을 삭제하려면 다음 명령을 사용할 수 있습니다 (일부 스크립트에 추가).

iptables -t nat -P PREROUTING ACCEPT
iptables -t nat -P POSTROUTING ACCEPT
iptables -t nat -P OUTPUT ACCEPT
iptables -t nat -F
iptables -t nat -X
iptables -t mangle -P PREROUTING ACCEPT
iptables -t mangle -P INPUT ACCEPT
iptables -t mangle -P FORWARD ACCEPT
iptables -t mangle -P OUTPUT ACCEPT
iptables -t mangle -P POSTROUTING ACCEPT
iptables -t mangle -F
iptables -t mangle -X
iptables -t filter -P INPUT ACCEPT
iptables -t filter -P FORWARD ACCEPT
iptables -t filter -P OUTPUT ACCEPT
iptables -t filter -F
iptables -t filter -X

일반적인 경우 기본 방화벽 규칙은 일부 파일 (예 : /etc/iptables.rules)에 저장됩니다. 부팅하는 동안 iptables-restore </etc/iptables.rules방화벽 규칙을로드하기 위해 시스템 명령이 실행되었습니다. 따라서 위의 명령을 사용하여 모든 규칙을 삭제 한 후 동일한 명령을 실행하면 요청한 “방화벽 다시로드”가 발생합니다.


답변

우분투 안내서에서 iptables를 설정하는 제안 된 방법을 올바르게 기억한다면 네트워킹 스크립트의 일부로 iptables를 설정하는 것입니다. 이것은 BSD 스타일 OS와 같이 /etc/init.d/iptables 스크립트가 없음을 의미합니다.