さくらのレンタルサーバの威力
前エントリにあるように、さくらのレンタルサーバを借りた。
なぜさくらを選んだか:
その案件の仕様として、独自SSLを使いたかったのだけども、
さくらのレンタルサーバ スタンダード(月額515円)、
の組み合わせにすると、メチャ安かったからだ。(しかもSSLの無料キャンペーン期間もある)
なんでこんなに安いかというと、
固定IPアドレスの費用だろう。
独自SSLというと、どうしても固定IPが必須になるイメージがあるが、
さくらのレンサバ スタンダードだと、固定IPではない。
SNI SSLという、ドメイン名ベースでサーバを認識できる技術を使っているってことで、
固定IPでなくても独自SSLが使えるってわけだ。
さくらがこういう技術を研究しているからこそ、
コストダウンの提供につながるってわけだな。これはコスパ高すぎ。
WordPress さくらのレンタルサーバ
仕事でWordPressを使うことがあった。
他のサーバに置いてあるものを、さくらインターネットの
スタンダードプランに移行した。
前のサーバで、DuplicatorがPHPバージョンで蹴られて使えなかったので、
FTPでまるごと移行方式。
結論。
WordPressのインストールといっても、
単にファイルのコピー、データベースへの情報登録のようだ。
だから移行ツールでなくても行ける。
Action myphp-script /php.cgi
AddHandler myphp-script .php .html
とする。[さくらインターネット html php] あたりで検索すると出てくる。
さらに、
前のサーバで
/ルートディレクトリ/html/wp-admin/
という構成だったので、それにあわせた方が分かりやすいかと思ったので
そのように対応。
[wordpress インストール ディレクトリ]あたりで検索。
[大事な情報]
wp-configでサーバ情報修正、
データベースのwp_optionsのsiteurl修正、
このへんの
http://www.nishi2002.com/4718.html
.htaccessの、IfModule mod_rewrite.c
まわりの修正、
index.phpのwp-blog-header.php修正。
管理画面での[設定]からのurl修正。
ORCAネタ
症状:
某リ○ープリンタで、Ubuntu14.04でapt-get dist-upgrade
すると、印刷できない。
以前から某キャ○ンプリンタでも、
「印刷できない」レベルの不具合が出ているが、
こちらのメーカーでもこの有り様。
サポートから延々と、
「こうしたらどうですか」と、コマンドが返信されているが、
医療ソフトとして、本当にこれでいいのだろうか。
どこぞの院長先生が、印刷がでない、と大騒ぎして時間を潰すことが、
本当に医療のためになるのだろうか。
ORCAは無償で提供されているが、
そもそも無償である必要があるのか?
やはり、使用者から月額1000円でも集めた方がいいんじゃないだろうか。
そのお金で、サポートや開発費用に当てた方がいいんじゃなかろうか。
ネットワーク勉強15 メモ的エントリ
とりあえず、今まで勉強したヤマハRTX1000の設定をメモ。
ip route default gateway 192.168.11.1
ip lan1 address 172.16.1.1/24
ip lan1 secure filter in 9999
ip lan1 secure filter out 9999
ip lan2 address 192.168.11.120/24
ip lan2 secure filter in 9999
ip lan2 secure filter out 9999
ip lan2 nat descriptor 1
ip filter 1000 reject * 192.168.11.25 tcp * 12345
ip filter 9999 pass * * * * *
nat descriptor type 1 masquerade
nat descriptor address outer 1 192.168.11.130
nat descriptor address inner 1 172.16.1.2
nat descriptor masquerade static 1 1 172.16.1.2 tcp www
syslog host 192.168.11.25
syslog notice on
tftp host any
dhcp service server
dhcp scope 1 172.16.1.2-172.16.1.5/24
dns service recursive
dns server 192.168.11.1
ネットワーク勉強14 Nginxでクライアント認証
表題どおり。
とりあえずここを参考にさせてもらった。
まず、CAの構築。
Ubuntu は、
/usr/lib/ssl/misc/CA.sh -newca
でいいらしい。
国名は"JP"を入力、他はすべて"hoge"を入れた。
writing new private key to './demoCA/private/./cakey.pem'
と出て、
Write out database with 1 new entries
Data Base Updated
とでた。OKだと思う。
/root/demoCA
に、各種ファイルができている。
.certと.keyが大事なファイル。
ここまでで、認証局が構築できた。
-
-
-
- -
-
-
サーバ用の公開鍵・秘密鍵を作成。
場所は
/usr/local/ssl/server
にしてみよう。
秘密鍵:
openssl genrsa -out /usr/local/ssl/server/server.key 2048
公開鍵:
csrは、sha-2にしてみた。
openssl req -new -sha256 -key /usr/local/ssl/server/server.key -out /usr/local/ssl/server/server.csr
国名は"JP",あとはすべて"fuga"を入れた。
これでサーバ側はOK.
-
-
-
- -
-
-
CAとしての署名。サーバのCSRに対して、CAの秘密鍵で署名。
openssl ca -in /usr/local/ssl/server/server.csr -out /usr/local/ssl/server/server.crt -keyfile /root/demoCA/private/cakey.pem
してみると、
The stateOrProvinceName field needed to be the same in the~
のエラーがでる。
これは、CA側とサーバ側のstateOrProvinceNameが一致していないと
いけない、というエラーらしい。
参考:
http://hack.aipo.com/archives/319/
これを無視するオプションをつける。
openssl ca -policy policy_anything -in /usr/local/ssl/server/server.csr -out /usr/local/ssl/server/server.crt -keyfile /root/demoCA/private/cakey.pem
これでサーバの証明書(=サーバの公開鍵にCAがデジタル署名をする)ができた。
ここで復習:
デジタル署名とは、平文を署名者の秘密鍵で暗号化すること。復号化は署名者の公開鍵で行う。
つまり、公開鍵暗号とは逆の概念だ。
-
-
-
- -
-
-
クライアントの公開鍵・秘密鍵の作成
openssl genrsa -out /usr/local/ssl/client/client.key 2048
openssl req -new -sha256 -key /usr/local/ssl/client/client.key -out /usr/local/ssl/client/client.csr
国名は"JP"、その他は"foo"、パスワードは適当なものを入れた。
同様にCAとして署名。
openssl ca -policy policy_anything -cert /root/demoCA/cacert.pem -keyfile /root/demoCA/private/cakey.pem -in /usr/local/ssl/client/client.csr -out /usr/local/ssl/client/client.crt
pksc12形式へ変換:(たぶんサイトは誤植.pkcs12が正解では?)
openssl pkcs12 -export -clcerts -inkey /usr/local/ssl/client/client.key -in /usr/local/ssl/client/client.crt -out /usr/local/ssl/client/client.p12
ここまでで、SSL関係の準備はOK.
-
-
- -
-
nginxは、普通にapt-getでインストールしておいた。
htmlへのパスは
/usr/share/nginx/html
だ。
nginx.confはこんな感じ。
user www-data; worker_processes 4; pid /run/nginx.pid; events { worker_connections 768; # multi_accept on; } http { ## # Basic Settings ## sendfile on; tcp_nopush on; tcp_nodelay on; keepalive_timeout 65; types_hash_max_size 2048; # server_tokens off; # server_names_hash_bucket_size 64; # server_name_in_redirect off; include /etc/nginx/mime.types; default_type application/octet-stream; ## # Logging Settings ## access_log /var/log/nginx/access.log; error_log /var/log/nginx/error.log; ## # Gzip Settings ## gzip on; gzip_disable "msie6"; # gzip_vary on; # gzip_proxied any; # gzip_comp_level 6; # gzip_buffers 16 8k; # gzip_http_version 1.1; # gzip_types text/plain text/css application/json application/x-javascript text/xml application/xml application/xml+rss text/javascript; ## # nginx-naxsi config ## # Uncomment it if you installed nginx-naxsi ## #include /etc/nginx/naxsi_core.rules; ## # nginx-passenger config ## # Uncomment it if you installed nginx-passenger ## #passenger_root /usr; #passenger_ruby /usr/bin/ruby; ## # Virtual Host Configs ## server { listen 443 ssl default_server; server_name hoge.com; ssl_certificate /usr/local/ssl/server/server.crt; ssl_certificate_key /usr/local/ssl/server/server.key; ssl_session_cache shared:SSL:1m; ssl_session_timeout 5m; ssl_ciphers HIGH:!aNULL:!MD5; ssl_prefer_server_ciphers on; ssl_client_certificate /root/demoCA/cacert.pem; ssl_verify_client on; ssl_verify_depth 1; location / { root html; index index.html index.htm; } } include /etc/nginx/conf.d/*.conf; include /etc/nginx/sites-enabled/*; }
シンタックスのチェックは
nginx -t -c /etc/nginx/nginx.conf
んで
/etc/init.d/nginx restart
してみると...起動しない。
error_logみると、
98: Address already in use だと。。。
ここをチェック。
今回の場合、aolserver っていうプロセスが80ポートをつかんでいたようなので
(これは何なの?)
kill [PID] して、
/etc/init.d/nginx restart
すると、無事動いた(^^)
lsof -i:443
すると、やっぱり動いてるよ(^^)
あとは.p12ファイルをクライアントPC(Windows)にコピーして、
ダブルクリックでインポートされる。
ブラウザには、注意書きが表示されるが、無事httpsでアクセスできた!