Linux
 Computer >> コンピューター >  >> システム >> Linux

本番サーバーでXAMPPを使ってはいけない4つのセキュリティ上の理由

本ガイドでは、PHPベースのアプリケーションをホスティング・デプロイする際に、本番サーバーでXAMPPを使用してはならない理由を、セキュリティの観点から詳しく解説します。

開発環境としてXAMPPが選ばれる理由

XAMPPは、PHPアプリケーション開発に広く利用されているLAMPスタックのひとつです。Apacheサーバー、MariaDBデータベース、そしてPHPやPerlに関連する各種スクリプトで構成されています。

クロスプラットフォーム対応でオープンソースであり、セットアップも非常に簡単なため、PHPによるWebアプリ開発を始めたばかりの初心者にとって最適なツールのひとつとなっています。

XAMPPを本番環境で使うべきではない理由

しかしながら、以下のようなセキュリティ上の問題があるため、XAMPPを本番サーバーで使用することは推奨されません。

1. データベース管理者にパスワードが設定されていない

データベースを利用する動的なWebサイトにとって、パスワードの管理は極めて重要です。XAMPPでは、データベース管理者(root)のパスワードがデフォルトで設定されていないため、深刻なセキュリティリスクにつながります。

  • rootユーザーには読み取り・書き込み・実行の全権限があるため、ハッカーがデータベース全体にアクセスし、内容を自由に改ざんできてしまいます。
  • データベースにアクセスできる者は、ユーザー情報や企業の機密情報をすべて閲覧・コピーでき、データベース全体を複製することさえ可能です。
  • 現代のシステムの多くはデータベースに依存しています。データベースが削除されたりアクセス不能になったりすると、システム全体が事実上機能しなくなります。

2. MySQLがネットワーク経由でアクセス可能になっている

XAMPPはMySQLまたはMariaDBをデータベースサービスとして使用します。残念ながら、MySQLデーモンはネットワーク経由で容易にアクセスできる状態になっており、ローカルPCでの開発中は便利ですが、本番環境には決して理想的ではありません。

さらに、ファイアウォールでアクセスを制限したとしても、データベースへの不正アクセスを完全に防げる保証はありません。

3. ProFTPDが既知のパスワードを使用している

ProFTPDは、XAMPPのデフォルトFTP(ファイル転送プロトコル)クライアントです。そのデフォルトパスワードが「lampp」に設定されていることは周知の事実であり、誰でも静的HTMLファイルやWebページに簡単にアクセスできてしまいます。

ハッカーは静的ページをコピーして本物そっくりの偽サイトを作成し、ユーザーから貴重な情報を詐取しようとする可能性があります。さらに、偽サイトや複製サイトに悪意のあるコードを注入し、ネットワーク上のコンピュータへ感染を広げることもできます。

4. ローカルメールサーバーが安全ではない

Windows版のXAMPPは、Mercuryをデフォルトのメールサーバーとして使用します。こちらもパスワードが広く知られているため、悪意あるユーザーがメールボックスへアクセスしやすい状態になっています。

メールにアクセスされると、ハッカーはメールを通じて悪意のあるコードを送信したり、ユーザーから金銭を詐取したり、顧客に不適切なメールを送りつけて企業の評判を損なうといった被害をもたらす恐れがあります。

XAMPPインストールの強化方法

XAMPPのインストールをより安全にしたい場合は、LinuxサーバーでXAMPPが稼働していれば、次のコマンドを実行してください。

sudo /opt/lampp/lampp security

Windowsの場合は、URL「https://localhost/security」にアクセスすることで、一部のセキュリティ問題を修正できます。ただし、これらの設定を行っても、FileZillaおよびMercuryに関連するセキュリティホールは解消されない点に注意が必要です。

検討したいXAMPPの代替手段

XAMPPは、Windows、macOS、Linuxのいずれの環境でもPHP開発環境を構築できる優れたツールです。しかし、本番サーバーで使用するには安全性が十分とは言えません。

多くの管理者は、LinuxではネイティブのLAMPスタックを、Windowsの本番サーバーではIISを採用しており、これらはPHPアプリケーションをより安全にデプロイする手段を提供しています。Windowsユーザーであれば、WampServerを活用してWAMP開発環境を構築することも良い選択肢となるでしょう。

  1. 物事を成し遂げるためにSlackを使うべき5つの理由

    リモート環境でチームとして働くとき、真っ先に思い浮かぶツールといえばSlackです。2013年のリリース以来、Slackは個人とチームが手軽につながり、ストレスなく業務を進められる最高のコラボレーションツールの一つとしての地位を確立してきました。今回はSlackの便利な活用術をご紹介する前に、まずこのアメリカ発のクラウド型オンラインサービスについて詳しく見ていきましょう。 Slackで物事を成し遂げよう! この優れたオンラインコラボレーションツールをまだ知らない方は、この記事で紹介する情報にきっと驚かされるはずです。チームでの作業が日常業務の一部となっている職場に所属しているなら、たとえチー

  2. Firefoxを使うべき理由 ― 選択の自由とブラウザ競争の未来

    私はおよそ15年間、Firefoxを使い続けてきました。その間、Firefoxは美しいプロジェクトへと成長し、素晴らしい拡張機能の宝庫となりました。しかし、その後は競合他社と同じ道を辿ったことで、かつて持っていた核心的な優位性を失いながら、徐々に存在感を薄めていきました。それでもなお、Firefoxは私のメインブラウザであり続けています。そして私に尋ねるなら――あなたもFirefoxをメインブラウザにすべきです。 この記事では、その理由をお話しします。メモリ消費量や起動時間のわずかな差、スマートフォンでの見た目の美しさといった日常的な話ではありません。重要なのは「選択」、選択の自由、そして競争