Debian7用のApacheでSSL証明書を作成する方法
背景情報
SSL証明書は、サイトの情報を暗号化し、より安全な接続を作成する方法です。 認証局はサーバーの詳細を検証するSSL証明書を発行できますが、自己署名証明書にはサードパーティによる確証はありません。 このチュートリアルでは、自己署名SSL証明書を作成し、それをVPSに追加し、証明書を世界中に表示するようにSSLファイルを構成する方法について説明します。
1)Apacheをインストールします
サーバーでApacheがまだ実行されていない場合、これらはapache2という名前でaptitudeですぐに利用できるApachehttpdパッケージです。
次のコマンドを実行してインストールします。
sudo apt-get install apache2
パッケージが正しくインストールされていることをテストするには、ブラウザにVPSIPアドレスを入力します。 インストールが成功した場合、ブラウザは次のように表示します。
It works! This is the default web page for this server. The web server software is running but no content has been added, yet.
2)httpdを設定します
SSLをサポートするには、httpdを設定する必要があります。 これは、apache2-commonパッケージの一部としてhttpdインストールで利用できます。
次のコマンドを使用してSSLを有効にします。
sudo a2ensite default-ssl sudo a2enmod ssl
今回は、前述のように、Apache2を再起動しましょう。
sudo service apache2 restart
モジュールが正しくインストールされていることをテストするために、前と同じようにブラウザにIPアドレスを入力します。 ただし、今回は https://を使用します。 これに続いて、ブラウザのIPアドレスを入力します。
このページに初めてアクセスすると、ブラウザはサイトの証明書が信頼されていないことを警告します。 先に進むと、前と同じページが表示されます。
It works! This is the default web page for this server. The web server software is running but no content has been added, yet.
3)自己署名証明書を生成します
自己署名証明書を使用するには、パッケージssl-certがインストールされている必要があります。
サーバー用に独自の自己署名証明書を構成し、それを/ etc / apache2/sslに保存したかったのです。 これを行うには、次のコマンドを実行します。
sudo mkdir /etc/apache2/ssl
新しい証明書をリクエストするときは、365を希望の日数に変更することで、証明書の有効期間を指定できます。 現状では、この証明書は1年後に期限切れになります。
sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/apache2/ssl/apache.key -out /etc/apache2/ssl/apache.crt
このコマンドを使用すると、自己署名SSL証明書とそれを保護するサーバーキーの両方を作成し、両方を新しいディレクトリに配置します。
このコマンドは、入力する必要のあるフィールドのリストを表示するように端末に指示します。
最も重要な行は「共通名」です。 ここに公式ドメイン名を入力するか、まだ持っていない場合はサイトのIPアドレスを入力します。
<pre>You are about to be asked to enter information that will be incorporated into your certificate request. What you are about to enter is what is called a Distinguished Name or a DN. There are quite a few fields but you can leave some blank For some fields there will be a default value, If you enter '.', the field will be left blank. ----- Country Name (2 letter code) [AU]:<span class="highlight">US</span> State or Province Name (full name) [Some-State]:<span class="highlight">New York</span> Locality Name (eg, city) []:<span class="highlight">NYC</span> Organization Name (eg, company) [Internet Widgits Pty Ltd]:<span class="highlight">Awesome Inc</span> Organizational Unit Name (eg, section) []:<span class="highlight">Dept of Merriment</span> Common Name (e.g. server FQDN or YOUR name) []:<span class="highlight">example.com </span> Email Address []:<span class="highlight">webmaster@awesomeinc.com</span></pre><br/>
4)証明書を設定します
これで、完成した証明書に必要なすべてのコンポーネントが揃いました。次に行うことは、新しい証明書を表示するように仮想ホストを設定することです。
SSL構成ファイルを開きます。
nano /etc/apache2/sites-available/default-ssl
デフォルト :443>、次の変更をすばやく行います。
サーバー管理者の電子メールのすぐ下にサーバー名の行を追加します。
ServerName example.com:443
example.com をDNS承認済みドメイン名またはサーバーIPアドレスに置き換えます(証明書の一般名と同じである必要があります)。
次の3行を見つけて、以下の拡張子と一致することを確認してください。
SSLEngine on SSLCertificateFile /etc/apache2/ssl/apache.crt SSLCertificateKeyFile /etc/apache2/ssl/apache.key
保存してファイルを終了します。
5)新しい仮想ホストをアクティブ化します
443ポートでアクセスするWebサイトをアクティブ化する前に、その仮想ホストを有効にする必要があります。
sudo a2ensite default
準備万端です。 Apacheサーバーを再起動すると、すべての変更が適用された状態でサーバーがリロードされます。
sudo service apache2 reload
ブラウザでhttps:// youraddress と入力すると、新しい証明書が表示されます。
続きを見る
Once you have setup your SSL certificate on the site, you can [[“%3Ca|how-to-set-up-vsftpd-on-ubuntu-12-04]]”>Install an FTP server if you haven’t done so yet.