3回くらい仮想マシンを作っては消し、作っては消し、、、した。
一応パッケージの更新
sshは構築時の設定でパスワードか公開鍵でアクセス出来るようになる。rootにはsudoでなれた。(パスワードなし)Ubuntuなのでaptが使える(Ubuntuと明言されてない3.xが使える方も使えた気がするけれど忘れた)
$ sudo apt-get update $ sudo apt-get upgrade $ sudo apt-get dist-update $ sudo reboot
一応kernel更新したらやっとく
$ sudo apt-get autoremove
不安なら残しまそう、、、
独自ドメインとサブドメインの運用
(※)あとから書いてるのですべてが正しい保証はありません
バーチャルホストを利用する設定になってないので、設定を直す
$ sudo vi /opt/bitnami/apache2/conf/bitnami/bitnami-apps-vhosts.conf
で
Include "/opt/bitnami/apps/redmine/conf/httpd-vhosts.conf"
を書き足す。書き足したら↑のhttpd-vhosts.confをいじる。
<VirtualHost *:80> ServerName hogehoge.com <ifModule mod_rewrite.c> RewriteEngine On LogLevel alert rewrite:trace3 RewriteCond %{HTTPS} off RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R,L] </ifModule> </VirtualHost> <VirtualHost *:443> ServerName hogehoge.com DocumentRoot "/opt/bitnami/apps/redmine/htdocs/public" <Directory "/opt/bitnami/apps/redmine/htdocs/public"> PassengerEnabled on Options -MultiViews Options FollowSymLinks AllowOverride All <IfVersion < 2.3 > Order allow,deny Allow from all </IfVersion> <IfVersion >= 2.3> Require all granted </IfVersion> RackBaseUri "/opt/bitnami/apps/redmine/htdocs/public" PassengerAppRoot "/opt/bitnami/apps/redmine/htdocs" <IfModule pagespeed_module> ModPagespeedDisallow "*" </IfModule> </Directory> PassengerPreStart http://127.0.0.1:80 SSLEngine on SSLCertificateFile "/opt/bitnami/apps/redmine/conf/certs/server.crt" SSLCertificateKeyFile "/opt/bitnami/apps/redmine/conf/certs/server.key" Include "/opt/bitnami/apps/redmine/conf/httpd-app.conf" </VirtualHost>
HTTPへのアクセスはHTTPSにリダイレクトさせる設定にする。サブドメイン運用にするのにSetEnv RAILS_RELATIVE_URL_ROOT "/redmine"が邪魔をしていて、"/"にすると、cssとかの参照に失敗するのか画面が崩れる。RackBaseUriを入れて上げてSetEnv RAILS_RELATIVE_URL_ROOT "/redmine"を消したらなんとなくうまく行った模様。いいのかドウかは不明、、、
このままだと証明書がオレオレでブラウザが警告を出すので証明書をちゃんと取る。
オレオレSSL証明書からの脱却
StartSSLで取ろうとしたものの何かうまく行かなくて、id:TNarutoさんがつぶやいてるのを見て知ったLet's Encryptで取りなおした。
standaloneしたあとで再度 webpathしようとしたせいか上手く行かなかったのでstandaloneで作りなおした物のほぼ参照先URL様の内容どおりで出来た、ハズ。git cloneして落としたディレクトリ内で
./letsencrypt-auto certonly --standalone -d hogehoge.com
/etc/letsencrypt/live/hogehoge.com/ 配下にファイルが生成されるので、httpd-vhost.confの該当箇所を↓のように直す。
SSLCertificateFile "/etc/letsencrypt/live/hogehoge.com/fullchain.pem" SSLCertificateKeyFile "/etc/letsencrypt/live/hogehoge.com/privkey.pem"
apache再起動
$ sudo /opt/bitnami/ctlscript.sh restart apache
実はこれが一番のハメじゃ無いかと思う。serviceもsystemctlも違った。(当然ながら/etc/init.d/xxxも)
ちなみに、デフォルトで何故かvsftpdが起動していて落としたいのに落とし方がわからないのでufwで21ポートをcloseしてやり過ごしている(のを今思い出した)
普通のUbuntuに慣れているとこのbitnamiさんがとてもワケワカメなきがする、、、、
*1:ぶっちゃけドウでも良かったけれど