シェルスクリプトマガジン

第25回 インターネットへのアクセスを制限する(Squidの設定)

インターネットへのアクセスを制限する

インターネットへのアクセスを制限するには、その出入り口となるルーターでの「パケットフィルタリング」(またはIPフィルター)設定が必要です。この設定名称や設定方法は、ルーターの機種によって異なります。ここでは、連載第10回で用いた、バッファローのルーター「WCR-1166DS」を例にします(図2)。

図2 バッファローのルーター「WCR-1166DS」

マニュアルなどに書かれた、ルーターの管理画面にアクセスするためのURLをリモートアクセス用パソコンのWebブラウザーに入力します。最初に認証画面が表示されます。マニュアルに書かれた、管理者のユーザー名とパスワードを入力します。
開いた画面右下にある「詳細設定」をクリックし、詳細設定画面を開きます。左側メニューの「セキュリティ」をクリックすると、「IPフィルター」メニューが現れます。そのメニューをクリックし、IPフィルターの設定画面を表示させます。
この画面からインターネットへのアクセスを制限できます。まずはLAN内からのアクセスをすべて禁止にします(図3)。「動作」で「拒否」または「無視」を、「方向」で「LAN→Internet」を、「プロトコル」で「全て」を選びます。「IPアドレス」の「送信元」にLANのネットワークアドレスを入力します。ここでは、LAN内で「192.168.1.1」から「192.168.1.254」までのIPアドレスが使えるので、ネットワークアドレスを「192.168.1.0/24」として入力しています。ここまで終えたら、「追加」ボタンをクリックして下のリストに設定を追加します。

図3 LAN内からのアクセスをすべて拒否

次にプロキシーサーバーのインターネットアクセスを許可します(▲図4▲)。「動作」で「許可」を、「方向」で「LAN→Internet」を、「プロトコル」で「全て」を選択します。「IPアドレス」の「送信元」にプロキシーサーバーのIPアドレス(ここでは「192.168.1.100」)を入力します。最後に「追加(先頭)」ボタンをクリックします。

図4 プロキシーサーバーからのインターネットアクセスを許可

登録した設定は、先頭から順に適用されます。つまり、プロキシーサーバーのインターネットアクセスが許可された後で、それ以外のインターネットアクセスを禁止にします。なお、Squidで簡単に設定できるのはHTTP/HTTPS、FTPのプロキシーなので、電子メールのSMTP/POPなどのプロトコルでインターネットにアクセスしたい場合は、LAN内のパソコンなどが直接アクセスできるように設定を追加してください。
リモートアクセス用パソコンのWebブラウザーから、どこかのWebサイトにアクセスしてページが開かないことを確認します。前回のようにパソコン側のプロキシーサーバーを設定し、ページをリロードしてアクセスできることを確認します。