The Basic Auth

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

こんにちわ。昨日飲み過ぎたonagataniです。こんにちわ。 さて、今日は12月23日ということでMT AdventCalenderの23日目です。
この記事は情報が古くなっています。githubで最新のドキュメントを公開していますので以下のリンク先をご覧下さい。 https://github.com/izanami-team/IZANAMI/blob/master/README.ja.md
昨年に【コマンド一発】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チェック

コメント

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