LoginSignup
3
4

More than 3 years have passed since last update.

インターネット公開サーバのセキュリティ設定、サービスでアクセス元IPアドレスを制限

Last updated at Posted at 2019-06-09

色々なサービスでアクセス元IPアドレスを制限する方法
firewalldで制限

セキュリティ対策として、

  • 不要な、プロセスを起動しない
  • 不要な、ポートを閉塞する
  • 許可するアクセス元を制限する

などを求められている。
アクセス元制限の解決策は

  • 専用のファイヤウォールを導入する
  • NW機器のACLで制限する
  • OSで制限する
    • /etc/hosts.allow,/etc/hosts.denyで制限
    • firewalld,iptableでサービス毎に制限
    • サービス自体で制限

などあるが、影響範囲を限定するには「サービス自体で制限」が最も望ましいと考える。サービス毎にこの具体例を例示する。

firewalld,iptableでサービス毎に制限も可能であるが、設定が煩雑(自分がよく理解できていないだけ、でもある)なので、サービスごとの設定ファイルに書く。

sshd

man of sshd_config

sshd_configに、AllowUsers,DenyUsers,AllogGroups,DenyGroupdを指定
指定の参照順は[DenyUsers 、AllowUsers 、DenyGroups 、AllowGroups ]

全てのユーザのアクセス元を限定

/etc/ssh/sshd_config
AllowUsers *@www.xxx.yyy.zzz/nnn

ユーザ毎に指定

/etc/ssh/sshd_config
AllowUsers  user1                  # 全てのアドレスから
AllowUsers  user2@192.168.0.0/16   # 192.168.0.0/16 から許可
AllowUsers  user3@192.168.0.99     # 192.168.0.99 からのみ許可

httpd

参考

ホワイトリスト方式

ホワイトリスト方式で、次のように書く

  • Order Allow,Deny
  • Allow from xxx
  • Deny from all

サイト(ディレクトリ)毎に指定

サイトのconfに書くか、レンタルサーバなどでconfに書けないなら、[ .htaccess ]が利用可能なら、それに書く

/etc/httpd/conf.d/xxxx.conf
<Directory "/directory/to/path">
    Order           allow,deny
    Allow from      wwww.xxxx.yyyy.zzz/nnn
    Deny  from      all
</Directory>

dns

参考

ホワイトリスト方式

ホワイトリスト方式で、次のように書く

  • allow-queryで許可するIPアドレスを指定する
  • allow-queryは、optionに書けば全体、zoneに書けばそのゾーンだけに有効
  • blackholeで接続そのものを拒否できる。optionのみ指定可能
/etc/named.conf
option {
    allow-query     { 192.168.0.0/16; 127.0.0.1; };
    ....
}
3
4
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
4