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