Blog

Dev.To:あなたのMySQLサーバーは、公共のインターネットに公開されていますか?

2024年2月3日

MySQLサーバーは、一般のインターネットに公開されていますか?

DEV.toで記事全文をご覧いただけます。

Shadowserver foundationの記事によると、3306番ポートのMySQLサーバーインスタンスが世界中で230万台スキャンされ、アクセス可能であることが判明したそうです。この数字には本当に驚きましたし、ほとんどの人が意図的にこのようなことをしたのではないと確信しています。

まず、MySQL(または任意のポート)が公共のインターネット上でアクセス可能であることが、なぜ攻撃の対象となるのかについて説明します。パブリックIPアドレスでアクセス可能なポートはすべてスキャンされる、これは事実です。ポートがスキャンされ、サービスが応答していることが確認されると、攻撃が始まります。ユーザー名とパスワードの組み合わせによる総当り攻撃、OSやアプリケーションの既知の悪用、その他様々な既知の一般的脆弱性と暴露、そして常に新しいハッキングが開発されています。

ミティゲーション

  • MySQLサーバーにアクセスできるようにVPNを追加して、パブリックIPアドレスの外部ポートを閉じることができるようにすることができます。
  • ポートスキャナがポートを検出するのを防ぐために、IP許可リストを管理する。これは、VPNポートを検出されないようにするために、VPNを追加するための追加手順となり得ます。

それぞれの緩和策の長所と短所の完全なリストをお読みください。

この緩和策は、各ユーザーが許可されたリソースのみにアクセスできるようにする Zero Trust Network Architecture (ZTNA) ではありません。最小限の特権しか与えない。

Remote.Itを使用する

Remote.Itを使用すると、開いているポートを閉じながら、人々やリソースにアクセスすることができます。Remote.It経由でMySQLなどのリソースに接続すると、ローカルホストのアドレスと一意のポートが与えられます。これを開発環境の接続設定やデータベースクエリーツールなどで利用することができます。場所を変えたり、ノートパソコンがスリープから復帰したときに、接続、切断、再接続をする必要はありません。これらのオンデマンド接続は、アクティブに使用していないときはアイドル状態になり、使用するときにアクティブになります。

取り付けが簡単
  • ほとんどのリソースで1行でインストールできるシンプルさ
  • オンプレミスのサーバーだけでなく、クラウド(AWS、Azure、Google Cloud)でも動作します。
実装が容易
  • 整理機能を使って、リソースにタグを作成する
  • メンバーのアクセス権を定義するロールの作成(タグによるフィルタリングを含む)
  • メールアドレスによる組織へのメンバー追加
すべてのリソースを一元的に管理することでメンテナンスが容易になる
監査が容易(自社リソースへの接続のログが取得可能)
デスクトップUIまたはgraphQL APIで管理可能
また、大きな切り替えをする必要がなく、徐々に展開することができます。

MySQLサーバーは公開されていますか?

MySQLサーバーが公開されているかどうかを確認するツールを使用します。

MySQLサーバが公開されている場合、上記の緩和策の実施を検討してください。推奨事項は併用することができます。Remote.Itのアカウントは、5つのエンドポイントまで無料で利用できます。

これらの一般的なクラウドプロバイダーに対応しています。

セルフホスティングのデータベースをお持ちですか?WindowsとLinuxディストリビューションに対応したオプションでサポートします。 Remote.Itの詳細については、こちらをご覧ください。

ご質問は、以下のコメント欄、またはsupport@remote.itまでお寄せください。

記事全文を読むDev.to あなたのMySQLサーバーは、インターネットに公開されていますか?

関連ブログ