- 更新日: 2014年7月19日
- Vagrant & Chef
Chefでdenyhostsのインストールと設定
今日もいくつか Chef の Recipe を書き進めましたが、SSH接続での不正アクセスのホスト拒否を自動的に追加するツールである denyhosts の Chef Recipe を紹介。denyhostsは、不正ログインの形跡があった場合に、/etc/hosts.deny に接続を禁止するIPアドレスを自動的に追加していきます。
不正アクセスのホスト拒否ツール denyhosts のインストールと設定 〜 CentOS6 | EasyRamble
このエントリーは、CentOS サーバー設定用 Chef Cookbook/Recipe の目次 の一部です。
denyhosts 用の Cookbook Recipe
site-cookbooks/app_denyhosts_cookbook/recipes/default.rb
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
package "denyhosts" do action :install options "--enablerepo=epel" end service "denyhosts" do supports :status => true, :restart => true, :reload => true action [ :enable , :start ] end allowed_hosts = "/var/lib/denyhosts/allowed-hosts" bash "add_allowed_hosts" do not_if "cat #{allowed_hosts} | grep '^127\.0\.0\.1'" code <<-EOC echo "127.0.0.1" >> #{allowed_hosts} EOC end |
package リソースでは、options “–enablerepo=epel” と指定することで、インストールに利用するリポジトリを設定できます。denyhosts は epel からインストールします。その後は、いつも通り chkconfig on と起動の設定。
設定ファイル /var/lib/denyhosts/allowed-hosts に常に許可するIPアドレスとして、ホスト機自身のIPアドレスである 127.0.0.1 を追加します。not_if で 127.0.0.1 が書かれていない場合にの、追加するガードを設定しています。これくらいの Recipe であれば簡単ですね。
- Vagrant & Chef の関連記事
- Vagrantで使うVirtualBoxのVM(仮想マシン)を外付けHDDに移動
- Chefで/etc/sysctl.confのkernel.panicを設定
- Chefでtelnetをインストール
- Chefでyumリポジトリを追加する設定
- Chef で iptables の設定
- ChefでSSH接続用の公開鍵をサーバーに設置
- nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
- Chef Recipe でユーザー・グループを作成
- Chef Recipe で CentOS のネットワーク・ホストを設定
- NetworkManager 他不要なパッケージを削除する Chef Recipe
Leave Your Message!