CentOS 7을 사용하고 있으며 포트 2888 및 3888이 열려 있는지 확인해야합니다.
이 기사를 읽었 지만 CentOS 7 OS에는 iptables save
명령 이 없기 때문에 작동하지 않았습니다 .
누군가 위의 URL이 CentOS 7에 유효하지 않다고 말했고 나는 이것을 따라야 합니다 . 그러나이 기사는 정확히 어떤 명령을 실행 해야하는지 명확하지 않습니다.
나도 찾았 어
firewall-cmd --zone=public --add-port=2888/tcp
그러나 이것은 재부팅 후에도 지속되지 않습니다.
그렇다면 어떻게 포트를 열고 재부팅 후에도 유지할 수 있습니까?
답변
이 명령을 사용하여 활성 영역을 찾으십시오.
firewall-cmd --get-active-zones
public, dmz 또는 다른 것을 말할 것입니다. 필요한 구역에만 적용해야합니다.
공개 시도의 경우 :
firewall-cmd --zone=public --add-port=2888/tcp --permanent
그런 다음 변경 사항을 적용하려면 방화벽을 다시로드하십시오.
firewall-cmd --reload
그렇지 않으면 영역이 dmz 인 경우 영역을 공용으로 대체하십시오.
firewall-cmd --zone=dmz --add-port=2888/tcp --permanent
답변
ganeshragav 의 답변 은 정확하지만 다음을 사용할 수 있음을 아는 것도 유용합니다.
firewall-cmd --permanent --zone=public --add-port=2888/tcp
그러나 알려진 서비스 인 경우 다음을 사용할 수 있습니다.
firewall-cmd --permanent --zone=public --add-service=http
그런 다음 방화벽을 다시로드하십시오.
firewall-cmd --reload
[Martin Peter의 의견을 반영하여 답변이 수정되었습니다. 원래 답변은 --permanent
명령 줄 끝에 있었습니다 ]
답변
CentOS (RHEL) 7 firewall-cmd
은 Windows 버전의 공용, 홈 및 개인 네트워크와 같은 영역 개념을 가진 방화벽을 사용하도록 변경했습니다 . 어떤 것을 사용해야하는지 알아 내 려면 여기 를 봐야합니다. EL7은 public
기본적으로 사용 되므로 아래 예제에서 사용됩니다.
사용중인 영역을 확인 firewall-cmd --list-all
하고로 변경할 수 있습니다 firewall-cmd --set-default-zone=<zone>
.
그러면 서비스 (또는 포트)를 허용 할 영역을 알 수 있습니다.
firewall-cmd --permanent --zone=<zone> --add-service=http
firewall-cmd --permanent --zone=<zone> --add-port=80/tcp
다음을 실행하여 포트가 실제로 열려 있는지 확인할 수 있습니다.
firewall-cmd --zone=<zone> --query-port=80/tcp
firewall-cmd --zone=<zone> --query-service=http
에 따르면 문서 ,
영구 모드에서 방화벽 설정을 변경할 때 선택 사항은 방화벽을 다시로드하거나 시스템을 다시 시작할 때만 적용됩니다.
다음을 사용하여 방화벽 설정을 다시로드 할 수 있습니다 firewall-cmd --reload
.
답변
페도라 iptables
sudo iptables -I INPUT -p tcp --dport 3030 -j ACCEPT
sudo service iptables save
작동하는 것 같습니다
답변
열린 포트를 보려면 다음 명령을 사용하십시오.
firewall-cmd --list-ports
다음은 포트가 열려있는 서비스를 확인하기 위해 사용합니다.
firewall-cmd --list-services
다음을 사용하여 포트가 열려있는 서비스를 확인하고 열린 포트를 확인합니다
firewall-cmd --list-all
방화벽에 서비스를 추가하기 위해 다음 명령을 사용합니다.이 경우 서비스는 포트를 사용하여 방화벽에서 엽니 다.
firewall-cmd --add-services=ntp
이 서비스를 영구적으로 열려면 다음 명령을 사용하십시오.
firewall-cmd —add-service=ntp --permanent
포트를 추가하려면 다음 명령을 사용하십시오
firewall-cmd --add-port=132/tcp --permanent
다음 명령을 사용하여 방화벽을 다시로드해야합니다.
firewall-cmd --reload
야 알리
답변
ganeshragav 와 Sotsir 는 정확하고 직접 적용 가능한 접근 방식을 제공 하지만에 고유 한 서비스를 추가 할 수 있다는 점에 유의하는 것이 좋습니다 /etc/firewalld/services
. 영감을 얻으려면 /usr/lib/firewalld/services/
방화벽의 사전 정의 된 서비스가있는 곳을보십시오.
이 접근 방식의 장점은 나중에 서비스 파일에서 설명한대로 이러한 포트가 열린 이유를 알 수 있다는 것입니다. 또한 오타 위험없이 모든 영역에 적용 할 수 있습니다. 또한 서비스에 대한 변경 사항을 모든 영역에 개별적으로 적용 할 필요는 없으며 서비스 파일에만 적용하면됩니다.
예를 들어 다음을 만들 수 있습니다 /etc/firewalld/services/foobar.xml
.
<?xml version="1.0" encoding="utf-8"?>
<service>
<short>FooBar</short>
<description>
This option allows you to create FooBar connections between
your computer and mobile device. You need to have FooBar
installed on both sides for this option to be useful.
</description>
<port protocol="tcp" port="2888"/>
<port protocol="tcp" port="3888"/>
</service>
(구문에 대한 정보는을 참조하십시오 man firewalld.service
.)
이 파일을 만든 후에는 파일을 firewall-cmd --reload
사용할 수있게하여 다음을 사용하여 일부 영역에 영구적으로 추가 할 수 있습니다
firewall-cmd --permanent --zone=<zone> --add-service=foobar
그 firewall-cmd --reload
즉시 활성화되었습니다.
답변
열린 포트를 보려면 다음 명령을 사용하십시오.
firewall-cmd --list-ports
포트가 열려있는 서비스를 보려면 다음을 사용하십시오.
firewall-cmd --list-services
다음을 사용하여 포트가 열려있는 서비스를보고 열려있는 포트를 봅니다.
firewall-cmd --list-all
방화벽에 서비스를 추가하기 위해 다음 명령을 사용합니다.이 경우 서비스는 포트를 사용하여 방화벽에서 엽니 다.
firewall-cmd --add-services=ntp
이 서비스를 영구적으로 열려면 다음 명령을 사용하십시오.
firewall-cmd -add-service=ntp --permanent
포트를 추가하려면 다음 명령을 사용하십시오.
firewall-cmd --add-port=132/tcp --permanent