サーバの管理
目次
1 全般的なサーバの管理
セキュリティ事故を起こさないためには以下のような点に注意してサーバの管理を行う必要があります。 特に外部に公開するサーバではセキュリティアップデートは必須となります。
1.1 セキュリティアップデートを行い脆弱性のないソフトウェアを利用する
サーバで使用している OS やライブラリ、サーバソフトウェアに脆弱性があると外部から攻撃を受けてサーバに侵入されてしまいます。 サーバに侵入されると、サーバ上のデータの漏えい、公開している情報の改ざん、他組織への攻撃や迷惑行為への踏み台としての利用、などの被害が発生し大変問題ですので、 セキュリティアップデートを行い脆弱制のないソフトウェアを利用するのは必要不可欠です。
- セキュリティアップデートの行われなくなった古いソフトウェアは利用しない
1.2 アカウントを適切に管理する
サーバに脆弱性がない状態でも、アカウントの管理が適切でない場合にサーバに侵入されてしまいます。
2 外部に公開する Web サーバの管理
2.1 管理情報の登録
昨今では外部に公開したウェブサーバに起因するセキュリティ問題が増加しておりますので、ウェブサーバを外部に公開する場合には以下の情報を登録していただいております。 また、年に一度確認をさせていただき、管理が行われなくなってしまったサーバについては公開を停止させていただいております。
1. 専攻施設 2. IPアドレス 3. FQDN 4. 管理者氏名 5. 管理者メールアドレス 6. 担当者氏名 7. 担当者メールアドレス 8. 用途 9. 備考
2.2 Webサーバの管理
Webサーバの管理では、最初の構築だけではなく継続的な管理が重要となります。 発注などでサイトを構築する場合には、サーバの管理がおろそかになりがちですが、サーバの管理体制を十分考慮して公開を行ってください。 特に、定期的なソフトウェアのアップデートは重要で、コンテンツの表示や動作の互換性がアップデートの妨げにならないように、コンテンツの修正などが定常的に行える体制を整える必要があります。
- セキュリティアップデートの提供されている OS を利用すし、常に最新にアップデートを行う
- CMS などを利用する場合には常に最新版を利用する
- PHPなどのプログラムを利用する場合には、セキュリティ問題などに対応できるような体制にする
3 外部に公開する ssh サーバの管理
sshを外部に公開する場合は鍵認証でしかログインできない設定にしてください。 パスワードでログイン可能なsshサーバを適切に管理するには、サーバに存在する全てのアカウントが適切なパスワードを付けていることを確認する必要があります。 適切な状態を維持するのは大変で、一時的に作ったアカウントの消し忘れなどからsshで侵入される事例が発生しています。 鍵認証でしかログインできない設定ではこういった問題は発生しません。
どうしても鍵認証のみでの管理が難しい場合には、アカウントの管理を徹底してください。 テスト用のアカウントや以前のユーザ、利用されていないユーザなどのアカウントが適切に削除されていることを定期的に確認し、 存在する全てのアカウントのパスワードが十分に複雑であることを確認してください。(たとえば8文字以上で、大文字・小文字・数字・記号のうち3種類以上を用いるなど)
3.1 ユーザの設定
- ssh-keygen コマンドを実行します。
- 質問にエンターを入力します(ファイルの場所はデフォルト、パスフレーズなし)
- .ssh/id_rsa が秘密鍵、.ssh/id_rsa.pub が公開鍵です
- サーバの .ssh/authorized_keys に公開鍵を追加します
- サーバに id_rsa.pub をコピーしてから
cat id_rsa.pub >> .ssh/authorized_keys
- .ssh ディレクトリに g や o の書き込み権限がたってないことを確認します
3.2 サーバの設定
- /etc/ssh/sshd_config を編集してパスワード認証を禁止します
PasswordAuthentication no
3.3 運用に関する注意点
パスワード認証によるログインを禁止した場合、新たに追加したユーザについては、 管理者がユーザの公開鍵をメールで送ってもらうなどして設定する必要があります。