LINUX Port53 開放について

すみませんが教えて下さい。
DNSサーバーを構築し、サービスは動いているのですがポート53番が開いていません><
どうやって開くのでしょうか?
ちなみに

vi /etc/sysconfig/iptables
-A INPUT -p tcp -m tcp -–dport 53 -j ACCEPT  ←を追加しました。

/etc/rc.d/init.d/iptables stop ←は停止しています。

どなたかご指導をお願いします。

回答の条件
  • 1人3回まで
  • 13歳以上
  • 登録:2011/03/02 09:53:27
  • 終了:2011/03/02 22:15:37

ベストアンサー

id:JULY No.1

JULY回答回数966ベストアンサー獲得回数2472011/03/02 10:08:12

ポイント100pt

外部からport 53がアクセス出来ず困っています。 サーバ機でnmap.. - 人力検索はてな

これと同じじゃないですか?

ディストリビューションによって違うかもしれませんが、CentOS(RHEL)であれば、デフォルトの named.conf ではローカルホストのみで待ち受けている格好になります。

id:hogehoho

ありがとうございます。色々みてみます。

2011/03/02 22:14:29

その他の回答(2件)

id:JULY No.1

JULY回答回数966ベストアンサー獲得回数2472011/03/02 10:08:12ここでベストアンサー

ポイント100pt

外部からport 53がアクセス出来ず困っています。 サーバ機でnmap.. - 人力検索はてな

これと同じじゃないですか?

ディストリビューションによって違うかもしれませんが、CentOS(RHEL)であれば、デフォルトの named.conf ではローカルホストのみで待ち受けている格好になります。

id:hogehoho

ありがとうございます。色々みてみます。

2011/03/02 22:14:29
id:JULY No.2

JULY回答回数966ベストアンサー獲得回数2472011/03/02 10:23:43

ポイント27pt

ごった煮 - CentOS 4.0導入記(覚え書き) - DNSサーバ(bind9)の導入

あっ、一つ忘れていた(^^;。

DNS は通常、UDP です。TCP も使われますが、圧倒的に UDP が使われます。

質問文にある iptables は TCP に対する物なので、UDP も空ける必要があります。

厳密なことを言うと、INPUT チェーンに対するデフォルトがどうなっているか、とか、追加した行がどの位置なのか、といった事にも依存するので、/etc/sysconfig/iptables に質問文にある行の追加だけでは、本当に別の理由で許可されていない可能性があります。

前述のページは CentOS 4 での例ですが、CentOS や RHEL の場合、RH-Firewall-1-INPUT というチェーンが設定されていて、INPUT チェーンに入った物が RH-Firewall-1-INPUT というチェーンに入るような格好になっていたりします。

ですので、質問文にある /etc/sysconfig/iptables の設定が適切かどうかは、正確には判断出来ないのですが、もし、適切な設定であったとすれば、UDP に対して同様に ACCEPT するためのルールを追加する必要があります。

id:hogehoho

ありがとうございます。

ちなみに /etc/rc.d/init.d/iptables stop ファイアウォールは停止しているので

特に追加しなくてもよいのでは?と思っているのですが、認識あっていますか?

2011/03/02 10:27:44
id:Galapagos No.3

Galapagos回答回数963ベストアンサー獲得回数892011/03/02 13:46:23

ポイント26pt

ブロードバンドルーターのポート53は開いていますか?

ご確認ください。

id:hogehoho

ありがとうございます。開いています^^

2011/03/02 22:14:43
  • id:JULY
    > ちなみに /etc/rc.d/init.d/iptables stop ファイアウォールは停止しているので

    あっ、これも読み落としていた...。なに、焦ってるんだか>自分(^^;。

    停止しているなら、待ち受けしている全てのポートでパケットを受信可能な状態ですので、止めているのに反応が無いとしたら、最初に書いた方の可能性が高いです。

    一応、本当にファイアウォールが停止しているかどうかを確認するには、

    -------------------------------------------------------
    # iptables -L
    Chain INPUT (policy ACCEPT)
    target prot opt source destination

    Chain FORWARD (policy ACCEPT)
    target prot opt source destination

    Chain OUTPUT (policy ACCEPT)
    target prot opt source destination
    -------------------------------------------------------

    と、「-L」付きで iptables を実行すると分かります。

    で、DNS サーバの待ち受け状態は、

    -----------------------------------------------------------------------------
    $ netstat -ap | grep named
    tcp 0 0 localhost.localdomai:domain *:* LISTEN 1753/named
    tcp 0 0 localhost.localdomain:rndc *:* LISTEN 1753/named
    tcp 0 0 localhost6.localdomain:rndc *:* LISTEN 1753/named
    udp 0 0 localhost.locald:domain *:* 1753/named
    -----------------------------------------------------------------------------

    とすると、DNS サーバ(named)が待ち受けしている状態が分かります。上記の例だと、TCP だと1行目。UDP だと4行目で、ポート番号 53(domain)で待ち受けしている事が分かります(rdnc は rdnc コマンドで DNS サーバの制御をするためのもの)。

    で、「localhost.localdomain」(「localhost.locald」といった具合に、途中で切れていますが、localhost.localdomain」の事です)で待ち受けしているので、別のホストから53 番ポートにパケットが送られても「待ち受けしているプロセスが無い」のと同じ扱いになります。

    別のホストからアクセス可能になっていれば、

    -----------------------------------------------------------------------------
    $ netstat -ap | grep named
    tcp 0 0 dns.example.jp:domain *:* LISTEN 1753/named
    tcp 0 0 localhost.localdomai:domain *:* LISTEN 1753/named
    tcp 0 0 localhost.localdomain:rndc *:* LISTEN 1753/named
    tcp 0 0 localhost6.localdomain:rndc *:* LISTEN 1753/named
    udp 0 0 dns.example.jp:domain *:* 1753/named
    udp 0 0 localhost.locald:domain *:* 1753/named
    -----------------------------------------------------------------------------

    といった具合に、自分のホスト名(上記例では dns.example.jp。IP アドレスに対するホスト名が確定できない場合には、その IP アドレス)の行が現れます。



この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません