2016/11/16(水)OpenSSLとOpenSSHのバージョンアップメモ
家のNASのOpenSSLとOpenSSHのバージョンを上げた。
2017.04.20 - 1.0.2k に更新
$ tar xf openssl-1.0.2k.tar.gz $ cd openssl-1.0.2k $ ./config --prefix=/opt/local/openssl/1.0.2k --openssldir=/etc/ssl zlib -fPIC enable-tlsext shared $ make -j $ make install $ cd /opt/local/openssl/ $ rm * $ ln -s 1.0.2k/* .
$ tar xf openssh-7.3p1.tar.gz $ cd openssh-7.3p1 $ ./configure --prefix=/opt/local/openssh/7.3p1 \\ --with-tcp-wrappers --with-md5-passwords \\ --sysconfdir=/etc/config/ssh \\ --with-zlib=/opt/local/zlib --with-ssl-dir=/opt/local/openssl \\ --without-stackprotect $ make -j $ make install $ cd /opt/local/openssh/ $ rm * $ ln -s 7.3p1/* .
最初 OpenSSHのconfigureで、 configure: error: OpenSSL version header not found. とか言われて、
config.log を見ると、 ./conftest がSegmentation fault ってた。
「……?」と思いながらも、 --without-openssl で試すと、今度は sizeof(short int) を調べようとしてセグフォ。
そんな馬鹿なと思って、自前で conftest 作ってオプションを色々試してたところ、
gcc に -fstack-protector-all と -fPIEをセットで渡すと int main() { return 0; } ですらセグフォで死ぬことがわかって、
--without-stackprotectをつけたら行けた。
gcc のバージョンもあげたら直るのかな……。
その前にNASを脱却して適当なPCにして適当なLinuxディストリ入れた方がいいよなーと思うのであった。
2016/11/12(土)https対応
今は acme.sh を使っている。 acme.sh かんたんでよい。
-- 以下は古い記事 --
1つ暗号化して通信したいサイトを作りたくなったのでSSL対応することにした。
Let's Encrypt を使うと存外簡単にできた。
認証はWindowsのクライアントから、この辺参考にしてやった。
http://calkinos.hatenablog.com/entry/2015/12/05/170829
NAS上のapacheのdocument rootをSAMBA共有しているので、
Manualにして、そこにダイレクトに書き出したら証明書が発行された。
httpd.confへの設定は手でやらねばならぬ。
コンテンツはいっしょです。
発行される証明書は3ヶ月?
上のWindowsクライアントの場合、タスクスケジューラに証明書更新のタスクが組まれるっぽいのだけど、
そのままだと、結局発行された証明書をapacheに設定してあげないとダメなので、忘れずに手でメンテしないと。。