あなたのMySQLサーバーは公衆インターネットに公開されていませんか?
DEV.toで全文を読む
Shadowserver財団の記事によると、ポート3306上で世界中の230万台のMySQLサーバーインスタンスがスキャンされ、アクセス可能な状態にあることが判明しました。私はこの数の多さに本当に驚きましたし、ほとんどの人が意図的にこれを行っていないことはほぼ間違いないと思います。
まず、MySQL(あるいはどのポートであっても)を公衆インターネット上でアクセス可能な状態にしておくことがなぜ攻撃対象領域になるのか、その理由についてお話しします。パブリックIPアドレス上でアクセス可能なポートは、必ずスキャンされます。これは事実です。ポートがスキャンされ、応答するサービスが存在することが判明すると、そこから攻撃が始まります。これにはユーザー名・パスワードの組み合わせに対する総当たり攻撃、OSやアプリケーションの既知の脆弱性の悪用、その他さまざまな既知のCommon Vulnerabilities and Exposures(CVE)などが含まれ、さらに新しいハッキング手法も絶えず開発されています。
緩和策
- VPNを追加してMySQLサーバーへのアクセスを許可し、パブリックIPアドレス上の外部ポートを閉じることができます。
- IP許可リストを管理し、ポートスキャナーによるポートの検出を防ぎます。これはVPNを追加することに加えて、VPNポート自体が検出されるのを防ぐための追加の手段として利用できます。
各緩和策の長所と短所の完全なリストをご覧ください。
これらの緩和策は、各ユーザーに対して権限を持つリソースのみへのアクセスを許可する、ゼロトラストネットワークアーキテクチャ(ZTNA)ではありません。可能な限り最小権限にすることが理想です。
Remote.Itを使う
Remote.Itを使えば、開いているポートを閉じたまま、あなたのメンバーやリソースへのアクセスは維持できます。Remote.It経由でMySQLなどのリソースに接続すると、localhostアドレスと専用のポートが割り当てられます。これを開発環境の接続設定やデータベースクエリツールなどで使用できます。場所を移動したりノートパソコンがスリープから復帰したりするたびに、接続・切断・再接続を行う必要はありません。これらのオンデマンド接続は、実際に使用していないときはアイドル状態になり、使用時にはアクティブになります。
簡単にインストールできる
- ほとんどのリソースに対してシンプルな1行インストール
- クラウド(AWS、Azure、Google Cloud)でもオンプレミスサーバーでも動作
簡単に導入できる
- 組織機能を使ってリソースにタグを作成
- メンバーの権限(タグによるフィルタリングを含む)を定義するロールを作成
- メールアドレスでメンバーを組織に追加
すべてのリソースを一元管理できるので、簡単にメンテナンスできる
簡単に監査できる(リソースへの接続ログを利用可能)
デスクトップUIまたはGraphQL APIで管理可能
一斉切り替えを行うことなく、段階的に展開することも可能
あなたのMySQLサーバーは公開されていませんか?
私たちのツールを使って、あなたのMySQLサーバーが公開されていないか確認してください。
もしMySQLサーバーが公開されている場合は、上記で紹介した緩和策の導入をご検討ください。これらの推奨策は組み合わせて使用することができます。Remote.Itのアカウントは、5エンドポイントまで無料でご利用いただけます。
私たちは以下の主要なクラウドプロバイダーをサポートしています。
自己ホスト型のデータベースをお使いですか? WindowsおよびLinuxディストリビューション向けのオプションも用意しており、そちらもサポートしています。Remote.Itについて詳しく知り、始めましょう
ご質問がございましたら、下にコメントを残していただくか、support@remote.itまでご連絡ください。
全文はこちら Dev.to Is your MySQL server open to the public Internet?