Encryptのサポートが始まり、ここに書いた内容は古くなった。ふぁんくらぶに改訂記事を書いたのでそちらを参考にしてほしい。以前、うちのサーバでも共有SSLを試したことがある。共有SSLなので、『https://○○.sakura.ad.jp/アカウント名/XXX』的なアドレスになって、独自ドメインそのものではSSLできなかった。その出口だけ専用に.htaccess書いたり、そもそも共有SSLに脆弱性が見つかって一時的に運用停まったり、とあまり良いものではなかった。今は独自ドメインで簡単にSSLが使える(しかも証明書維持も無料に出来るようになった)、と言うのでので試してみた。Encryptによるサーバ証明書は無料で使えるものの、90日の期限があり、更新作業が結構煩雑(root権限を要求するので『さくらのレンタルサーバ』上で自動的に更新できない)ので、さくらのレンタルサーバで使うにはあくまで一時的な実験向けと感じた。SSLサーバー証明書ならさくらインターネットを使ってラピッドSSLを活用すればいい。ラピッドSSLなら3年払いで3,200円+taxなのでそれほどの負担感はないはずだ。さくらのレンタルサーバではなくさくらのVPSを使えばいい。Encryptの更新もcrontabで自動化できるらしいし、維持費的にもさくらのレンタルサーバ+さくらのSSLのコストがさくらのVPSの安いプランとほとんど大差ないからだ。Encryptの導入手順は公式によくまとまっている。-auto」コマンドが発行できず、証明書を作成することができない。そこで、別の環境で証明書を作ってコピーしてくる手順が必要になる。自分のPCの中に仮想環境を作ってもいいが、今回はさくらのVPSのお試し期間を使い、証明書を作ってみた。無料お試し実施中からVPSをお試しすればよい。本契約をするつもりはなく、作業的にも大して負荷のかかる作業をするわけでもないので一番安いプランでよい。申し込みが完了したらOSをインストール。ここから何故かSSH含めたコンソール接続できるようになるまでやたら待つ必要がある。以前は数分も待たされなかった気がするのだが、今はインストール後すぐにTTSSH接続すると『ホストに接続できません』だの『接続が拒否されました』だののメッセージが出て接続が切断されてしまう。そこで次のさくらのレンタルサーバ側の手続きをしながら気長に待つ(TTSSH接続できるようになるまで、だいたい30分はかかるようだ)。さくらのレンタルサーバでSSL用ドメインの用意まず、さくらのVPSの作業を本格的に始める前に、さくらのレンタルサーバ側でSSL用ドメインの登録を行う。登録したドメインがDNS浸透するまで数時間かかるからだ。今回は、ssl.chatarou.netと言うサブドメインをSSL向けに割り振ってみた。実験なので、ssl.chatarou.netで表示する内容はwww.chatarou.netと同じ(もちろん別にすることも出来る)。コントロールパネルに入り、【ドメイン設定】→【新しいドメインの追加】と進む。今回はchatarou.netにサブドメインを追加する。ドメイン名『ssl』を追加。マルチドメインの対象のフォルダをご指定くださいフォルダパスを指定する。今回はテストなので「www.chatarou.net」と同じパスを指定しているが、ここに違うパスを入れれば当然別サイトとして運営も可能。SSLを利用しない」を選ぶ。現時点ではSSL証明書が出来上がっていないので利用登録が出来ないので。『ssl.chatarou.net』が追加されたことを確認。この状態で放置しておけば、大まかに2時間程度でDNS浸透して使えるようになる。次にさくらのVPSの方に移って作業を進めていく。以下しばらくはさくらのVPSでの作業。サーバの初期設定ガイド|さくらインターネット公式サポートサイトに従って作業を進めていく。一時的に使うだけなので、3.sudoの設定と4.SSHの設定は必ずしもやらなくてもいい。※3.sudoの設定について現時点(2016.02.09)では上記のガイドに不備があるのか、書かれている通りにやってもSSHでsudoは使えないようだ。なんでか%wheelを一般ユーザに追加してもsudo実行できないので、一般ユーザ名を直接visudoで書いた方がよさそう。上記のさくらのVPS公式の初期設定、6.iptablesの設定を参考にしながらやる。さくらのVPS公式設定に加えて、あらかじめSSH、ftp、http、のポートを開けておく。Encryptを実行させるためのサーバでしかないので、httpsを開けておく必要はない。以下の通りコマンドを打ち込んで、設定を書き込んでいく。最後のセーブを忘れると設定が消えるのでちゃんと最後まで書くこと。/etc/sysconfig/iptables</code>を叩いてiptablesを直接編集してもよい。viのかんたんな使い方はviエディタの使い方を参照。出来上がった証明書を持ってくるのに必要なので構築する。初心者プログラマー奮闘記を参考にした。vsftpd</code>まずvsftpdをインストール。↓ls_recurse_enable=YES#-----ファイルの最後に設定を追加-----#/etc/vsftpd/user_listのユーザーだけを許可userlist_enable=YESuserlist_deny=NOuserlist_file=/etc/vsftpd/user_list#タイムスタンプ時間をローカル時間にするuse_localtime=YES#ユーザーの初期アクセスディレクトリ#ここに書いたディレクトリが最初に開く。#local_rootを書かないとホームディレクトリlocal_root=/var/www/html#ユーザのホームディレクトリより、上位のディレクトリへの移動を不許可にchroot_local_user=YES#設定を簡単にするためにPASVのポート範囲を限定pasv_min_port=50000pasv_max_port=50030</code>次にftp用のユーザを設定。/etc/vsftpd/user_list</code>別にftp専用ユーザを作る必要もないので、さくらのVPS初期設定で作った一般ユーザを一行追記。/etc/vsftpd/ftpusers</code>でftpアクセスが禁止されている(/etc/vsftpd/user_listに最初から書かれてるユーザの殆どもそう)なのでrootでftpは出来ないものと考えたほうがいい。/etc/vsftpd/chroot_list</code>さくらのVPS初期設定で作った一般ユーザを一行追記。最後はvsftpdの自動起動設定を書いて、vsftpdデーモンの再起動。設定マニュアルを参考にした。configtest</code>httpd.confの書き換えは省略。最後はhttpdの自動起動設定を書いて、httpdデーモンの再起動。ねころくぶろぐあたりを参考にした。Encryptの証明書発行コマンドが完了して、さくらのVPSに証明書ファイルが出来上がる。↓さくらのVPSの証明書ファイルをローカルにダウンロードする。ssl.chatarou.net</code>最後のコマンドの独自ドメインは自分のサイトのを指定しましょう。こんな風にTTSSH上でTUI(テキストユーザインタフェース)の画面が走る。メールアドレスを登録して、OKでどんどん作業を進めていく。root):</code>メッセージの下のコードを実行する。言ってもそこのコードは/tmp/以下にファイルを作っちゃうので、さくらのレンタルサーバ向けにコマンドのパスは若干修正を行う必要がある。さくらのVPSのTTSSH画面は開いたまま放置しつつ、新しくTTSSHを立ち上げてさくらのレンタルサーバにSSHログインして以下の作業を行う。コントロールパネルから指定した場所)2行目は公開ルートパスの下にSSH認証用のフォルダを作るコマンド3行目の書き込む『謎の文字列』は毎回違うので、さくらのVPSのTTSSH画面のコマンドをちゃんとコピペする事。最後にさくらのVPSのTTSSH画面でエンターを押せば認証が完成して証明書が出来る。さくらのVPSのサーバからftpでローカルに落としてくる。ファイルは/etc/letsencrypt/live/ssl.chatarou.net/にあるのだけど、そのディレクトリにはftpアクセスできないので一旦SSHでtmpにファイルを移動させてから落とす。/tmp/</code>これで/tmp/にFFFTPなどでアクセスして上記ファイルをダウンロードしてくる。コントロールパネルに入り、【ドメイン設定】へ進む。ssl.chatarou.netの証明書の追加を行う。秘密鍵のアップロード。さっき落としてきたprivkey.pemを登録し、アップロードする。次に証明書をインストールする。コントロールパネルのテキスト欄に、cert.pem(中身はテキストファイル)の中身をまるっとコピペするだけでいい。KEY-----</code>の文字列もちゃんとコピペする事。KEYの後ろに余計な改行はたぶんない方がいいと思う。証明書が登録され、内容が表示される。引き続いて中間証明書のインストールに入る。今度は、chain.pem(中身はテキストファイル)の中身をまるっとコピペする。fullchain.pemはcert.pemとchain.pemの両方が書いてあるだけのファイルで、最初の証明書インストールにこっちを使えば一気に中間証明書までインストールできるはず...なのだがうまくいかなかったのでうちでは使わなかった。引き続いてドメイン設定へ。SSLを利用する」が選べるようになっているのでこれを選ぶ。登録が終わってもこの画面が出るときは、1、2時間程度待ってみる。2時間待ってもこの画面の時は途中の作業を間違っている可能性が高い(特にSSL証明書の登録内容を間違えている可能性が高い)のでやり直す。僕はDNSの浸透に時間がかかっているのかと思って12時間放置してもダメだったが、もう一度やり直したらやり直した後は3分で繋がるようになった。SSL接続できるようになった後の画面。画面がおかしいのは、wordpressの設定上このサイトはwww.chatarou.netで見せるようになっており、cssなどへのパスがwww.chatarou.net経由でソースに書き込まれているため(つまりcssのないページ表示になっている)。www.chatarou.net</code>等のようにwww.chatarou.netも含む形でコマンド発行すればいいかと思う。badgeでiframe使ってるからエラーメッセージはきそうではあるけど。Windows10とか考えた。