방화벽의 서비스에 두 개의 포트 할당

방화벽의 서비스에 두 개의 포트 할당

방화벽에서 동일한 서비스에 두 개의 포트를 할당하는 방법이 있습니까? 예를 들어 SMTP 서비스가 포트 25와 포트 465 모두에서 수신 대기하도록 하려고 합니다. 나의 첫 번째 반응은 /usr/lib/firewalld/services/smtp.xml다음과 같이 변경하는 것이었습니다 .

<?xml version="1.0" encoding="utf-8"?>
<service>
  <short>Mail (SMTP)</short>
  <description>This option allows incoming SMTP mail delivery. If you need to allow remote hosts to connect directly to your machine to deliver mail, enable this option. You $
  <port protocol="tcp" port="465"/>
  <!-- is adding a second port here legal and the best approach? -->
  <port protocol="tcp" port="25"/> 
</service>

답변1

다른 서비스를 만들 수 있습니다.

<?xml version="1.0" encoding="utf-8"?>
<service>
  <short>Mail (SMTP on port 465)</short>
  <description>This option allows incoming SMTP mail delivery on the alternative port 465. If you need to allow remote hosts to connect directly to your machine to deliver mail, enable this option. You do not need to enable this if you collect your mail from your ISP's server by POP3 or IMAP, or if you use a tool such as fetchmail. Note that an improperly configured SMTP server can allow remote machines to use your server to send spam.</description>
  <port protocol="tcp" port="465"/>
</service>

예를 들어 다른 이름으로 저장하면 나중에 원래 서비스와 동일한 영역 /usr/lib/firewalld/services/alt-smtp.xml에 추가할 수 있습니다 .smtp

또는 질문에 제안된 대로 수행할 수도 있습니다. 에서 man firewalld.service:

port
   Is an optional empty-element tag and can be used several times to have
   more than one port entry.

전자는 더 많은 제어권을 제공합니다. 하나 또는 둘 다를 활성화할 수 있습니다. 후자는 타이핑이 덜 필요합니다.

관련 정보