まとまりのないブログ

something which something is something

linux

特定のipアドレスをルータでアクセス制限する

投稿日:

ルータによるアクセス制限の方法についてのメモ。

apacheのログに不審なアクセスが記録されていた。

58.62.172.114 - - [28/Jul/2009:02:17:53 +0900] "CONNECT 205.188.251.43:443 HTTP/1.0" 405 355 "-" "-"
58.62.172.114 - - [28/Jul/2009:02:19:55 +0900] "CONNECT 64.12.200.89:443 HTTP/1.0" 405 353 "-" "-"
58.62.172.114 - - [28/Jul/2009:02:21:57 +0900] "CONNECT 64.12.202.116:443 HTTP/1.0" 405 354 "-" "-"
58.62.172.114 - - [28/Jul/2009:02:23:58 +0900] "CONNECT 205.188.251.43:443 HTTP/1.0" 405 355 "-" "-"
58.62.172.114 - - [28/Jul/2009:02:25:59 +0900] "CONNECT 64.12.200.89:443 HTTP/1.0" 405 353 "-" "-"
58.62.172.114 - - [28/Jul/2009:02:28:02 +0900] "CONNECT 64.12.202.116:443 HTTP/1.0" 405 354 "-" "-"
58.62.172.114 - - [28/Jul/2009:02:30:02 +0900] "CONNECT 205.188.251.43:443 HTTP/1.0" 405 355 "-" "-"
58.62.172.114 - - [28/Jul/2009:02:31:59 +0900] "CONNECT 64.12.200.89:443 HTTP/1.0" 405 353 "-" "-"
58.62.172.114 - - [28/Jul/2009:02:34:00 +0900] "CONNECT 64.12.202.116:443 HTTP/1.0" 405 354 "-" "-"
58.62.172.114 - - [28/Jul/2009:02:36:00 +0900] "CONNECT 205.188.251.43:443 HTTP/1.0" 405 355 "-" "-"
58.62.172.114 - - [28/Jul/2009:02:37:59 +0900] "CONNECT 64.12.200.89:443 HTTP/1.0" 405 353 "-" "-"
58.62.172.114 - - [28/Jul/2009:02:39:59 +0900] "CONNECT 64.12.202.116:443 HTTP/1.0" 405 354 "-" "-"
58.62.172.114 - - [28/Jul/2009:02:45:57 +0900] "CONNECT 64.12.202.116:443 HTTP/1.0" 405 354 "-" "-"
58.62.172.114 - - [28/Jul/2009:02:48:00 +0900] "CONNECT 205.188.251.43:443 HTTP/1.0" 405 355 "-" "-"
58.62.172.114 - - [28/Jul/2009:02:49:56 +0900] "CONNECT 64.12.200.89:443 HTTP/1.0" 405 353 "-" "-"
58.62.172.114 - - [28/Jul/2009:02:51:56 +0900] "CONNECT 64.12.202.116:443 HTTP/1.0" 405 354 "-" "-"

58.62.172.114というアドレスの持ち主が私のサーバを踏み台にして他のサーバへアクセスしているらしい。”CONNECT 205.188.251.43:443 HTTP/1.0″という部分は443ポート(SSL)で205.188.251.43に対して接続を試みているという意味。結果は全てステータス405で失敗に終わっているが,気味が悪いので一応58.62.172.114というアドレスからのアクセス制限という対策をしておくことにする。

アクセス制限をする方法は,思いついたのは2つ。一つ目は,私はサーバをubuntuで運用しているので,iptablesを設定してパケットの通過を遮断するという方法。もう一つはルータにて特定のアドレスを遮断するという方法。応用が利いて実践的なのはiptablesにてアクセス制限を実施する方法。簡単なのはルータにてアクセス制限をする方法。iptablesの設定は別に難しいというわけではないが,幅広い設定をすることができるために覚えることが多く,動作テストに試行錯誤を必要とするため多少手間がかかる。今回は特定のipアドレスからのアクセスのみ制限をできたらいいのでルータにて設定してみることにする。(私自身iptablesの設定は前にやったことがあるけれど,思い出すのがしんどい・・・)

