ubuntu-server-14-04:apache-ssl
差分
このページの2つのバージョン間の差分を表示します。
両方とも前のリビジョン前のリビジョン次のリビジョン | 前のリビジョン | ||
ubuntu-server-14-04:apache-ssl [2015/01/07 13:50] – admin | ubuntu-server-14-04:apache-ssl [2015/01/07 22:43] (現在) – 削除 admin | ||
---|---|---|---|
行 1: | 行 1: | ||
- | ====== Apache2 でWebサーバ ====== | ||
- | |||
- | |||
- | Apache2 で Web サーバを構築する。セキュリティを考慮してとりあえず、HTTP 標準の 80 ポートは使用せず、SSL を使用して 443 " | ||
- | ===== 環境 ===== | ||
- | |||
- | ==== インストール前の環境 ==== | ||
- | |||
- | * Ubuntu 14.04.1 LTS 64bit | ||
- | |||
- | ^ パッケージ名 ^ バージョン ^ | ||
- | | apache2 | 2.4.7-1ubuntu4.1 | | ||
- | | mysql-server | 5.5.40-0ubuntu0.14.04.1 | | ||
- | | libapache2-mod-php5 | 5.5.9+dfsg-1ubuntu4.5 | | ||
- | |||
- | Apache2、MySQL、PHP は Ubuntu をインストールした際に、ついでにインストール済み。 | ||
- | |||
- | |||
- | ==== インストールするパッケージ等 ==== | ||
- | |||
- | |||
- | |||
- | |||
- | ===== インストール ===== | ||
- | |||
- | インストールしていない場合は apt-get でインストール。 | ||
- | |||
- | < | ||
- | $ sudo apt-get install apache2 | ||
- | </ | ||
- | |||
- | ufw で 80 ポートへのアクセスを許可する。 | ||
- | |||
- | < | ||
- | $ sudo ufw allow 80/tcp | ||
- | </ | ||
- | |||
- | |||
- | インストールしてサーバにブラウザでアクセスすると、とりあえず It works! は表示される。 | ||
- | |||
- | |||
- | ===== apache2 ディレクトリ内のファイル ===== | ||
- | |||
- | / | ||
- | |||
- | * apache2.conf: | ||
- | * conf-available: | ||
- | * conf-enabled: | ||
- | * envvars: Apache2 で使用する環境変数を記述する。 | ||
- | * mods-available: | ||
- | * mods-enabled: | ||
- | * ports.conf: Apache2が接続を受け入れるポートの設定。 | ||
- | * sites-available: | ||
- | * sites-enabled: | ||
- | * magic: MIME タイプの認識方法を設定するファイル。 | ||
- | |||
- | |||
- | ===== サイトの設定 ===== | ||
- | |||
- | インストール時点でデフォルトのサイトが有効かされている。 | ||
- | |||
- | このサイトの設定ファイルをコピーして新しいサイトの設定ファイルを作成する。 | ||
- | |||
- | < | ||
- | $ cd / | ||
- | $ sudo cp ./ | ||
- | $ sudo vi ./ | ||
- | </ | ||
- | |||
- | * ServerAdmin: | ||
- | * DocumentRoot: | ||
- | |||
- | 以下のディレクティブを < | ||
- | |||
- | your.domain.com に対する要求に応答するように設定。また、www.your.domain.com 等の頭に他のホスト名が付加されても応答するようにする。 | ||
- | |||
- | * ServerName your.domain.com | ||
- | * ServerAlias *.your.domain.com | ||
- | |||
- | |||
- | 設定ファイルの構文に間違いがないかをチェック | ||
- | |||
- | < | ||
- | $ sudo apache2ctl configtest | ||
- | </ | ||
- | |||
- | デフォルトで有効になっていたサイトを無効化し、新規に作成したサイトを有効化する。 | ||
- | |||
- | < | ||
- | $ sudo a2dissite 000-default | ||
- | $ sudo a2ensite mynewsite | ||
- | $ sudo service apache2 restart | ||
- | </ | ||
- | |||
- | ブラウザでアクセスして、ページが表示されるか確認する。 | ||
- | |||
- | |||
- | ===== apacheのSSLを有効にする ===== | ||
- | |||
- | 初期状態で有効になっていたが、念のため SSL モジュールの有効化する。 | ||
- | |||
- | < | ||
- | $ sudo a2enmod ssl | ||
- | </ | ||
- | |||
- | / | ||
- | |||
- | |||
- | < | ||
- | $ cd / | ||
- | $ sudo cp ./ | ||
- | $ vi ./ | ||
- | </ | ||
- | |||
- | SSL接続を使用するサーバの設定を行う。 | ||
- | |||
- | * < | ||
- | * ServerAdmin: | ||
- | * DocumentRoot: | ||
- | |||
- | |||
- | 鍵のパスを実際のパスに変える。[[ubuntu-server-10-04: | ||
- | |||
- | * SSLCertificateFile | ||
- | * SSLCertificateKeyFile / | ||
- | |||
- | |||
- | アクセスするポートを変更した場合は、/ | ||
- | < | ||
- | $ sudo vi / | ||
- | </ | ||
- | |||
- | * Listen 443: 番号を任意のポート番号に変更 | ||
- | |||
- | |||
- | コマンドで default-ssl を有効にすると、/ | ||
- | < | ||
- | $ sudo a2ensite default-ssl | ||
- | </ | ||
- | < | ||
- | $ ls -l / | ||
- | total 0 | ||
- | lrwxrwxrwx 1 root root 26 2010-10-29 10:47 000-default -> ../ | ||
- | lrwxrwxrwx 1 root root 30 2010-10-29 12:41 default-ssl -> ../ | ||
- | </ | ||
- | |||
- | |||
- | |||
- | 設定に間違いがないかをチェック。 | ||
- | < | ||
- | $ sudo apache2ctl configtest | ||
- | </ | ||
- | |||
- | こんな警告が、、、 | ||
- | < | ||
- | apache2: Could not reliably determine the server' | ||
- | </ | ||
- | |||
- | どうやら | ||
- | < | ||
- | $ hostname --fqdn | ||
- | </ | ||
- | とした時に、グローバルからアクセス可能なホスト名が出てこないのが原因らしい。 | ||
- | |||
- | /etc/hosts を編集する。 | ||
- | < | ||
- | $ sudo vi /etc/hosts | ||
- | </ | ||
- | < | ||
- | 127.0.1.1 | ||
- | </ | ||
- | |||
- | こんな行があるはずなので、 | ||
- | |||
- | < | ||
- | 127.0.1.1 | ||
- | </ | ||
- | |||
- | グローバルからアクセスできるホスト名を、172.0.1.1に対応する最初のホスト名として記述する。 | ||
- | |||
- | apache再起動する。 | ||
- | < | ||
- | $ sudo / | ||
- | </ | ||
- | |||
- | |||
- | ブラウザからアクセスできるかをチェックする。 | ||
- | |||
- | ===== WevDavの設定 ===== | ||
- | |||
- | |||
- | Apache2 の WebDav モジュールを有効にする。 | ||
- | |||
- | < | ||
- | $ sudo a2enmod dav_fs | ||
- | </ | ||
- | |||
- | |||
- | Webdavで使用するディレクトリを作成。所有者は www-data: | ||
- | < | ||
- | $ sudo mkdir -p / | ||
- | $ sudo chown www-data: | ||
- | </ | ||
- | |||
- | / | ||
- | |||
- | < | ||
- | < | ||
- | Alias /dav "/ | ||
- | < | ||
- | DAV on | ||
- | Options Indexes | ||
- | Order deny,allow | ||
- | AuthType Basic | ||
- | AuthName " | ||
- | AuthUserFile / | ||
- | Require valid-user | ||
- | </ | ||
- | </ | ||
- | </ | ||
- | |||
- | 認証用のパスワードファイルを作成する。 | ||
- | |||
- | |||
- | < | ||
- | $ cd / | ||
- | $ sudo htpasswd -c ./ | ||
- | New password: | ||
- | Re-type new password: | ||
- | Adding password for user hoge | ||
- | </ | ||
- | |||
- | -c オプションは新しくファイルを作成してしまうので、2人目以降は | ||
- | < | ||
- | $ sudo htpasswd ./ | ||
- | </ | ||
- | で追加する。 | ||
- | |||
- | パスワードファイルのパーミッションを変更。 | ||
- | < | ||
- | $ sudo chown www-data: | ||
- | $ sudo chmod 600 ./ | ||
- | </ | ||
- | |||
- | Apache2 を再起動。 | ||
- | |||
- | < | ||
- | $ sudo / | ||
- | </ | ||
- | |||
- | ブラウザから http:// | ||
- | |||
- | |||
- | ===== 文字化け対策 ===== | ||
- | |||
- | 以前は文字化け対策で mod-encoding をインストールしていた気がするけれど、文字化けの現象が現れないのでとりあえず放置。 | ||
- | |||
- | ===== 参考 ===== | ||
- | |||
- | [[https:// | ||
- | |||
- | |||
ubuntu-server-14-04/apache-ssl.1420606204.txt.gz · 最終更新: 2015/01/07 13:50 by admin