« Raspberry Pi / Squid (User-Agent) | Main | Raspberry Pi / Vsftpd(FTPサーバー) »

Aug 06, 2013

Raspberry Pi / Nginx + SSL(オレオレ証明書)

第三者機関ではなく、自分自身のサーバー上で作成した
証明書(通称:オレオレ証明書)を使った、SSL通信環境の構築を行いました。
サーバーの組み合わせは、Nginx + SSL(OpenSSL)です。

・2013-02-09-wheezy-raspbian


--SSL通信を行うための秘密鍵、公開鍵、証明書の作成

$ sudo mkdir -p /etc/nginx/ssl

$ cd /etc/nginx/ssl

$ sudo openssl genrsa -out server.key 2048 #秘密鍵の作成
$ sudo openssl req -new -key server.key -out server.csr #公開鍵の作成
$ sudo openssl rsa -in server.key -out server.key
$ sudo openssl x509 -req -days
3650 -in server.csr -signkey server.key -out server.crt  #証明書の作成
---
1.秘密鍵の作成
2.公開鍵の作成
3.パスフレーズなしにする
4.証明書作成(3650:有効期間(日))

秘密鍵(server.key)
公開鍵(server.csr)
証明書(server.crt)

--$ sudo openssl req -new -key server.key -out server.csr 応答例)
Country Name (2 letter code) [AU]:JP
State or Province Name (full name) [Some-State]:Tokyo
Locality Name (eg, city) []:Katsushika-ku
Organization Name (eg, company) [Internet Widgits Pty Ltd]:RP
Organizational Unit Name (eg, section) []:IT
Common Name (e.g. server FQDN or YOUR name) []:RP.naonao.com
Email Address []:hoge_hoge@gmail.com

Please enter the following 'extra' attributes
to be sent with your certificate request
A challenge password []:PASSWD
An optional company name []:PASSWD
----


--Nginxの設定を変更する

$ sudo vi /etc/nginx/sites-available/default
----
server {

    listen 80;
    listen 443 ssl;

    server_name localhost;

## SSL対応
    ## ssl on; <-全てのポートでSSL通信にする場合

    ssl_certificate /etc/nginx/ssl/server.crt; ##証明書   
    ssl_certificate_key /etc/nginx/ssl/server.key;
  ##秘密鍵

    root /home/pi/www;
    index index.html index.htm;

    location / {
            try_files $uri $uri/ /index.html;
    }

    location /doc/ {
                alias /usr/share/doc/;
                autoindex on;
                allow 127.0.0.1;
                allow ::1;
                deny all;
     }
}
----

--Nginxを再起動する
$ sudo service nginx restart
もしくは
$ sudo /etc/init.d/nginx restart

Webブラウザより、https://hoge-server.com/ などとアクセスすると、
接続の安全性を確認できません」(Firefoxの場合)と表示されます。

「危険性を理解した上で接続するには」 -> 例外を追加
セキュリティ例外を承認”ボタンを押す。

簡易的ですが、通信が暗号化(SSL通信)が可能になりました。


過去記事

--Raspberry Pi / Nginx(Web Server)

--Raspberry Pi / BASIC認証(Nginxに導入)

--Apache 2.2 SSL通信設定

--WebDAV over SSL

--玄箱 mod_ssl (1)


参考ページ
http://rails.soracid.com/120
http://nginx.org/ja/docs/http/configuring_https_servers.html
http://d.hatena.ne.jp/ria10/20130612/1371037762
http://tkuchiki.hatenablog.com/entry/2013/04/09/131326

ブログランキング にほんブログ村 IT技術ブログへ

おいしい天然水.com

|

« Raspberry Pi / Squid (User-Agent) | Main | Raspberry Pi / Vsftpd(FTPサーバー) »

Linux」カテゴリの記事

Raspberry Pi」カテゴリの記事

Comments

Post a comment



(Not displayed with comment.)


Comments are moderated, and will not appear on this weblog until the author has approved them.



TrackBack


Listed below are links to weblogs that reference Raspberry Pi / Nginx + SSL(オレオレ証明書):

« Raspberry Pi / Squid (User-Agent) | Main | Raspberry Pi / Vsftpd(FTPサーバー) »