The Basic Auth

htpasswd -b /basic/auth/only 403 Forbidden; AuthName 8時だぞ!

こんにちわ。昨日飲み過ぎたonagataniです。こんにちわ。 さて、今日は12月23日ということでMT AdventCalenderの23日目です。 昨年に【コマンド一発】AnsibleでPSGI-MTサーバをAWSに構築する こんな記事を書いた直後くらいにIZANAMIというプロジェクトを開始しまーす。といった割に何も進んでなくて今年のAdventCalenderに合わせて無理やりコミットしました。 そもそもIZANAMIとはなんぞやってことなんですが、MTのローカル環境構築〜本番サーバの管理までAmazonLinuxもしくはCentOSなら対応できますよ的なツールを目指しています。 ですが、すいませんテストが間に合ってません。なので途中経過の報告エントリーになります。 https://github.com/izanami-team/IZANAMI
前回のAnsibleからの差分は以下
  1. 実行環境はAnsible2.0以上
  2. バックアップなどは組み込みから外した
  3. ApacheとNginxから選択できるようにした
  4. Apacheは2.4にアップデート
  5. MySQLは5.7にアップデート
  6. PHPは7にアップデート
  7. 対象OSにCentOS6と7を追加
  8. Vagrantへの対応
VagrantはMacのみですが、vagrant upで立ち上がります。
使用方法
基本的には前回の記事を参考にすると良いですが、かんたんに説明します ※以下の設定はvagrantでは必要ありません
  1. hostsファイルにプロビジョニング先のサーバホスト名を記載する
  2. host_vars/192.168.33.99.ymlをコピーし、ファイル名をプロビジョニング先サーバホスト名にする
  3. コマンドを実行する
コマンドは以下です。 ansible-playbook -s -i hosts site.yml -u SSHユーザ名 -l プロビジョニング先サーバホスト名 --private-key=SSH鍵ファイル指定 --extra-vars "mysql_root_password=mysqlに設定するルートパスワード(任意)"
基本設定
host_vars/サーバ名.ymlファイル内の設定値で行います。

server_hostname:  "movabletype.local" #サーバのホスト名になります
root_email: "youremail@example.com" #logwatchなどのメールが送信されます
letsencrypt: False #Let's Encrtyptを利用する場合はTrue
denyhosts: True # SSHのブルートフォースアタック対策を入れる場合はTrue
php: True #Apacheでダイナミックパブリッシングを利用する場合はTrue
nginx: False #Nginxを利用する場合はTrue
apache: True #apacheを利用する場合はTrue、NginxとApacheを同時に利用する事はできません
mt:
  file: MT-6.3.2.zip #MTのzipファイルをroles/movabletype/files/以下に設置してください
  ver: MT-6.3.2
  psgi: True # CGIでの実行も可能ですがPSGIをおすすめします
  config: # mt-configで設定変更する場合はいかに列挙してください
    - {name: 'AdminScript', value: 'mt.cgi'}
  plugins: #プラグインを利用する場合は列挙してください
    - PageBute
    - PSGIRestart
  db:
    name: movabletype
    user: movabletype
    passwd: '@Mt6password'
    server: localhost
  basic: #MTへBasic認証をかける場合はユーザ名とパスワードを指定してください。
    user: username
    passwd: password
vhosts: # Virtualhostを利用する分だけ列挙してください
  - name: movabletype.local
    letsencrypt: False #Trueにすると自動でSSL証明書を取得&設定します。vhost.nameのドメイン名がAレコードで引けている事
    ssl_only: False # 80番ポートへのアクセスをすべて443ポートに転送します
    email: youremail@example.com # letsencryptへの登録用Emailアドレス
wheel_users: #sudo可能なユーザを登録します
  - { name: test,       password: "test"}
ssh_users: #sshユーザを登録します
  - { name: test,       password: "test"}
sftp_users: #SFTP専用ユーザを登録します
  - { name: test,       password: "test"}
まとめ
いかがでしたでしょうか。もう少しで完成しますのでできた際には再度エントリーを更新したいと思いますが、今回のアップデートでvagrantとcentosへの対応を進めたのでAWS以外での開発・本番環境の構築にも使えるようになると思います。台数が増えてもhostsファイルへの追記とhost_vars/ファイルでの設定さえ行えばすぐにサーバを公開できて楽ですよ。
このエントリーをはてなブックマークに追加 mixiチェック Share on Tumblr Clip to Evernote

コメント

コメントフォーム
評価する
  • 1
  • 2
  • 3
  • 4
  • 5
  • リセット
  • 1
  • 2
  • 3
  • 4
  • 5
  • リセット

トラックバック