「インストール - Redmine」の版間の差分

ナビゲーションに移動 検索に移動
289行目: 289行目:
     location = /50x.html {
     location = /50x.html {
         root  html;
         root  html;
    }
}
</syntaxhighlight>
<br>
==== httpsの使用 ====
自己証明書を作成する。<br>
* 秘密鍵の作成(パスフレーズなし)
*: ファイル名: server.key
*: <code>openssl genrsa -out server.key 2048</code>
*: <br>
* 証明書署名要求(CSR: Certificate Signing Request)の作成
*: ファイル名: server.csr
*: <code>openssl req -utf8 -new -key server.key -out server.csr</code>
*: 以下に示す項目を入力する。
*: <br>
*: Country Name (2 letter code) [XX]:                      <--- 国(日本ならJP)
*: State or Province Name (full name) []:                  <--- 県
*: Locality Name (eg, city) [Default City]:                <--- 市
*: Organization Name (eg, company) [Default Company Ltd]:  <--- 会社・組織
*: Organizational Unit Name (eg, section) []:              <--- 部門(未入力可)
*: Common Name (eg, your name or your server's hostname) []:alfa.torutk.com    <--- サーバードメイン名(未入力可)
*: Email Address []:                                                          <--- 管理者メール(未入力可)
*:
*: Please enter the following 'extra' attributes to be sent with your certificate request
*: A challenge password []:                  <-- (未入力可)
*: An optional company name []:              <-- (未入力可)
*: <br>
* ubject Alternative Name(SAN)情報の作成
*: ファイル名: san.txt
*: まず、最近のWebブラウザでは、Subject Alternative Name(SAN)を含めないとアクセスができないため、SAN情報をテキストファイルに記述する。
*: また、ワイルドカードを使用して、複数のホスト名に対応させることもできる。
*: <code>vi san.txt</code>
*: <br>
*: <code># san.txtファイル</code>
*: <code>subjectAltName = DNS:*.torutk.com</code>
*: <br>
* 自己署名証明書の作成
*: ファイル名: server.crt
*: <code>openssl x509 -in server.csr -out server.crt -extfile san.txt -req -signkey server.key -days 3650</code>
<br>
上記で作成した秘密鍵と自己署名証明書を、任意の場所に配置する。<br>
* server.key
* server.crt
<br>
Nginx設定ファイルの作成または編集する。<br>
vi nginx.conf
<br>
<syntaxhighlight lang="nginx">
# nginx.confファイル
upstream unicorn {
    server unix:/<Redmineのインストールディレクトリ>/tmp/unicorn.sock;
}
server {
    listen 80 default_server;
    listen [::]:80 default_server;
    server_name _;
    return 301 https://$host$request_uri;
}
server {
    listen 443 ssl http2 default_server;
    listen [::]:443 ssl http2 default_server;
    server_name _;
    root /<Redmineのインストールディレクトリ>/public;
    ssl_certificate    "<自己署名証明書ファイルのパス  例. /etc/pki/nginx/server.crt">;
    ssl_certificate_key "<秘密鍵ファイルのパス  例. /etc/pki/nginx/private/server.key">;
    ssl_session_cache shared:SSL:1m;
    ssl_session_timeout 10m;
    ssl_ciphers PROFILE=SYSTEM;
    ssl_prefer_server_ciphers on;
    include <Nginxの設定ファイル群があるディレクトリ  例. /etc/nginx/conf.d/*.conf>;
    client_max_body_size 10m;
    location / {
        try_files $uri/index.html $uri.html $uri @redmine;
    }
    location @redmine {
        proxy_redirect off;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header Host $http_host;
        proxy_connect_timeout 60;
        proxy_read_timeout 60;
        proxy_send_timeout 600;
        proxy_pass http://redmine;
    }
    error_page 404 /404.html;
        location = /40x.html {
    }
    error_page 500 502 503 504 /50x.html;
        location = /50x.html {
     }
     }
  }
  }

案内メニュー