web-dev-qa-db-ja.com

Firewalldはポートが開いていると言いますが、nmapはポートが閉じていると言います

CentOS 7のインストールで、サーバーで作成したメールアカウントの1つをGmailのエイリアスとして接続できません。

次のコマンドを実行しました。

 firewall-cmd --permanent --zone=public --add-service=smtp
 firewall-cmd --permanent --zone=public --add-port=25/tcp

そして私がするとき

firewall-cmd --permanent --zone=public --query-port=25/tcp

「はい」を返します

ただし、Gmailやさまざまなメールテストサイトで「サーバーにアクセスできません」というエラーが引き続き表示されます。

私はそれから

nmap -sT -O localhost

そして、私のポートがそこにリストされていないのを見ました。なぜ何かアイデア?

4
Jiri Krewinkel

2つのこと。まず、firewalldでは、firewall-cmd --reloadまたは--complete-reloadを使用して永続的なルールを適用した後でリロードする必要があります。クエリを再確認するか、firewall-cmd --list-all

次に、すでに上記を行っている場合は、ss -tuna | grep 25を確認し、*:25でリッスンしているかどうかを確認します。 '127.0.0.1:25`でリッスンしている場合は、postfixを再設定して別のインターフェースでリッスンする必要があります。例。

inet_interfaces = $myhostname
# or...
inet_interfaces = all
2
Sokel

3つのデバイスインターフェイスがあるとします。lo、LAN、WANです。

  • lo、localhost 127.0.0.1
  • LAN、ローカルエリアネットワーク192.168.1.2
  • WAN、World Area Network 169.254.8.8

投稿でゾーンがパブリックであると想定して、WANからトラフィックを開く場合は、それを送信する必要があります。これは、ソースと宛先と呼ばれます。

外はWANなのでソースは不明なので、すべて許可することができます:0.0.0.0

私たちのメールサーバーはLAN上で実行されているので、おそらくより多くのサーバーがローカルで簡単に使用できます。 (ファイアウォールで許可されている場合)。外部からアクセスするには、宛先を定義する必要があります。

ソース= 0.0.0.0、宛先= 192.168.1.2、ポート25。ポートには、送信元ポートと宛先ポートもあります。

0.0.0.0:25 -> 192.168.1.2:25

部外者にとっては次のようになります。

my.ip.address -> 169.254.8.8:25

さて、問題は、トンネルの端に誰かいるのでしょうか?メールサーバーをlo(127.0.0.1)にセットアップした可能性があります。

ポートを確認するには、netstat -al

  • -aまたは--allは、現在使用中のすべてのソケットを表示します
  • -lまたは--listeningは、現在着信接続を待機しているソケットのみを表示します。

私はpleskが仮想ホスティングプロバイダーであることを想定しています。多くの場合、それらはインスタンスの上にファイアウォールレイヤーを持っています。その場合は、インスタンス自体ではなく、最上層にファイアウォールを構成しないでください。

私はpleskの経験はありませんが、彼らのF.A.Qをチェックしてください。

0
rowan