Shino's Bar

Linux奮戦記


17 Mar 2005 リンクの訂正 2 Nov 2001 (origin: 8 Oct 2001) Vine-2.1.xでのSWATの起動法

Webブラウザを用いてsambaの設定を行うためにSWATがsambaパッケージに同梱されています。 この起動方法がVine-2.0とVine-2.1(RedHatでは6.1と6.2 ?)では異なっています。 このためVine-2.0をベースにした解説書では役に立ちませんし、 sambaそのものについての解説は多いものの、SWATについての解説は簡単に済まされているものが多く、私もその1人ですがここで引っかかる人も多いと思うので、ここでSWATの起動法について記します。とくにVine-2.1.xについて書いています。xinetdを使う場合など他のディストリビューションについては びぎねっと入門シリーズ制作委員会Sambaで始めるWindowsファイルサーバー入門 が分かりやすく説明されています。

  1. ネットワークの確認
  2. ここでは次のような構成を例に説明を進めます。 それぞれのマシンの設定を終え、互いにpingが通ることを確認しておいてください。

              tap0┌────┐
    Internet───┤ Linux  │(lo: 127.0.0.1)
                  └──┬─┘
                    eth0│192.168.0.1           
                        │
                        │192.168.0.2
                  ┌──┴─┐
                  │Windows │
                  └────┘
    
  3. sambaのアップグレード
  4. samba-2.0.10_ja_1.1-0vl1が出ています。logrotateも併せて更新が必要です。詳しくはVine更新情報

  5. /etc/hosts.allow の設定
  6. Vine-2.1以降 inetdで swatを直接起動するのではなく tcpd(tcp_wrapper)を 経由し、/etc/hosts.allow、/etc/hosts.deny によりアクセスできるホストを制限するようになっています。 Vine-2.1.xをインストールし、sambaアップグレード後の /etc/hosts.allowは次のようになっています。

          swat: localhost
    これだとローカルからのアクセスは許可されているように見えますが、実際はSWATはローカルからも起動できません。 これは SWAT, tcpd いずれかの仕様と /etc/host の記述が適合していないためだと思われます。 また、Linux版の Netscapeでは /etc/samba.conf を壊してしまうことがあるようです。 私も何度かぶっ壊しました(^^;)。 Windowsマシンからもアクセスできるように、ローカルのIPに加えWindowsマシンの繋がっているホストのIPを次のように /etc/hosts.allow に追加します。 冒頭の例はシンプルですが、もう少し複雑でアクセスにゲートウェイを通過する場合などはそのゲートウェイのIPも入れておかねばなりません。

       swat: 127.0.0.1 192.168.0.2

    この他の設定は次のようになっているはずです。

    /etc/inetd.confあるいは/etc/services の設定を変更した場合は inetdを再起動して反映させます。rootになって

          # /etc/rc.d/init.d/inet restart

    (*)Vine-2.0では /etc/inetd.conf の記述は
    swat stream tcp nowait.400 root /usr/sbin/swat swat
    となっていました。また man swat でもこの方法が書かれており、sambaの解説書にもこう記載されているものは多いようです。 これだと tcp_wrapper を経由しないので さきのホストによるアクセス制限が掛からなくなり、セキュリティ上好ましくありません。

  7. SWATの起動
  8. Windowsマシンからブラウザで URLに

          http://192.168.0.1:901/

    (192.168.0.1 はLinuxマシンのIPアドレス) を入力すればログイン名とパスワードを尋ねられます。 rootとして設定を変更する場合はログイン名をrootとし、rootパスワードを入力します。

    ローカルからNetscape-4.xでアクセスすると、 /etc/samba.conf を壊してしまいます。 Vine-2.1.xには付属していませんがMozilla 9.xでは問題がないと聞いています。またVine-2.1.xに標準で付属している w3m が使えます。 kterm などを起動し、コマンドラインから「w3m」と入力、 大文字の「U」を入力後「http://127.0.0.1:901/」(ローカルからのアクセスなのでローカルループデバイスloのIPとなる)と入力すればユーザー名とパスワードを聞いてきます。 w3mの終了は大文字で「Q」です。

  9. Sambaの設定
  10. Sambaの設定については他の解説資料に譲りますが、ただひとつ書いておきます。 冒頭のようにインターネットに(ダイアルアップであっても)接続する場合は インターフェースを制限し、インターネット側からのアクセスができないように設定しなければなりません。 標準設定ではこの設定項目は現れません。 「全体設定」で「詳細設定」をクリックし、

          interfaces
          インターフェース              lo eth0
          bind interfaces only
          このインターフェースのみ使用  yes
    としてください。(lo はローカルループバックで Linux共通、 eth0のところはあなたの環境に合わせてください。)
この文書は一部および全部をそのまま、あるいは補筆して転載することは自由です。 ご意見ご質問は E-mail で マスターまで

2 Nov 2001 肝心の設定ファイル名のtypoを三嶋さんに指摘していただきました。 またw3mの情報は岩井さんからいただきました。 ありがとうございます。


Shino's Bar goto [Linux奮戦記]