サーバーはWebサイトの運営において不可欠な存在です。そして、サーバーを安全に利用し続けるためにはしっかりとしたセキュリティ対策を行っておくことが必要になります。攻撃者たちは日々あらゆる方法を使って攻撃を仕掛けてきます。大切な情報が外部に流出してしまう前に万全なセキュリティ対策を行いましょう。
今回はサーバーセキュリティの基礎知識や必要性、基本的なサーバーセキュリティ対策を紹介します。後半では、最近よく聞くAWS(Amazon Web Service)の導入事例も紹介していますので、是非参考にしてみてください。
サーバーセキュリティとは?
サーバー側でのセキュリティ対策は、主にOSやミドルウェア、アプリケーションの脆弱性への対応になります。具体的には、サーバーを構築した後の運用のフェーズにおいて、セキュリティホールの情報を収集し、脆弱性が確認された際には早急にパッチを運用することです。
サーバーのセキュリティ対策は、ネットワーク側とサーバー側の2つに分けられます。ネットワーク側では、セキュリティ機器を導入することで外部からの攻撃に対しての対策ができます。一方、サーバー側では、搭載しているOSやミドルウェアの脆弱性に対する対応になるため、日々の運用が安全性を左右します。
おすすめ記事
ワークフローを管理する方法とおすすめワークフロー管理システムとは?:こちらへご覧ください。
サーバーセキュリティの必要性
パソコンなどの端末向けのセキュリティ対策ソフトは、企業向けのソフトの多数存在し、導入されている方も多いでしょう。しかし、サーバー向けのセキュリティ対策にはあまり馴染みがない方も多いのではないでしょうか。
近年Webアプリケーションを運営するSaaS企業が一般的になり、ECサイトやオンライン・クラウドサービスを提供するような企業は攻撃の対象になっており、パソコンなどの端末と同じようにサーバーにもセキュリティ対策が必要になっています。
2019年には、「ECサイト改ざん」被害が拡大し、サイト提供者が気づかないうちに利用者のクレジットカード情報を狙った攻撃が拡大されました。大切な顧客の情報をしっかりと守るためにもきちんとセキュリティ対策を行いましょう。
基本的なサーバーセキュリティの対策例
では、サーバーを攻撃から守るためにはどのようなセキュリティ対策が必要なのでしょうか?ここでは、基本的な対策例をご紹介します。
セキュリティパッチを適用する
公開されているWebサーバーを構成しているOS、Webサーバー、Webアプリケーションなどの全ての構成要素の中にセキュリティホールは存在している可能性があります。公開Webサーバーのセキュリティホールをそのままにしておくことは非常に危険で、攻撃者はそれらの脆弱性を突いて攻撃してくるのです。
セキュリティホールを修正するセキュリティパッチは必須で、攻撃者に攻撃するスキを与えないようにしましょう。管理者は日頃から公開サーバーの構成要素全ての脆弱性に関係する情報を収集し、万が一セキュリティホールが発見され、セキュリティパッチが公開された場合でも速やかにセキュリティパッチを確認し、テストを行った上で適用しましょう。
不要なサービスの停止やアプリケーションを削除する
必要のないサービスが含まれていると、管理者の意識が行き届かず、放置された期間に危険にさらされる可能性があります。そのため、不要なサービスは停止・削除し、管理が行き届く状態を保つようにしましょう。
管理者権限のアカウントを変更する
サーバーの管理者権限のアカウントのユーザーIDがデフォルトの設定のままだと、パスワードのみ推測すればよくなるため、攻撃されやすくなってしまいます。
サーバーに対して全ての操作を行うことができる権限を持つ管理者権限のアカウントが攻撃されてしまうと致命的な被害に繋がりかねません。管理者権限のユーザーIDのデフォルト設定は、Windows系OSでは「Administrator」、UNIX系OSでは「root」になっています。これはサーバーに関する知識のある人であれば誰でも知っていることなので、管理者権限のアカウントのユーザーIDはデフォルトの設定とは別のものに変更するようにしましょう。
不要なアカウントを削除する
サーバーを運用する上で、未使用のアカウントを放置しておくと、そこがセキュリティホールになる可能性があります。特に、多くのUNIX系のOSでは、インストールした段階で多数のアカウントが存在しています。使用しないアカウントは削除しておくようにしましょう。
安全なパスワードに設定する
他人に推測されにくく、パスワードクラックツールなどでも突破されにくいのが安全なパスワードです。安全なパスワードにするには、アルファベットの大文字や小文字、数字、記号が含まれており、名前や生年月日などの個人情報から割り出しにくいようなものが理想的です。ワンタイムパスワードなども導入すると、よりセキュリティ性を高めることができます。
パスワードに対するポリシーを設定する
Windows系OSであれば、パスワードに対するポリシーを設定することができます。設定できる内容としては、長さや有効期限、パスワードの複雑さやロックアウトの設定などができ、適切な設定にしておくことでセキュリティをより強固なものにすることができます。
UNIX系OSの場合は、PAM(Pluggable Authentication Module)を使用することで、Windows系OSと同じような機能を搭載することができます。
ログを取得する
Windows系OSやUNIX系OSではログを取得することができます。この機能を活用することで、ローカルまたはネットワークを介してサーバーに対して実施された操作記録をログとして取得することができます。ログの取得を行う際には、以下の項目にも注意しておく必要があります。
-
-
ログを遠隔で保存する
-
不正にアクセスした攻撃者はアクセス履歴を削除することがあります。そのため、サーバー上だけでなく、ログ専用のログサーバーにもログを格納するように設定しておくと良いでしょう。
-
-
定期的に正確な時刻に同期しておく
-
ログを取得する際には、NTPサーバーから定期的に正確な時刻を取得し、同期しておくことをおすすめします。不正アクセス等の攻撃を受けた場合、追跡調査する時には他のログと突き合わせて実施する場合が多く、ログを記録しているサーバーの時刻が正しくないと、調査が難航してしまうことになりかねません。
-
-
ログのローテーション設定を行う
-
ログのローテーションとは、一定の容量や期間ごとにログのファイル名を変更し、新しいものから一定の数だけ残して、それより古いものはサーバー上から削除することを指します。ログを取得するサーバーは、格納できる容量をオーバーすると、新しいログが正しく記録されない場合があります。そういったケースを未然に防ぐため、ログのローテーションを行うと良いでしょう。
クラウドを利用する
AWS(Amazon Web Service)はクラウドコンピューティング市場の約3割を占める代表的なサービスです。
自社のシステムをクラウド上に構築するのは心配な方もいるでしょう。しかし、(オンプレよりセキュリティ面が安全な理由「参考記事:https://www.shadan-kun.com/blog/measure/3410/」)でも紹介されている通り、AWSはAmazonがセキュリティ対策を限界まで引き上げるように投資しているため、運用誤りさえしなければ、クラウドのセキュリティはむしろオンプレミスよりも高いと考えられます。
複雑に構成されたサーバー全体を、アプリケーションに影響を及ぼすことなく常に最新のセキュリティパッチが適用された状態に保つことは管理者の負担が大きく非常に困難だと言えます。
様々な会社のサーバーセキュリティ事例
ここでは、サーバーセキュリティの導入事例をご紹介します。
Kdan Mobile
Kdan MobileはPDF Readerなどのデジタルコンテンツ作成のためのモバイルアプリケーションとオンラインサービスを提供している会社です。KdanのサーバーはAWSインフラストラクチャでホストされており、業界で信頼性の高いサービスを提供しています。
顧客の個人情報データは内部のデータにアクセスできる人物を厳格に管理し、高い安全性を保っています。また、AWS上の顧客データを常にバックアップし、暗号化されたバックアップは分散管理によって30日間保存されています。
運用サーバーのログを記録して保存し、運用インフラストラクチャのセキュリティステータスを分析及び監視しています。ログは別のネットワークに保存され、紐付けがされています。
詳しくはKdan Mobileのセキュリティポリシーをご覧ください。
おすすめ記事 教育DXを加速させる4つのトレンドとは?:こちらへご覧ください。
まとめ:サーバーセキュリティ
いかがでしたか?ECサイトやオンライン・クラウドサービスを提供するような企業はパソコンなどの端末だけでなく、サーバーのセキュリティも必要です。オンプレミスのシステムで常に高いセキュリティ性を保つには、高度な知識と専門性のある管理者必要になります。AWSの場合はこうした高度な運用から開放されながらも高いセキュリティ性を保つことができます。様々な会社のサーバーセキュリティ事例を参考に最適な方法をぜひ見つけてみてください。