« 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

TrackBack URL for this entry:
http://app.cocolog-nifty.com/t/trackback/68055/57941252

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

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