制作部の里山です。
弊社もクラウドの波に乗るべく、
案件で使っているRedmineをAWSに乗っけようとしているのですが、
取り敢えずサーバーを立てるところまで完了しました。
【前提環境】
Amazon Linux AMI
Nginx 1.6
MySQL 5.5
httpを強制https化
という部分の環境構築まで完了したので、
メモを兼ねてブログに乗っけようと思います。
以下、AWSから適当なスペックのEC2インスタンスを立ち上げ終わっているものとして記載。
【お約束】
# yum update
【RedmineJPの案内に従い色々インストール】
# yum -y groupinstall "Development Tools" # yum -y install openssl-devel readline-devel zlib-devel curl-devel libyaml-devel # yum -y install ImageMagick ImageMagick-devel ipa-pgothic-fonts
【Ruby関係】
※任意のディレクトリに移動しておく※
■Rubyのインストール
# curl -O http://cache.ruby-lang.org/pub/ruby/2.1/ruby-2.1.5.tar.gz # tar xvf ruby-2.1.5.tar.gz # cd ruby-2.1.5 # ./configure --disable-install-doc # make # make install
【MySQLの設定】
■MySQLのインストールと実行&初期起動の設定
# yum install mysql-server # sudo service mysqld start # chkconfig mysqld on
■MySQLのキャラセット調整と初期設定コマンド実行
# vi /etc/my.cnf ----------------------------- [mysqld] character-set-server=utf8 [mysql] default-character-set=utf8 # mysql_secure_installation -----------------------------
【nginxの設定&自己証明書の作成と設定】
■nginxのインストールと実行&初期起動の設定
# yum install nginx # sudo service nginx start # chkconfig nginx on
■自己証明書の発行
※任意のディレクトリに移動しておく※
# openssl genrsa -des3 -out server.key 2048 # openssl req -new -key server.key -out server.csr # cp server.key server.key.org # openssl rsa -in server.key.org -out server.key # openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.crt
■nginxののconfig設定(/etc/nginx/nginx.conf)
# vi nginx.conf ----------------------------- (省略) server { listen 80; server_name localhost; #root /projects/htdocs; #add to https redirect return 301 https://$host$request_uri; ※httpでアクセスされたらhttpsへのリダイレクト (省略) server { listen 443; server_name localhost; root /projects/htdocs; ※ログの出力先を設定 ssl on; ssl_certificate /etc/nginx/cert/server.crt; ※SSL証明書のパスを設定 ssl_certificate_key /etc/nginx/cert/server.key; ※SSL証明書のパスを設定 ssl_session_timeout 5m; ssl_protocols SSLv2 SSLv3 TLSv1; ssl_ciphers HIGH:!aNULL:!MD5; ssl_prefer_server_ciphers on; location / { } } (省略) -----------------------------
という感じに設定しておき、適当なファイルをドキュメントルートに配置しておけば、
httpでもhttpsでも、強制的にhttpsでアクセスできるようになります。
次回はRedmineのインストールとかUnicornの設定など。
では。