bash: iptables: 명령을 찾을 수 없습니다

bash: iptables: 명령을 찾을 수 없습니다

iptables: command not found데비안 7.6의 문제를 어떻게 해결하나요 ?

batman@gotham:~$ uname -a
Linux gotham 3.14-0.bpo.2-amd64 #1 SMP Debian 3.14.13-2~bpo70+1 (2014-07-31) x86_64 GNU/Linux
batman@gotham:~$ iptables -L
bash: iptables: command not found
batman@gotham:~$ sudo apt-get install iptables
[sudo] password for batman: 
Reading package lists... Done
Building dependency tree       
Reading state information... Done
iptables is already the newest version.
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
batman@gotham:~$

나는 Google에서 광범위하게 검색했으며 대부분의 답변은 2005년과 2009년의 CentOS 및 Fedora에 대한 것입니다.

답변1

iptables명령은 다른 사용자가 아닌 루트로만 실행할 수 있습니다. 따라서 루트 이외의 사용자에 대한 기본 명령 검색 경로에는 없습니다.

를 실행하려면 iptables다음 명령 중 하나를 사용하여 루트로 실행하십시오.

su 'iptables --some-option …'
sudo iptables --some-option …

/sbin실행 파일은 루트의 기본 명령 검색 경로에 있습니다 .

답변2

iptables이는 변수 에 나열되지 않았기 때문입니다 PATH. sudo명령과 함께 사용해야 한다고 생각합니다 . 노력하다:

sudo iptables -L

이 방법도 작동하지 않으면 iptables바이너리의 위치를 ​​확인하고 PATH변수에 추가해야 합니다.

대부분의 경우 작동합니다 /sbin/. 그러나 Debian7에서 확인하면 됩니다. 그렇다면 파일을 /sbin/열고 .bashrc마지막에 다음을 제공할 수 있습니다.

PATH=/sbin/:$PATH

답변3

이는 귀하의 질문에 대한 답변이 아닐 수도 있습니다. 하지만 어떤 사람들은 같은 문제를 겪고 설치하지 않습니다.iptable

선택한 배포판에 따라 아래와 같이 iptables 패키지를 설치해 볼 수 있습니다.

분배하다 주문하다
더반 apt-get install iptables
우분투 apt-get install iptables
알프스 산맥 apk add iptables
아키텍처Linux pacman -S iptables
칼리리눅스 apt-get install iptables
중앙 운영 체제 yum install iptables
페도라 모자 dnf install iptables
라즈베리 파이 apt-get install iptables

답변4

일부 배포판에서는 iptables설치되지 않았으며 오래된 것으로 간주됩니다.

이러한 배포에서는 이 명령을 사용할 수 있습니다 nft. 그렇다면 nftables상황을 문서화할 수 있습니다.

https://wiki.debian.org/nftables

이것은 유용한 튜토리얼이 될 수 있습니다:

https://wiki.nftables.org/wiki-nftables/index.php/Moving_from_iptables_to_nftables

관련 정보