私が使っているルータについて。BUFFALOのWHR-HP-G54という機種。無線Lanに対応した家庭用のルータ。今気づいたが,パケットフィルタリングの機能が意外と充実している模様。

アクセス制限を設定してみる。

  1. b-r-1ルータの管理画面にログインする。そしてパケットフィルタのページを表示させる。(右画像)
  2. b-r-2IPフィルタ登録情報の編集ボタンをクリックしてルールを追加する。動作は無視,方向はWAN→LAN,送信元にアクセス制限をするipアドレスを入力する。宛先は空白にすると全てが対象になるならしい。プロトコルは全てのプロトコルを対象にする。入力が終わったら設定ボタンをクリックして保存する。

ルータにて特定のipアドレスの設定をやってみたが,効いてるのかどうかはしばらく様子見。ところで,特定のipアドレスのアクセス制限をするのにapacheで設定する方法はあるのだろうか。今回のような踏み台にすることを目的にアクセスして来られた場合,htaccessで設定をしてもアクセス制限はできない。htaccessは特定のディレクトリやファイルに対してアクセスを制限することはできるが,他のサイトに対する接続に対しては制限できない。調べれば設定方法があるかもしれないが,今のところは不明。

設定していて気づいたが,このパケットフィルタ機能はLAN→WANの方向にもアクセス制限をすることができるようになっている。例えば,自分の子供が居たとして,自宅のインターネット環境から未成年者には不適切な有害サイトにアクセスができないように設定をするということもできる。中毒性が高いオンラインRPGや出会い系サイト,SNSサイトなど,ドメインをwhois検索で調べてそのホストのサーバipアドレスをパケットフィルタで設定すれば強制的に閲覧できないようにすることができる。または,やめたくてもやめられない人などにも有効な対策になるかもしれない。ただし,2ちゃんねる掲示板のような大規模なサイトへのアクセスを制限するのは,ルータでは手間がかかりすぎる。サブドメインが多数存在しているため,その都度ipアドレスを登録しないといけないので,やるならiptablesなどのファイアウォールソフトで2ch.netのドメインに対してパケットを飛ばないように設定するしかない。

アクセス制限結果

  • b-r-3しばらくして確認してみると,登録フィルタのパケットの項目の数値が49と記録されていた(右画像赤丸)。apacheのログを見ると,アクセス制限を設定してから現在までの間に対象のipアドレスでのアクセスは記録がされていないのが確認できた。というわけで,ルータでのアクセス制限の設定は無事成功していることが確認できた。

-linux

執筆者:


  1. 酒井一晃 より:

    ブログ管理者様
    こちらのページ「特定のipアドレスをルータでアクセス制限する」にての解説を拝読しました事で、私のサーバーのセキュリティー管理に役立ちました。
    貴殿に御礼をお伝えしたくメールを致した次第です。

    貴殿に於かれましてはお忙しいと存じます中、本当に申し訳ありませんが、
    本ページ以外にも、セキュリティー的なノウハウがありますでしょうか。
    お教えいただきたいなどと思いました次第です。どうか、お願いしたいです。

comment

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)

関連記事

no image

linux debian にphpをインストール

cdn-project:/home/nakahira# apt-get install php5 パッケージリストを読み込んでいます… 完了 依存関係ツリーを作成しています… 完了 以下の特別 …

no image

kernel: [124263.070884] Pid: 3126, comm: mysqld Not tainted 2.6.26-1-amd64 #1

まだDebianマシンにフリーズが発生する。HDDも換えて、メモリも換えたのに。フリーズする直前のsyslogを見ると、

no image

proftpdサーバにログインできない

debianをインストール後にproftpdをapt-getでインストールした後、クライアントPCからftp接続をしてみたところログインできなかった。ユーザ名とパスワードは作成されたものを正しく入力し …

no image

debianにsambaをインストール

root@cdn-project:/# apt-get install samba 途中で選択するステップが現れるので、ネットワークのグループ名を入力して、dhcpは今のところ私の環境ではつかっていな …

no image

ECC機能付きメモリとECC機能付きではないメモリの違い

メモリには様々な規格があるが、ECC機能が有るか無いかという違いもある。メモリのECC機能とは簡単に言うとデータのエラーをチェック・修正をする機能のことで、サーバなどの稼動に信頼性が求められるマシンに …