データベースをインターネットから見えないようにする
指摘コード:EXPOSED_DATABASE。お使いのOSの手順を見てください。
データベースをインターネットから見えないようにする
手順だけのページ(ポート:1433・3306・5432・6379・9200・27017)
これは何か
データベースは、アプリやサイトのデータをためておく仕組みです。インターネットから直接つながると、パスワードの総当たりや、設定の弱さを突いた情報の持ち出し・書き換えに使われます。今は、1433・3306・5432・6379・9200・27017番のデータベースが外から見えています。データベースは、同じ機械か、決まったアプリのサーバーからだけ使うのが基本です。
使っているかの確かめ方
データベースを動かしている機械で、1433・3306・5432・6379・9200・27017番で待っているかを確かめます。Linux では端末で次を実行し、出力に「:1433・3306・5432・6379・9200・27017」を含む行があれば待っています。「:1433・3306・5432・6379・9200・27017」の前が 0.0.0.0 や * なら全部のネットワークから受けています。127.0.0.1 なら同じ機械からだけです。
ss -tln
手順
ルーターの管理画面で、ポート開放(ポートフォワード)の設定に 1433・3306・5432・6379・9200・27017番の転送が残っていれば消します。外から使う予定がないなら、これだけで外からは届かなくなります。画面の名前はルーターごとに違うので、ルーターの説明書を見てください。
管理者権限が必要
同じ機械からだけ使うなら、データベースの設定で、待ち受けを 127.0.0.1(localhost)だけにします。PostgreSQL は postgresql.conf の listen_addresses を 'localhost' に、MySQL・MariaDB は設定ファイルの [mysqld] の節の bind-address を 127.0.0.1 に、MongoDB は net.bindIp を localhost に、Redis は bind を 127.0.0.1 にします。Elasticsearch は elasticsearch.yml の network.host と http.host の行を消して、既定(同じ機械からだけ)に戻します(最初の起動で http.host: 0.0.0.0 が自動で足されていることがあります)。変えたあと、データベースを再起動します。
管理者権限が必要
別のサーバーから使う場合は、ファイアウォールで、そのサーバーのアドレスからだけ 1433・3306・5432・6379・9200・27017番を受けるようにします。SQL Server(Windows)では、Windows ファイアウォールのルールの「スコープ」で接続元を絞ります。
データベースのパスワードを長いものに変え、認証がオフのもの(Redis や MongoDB の既定の設定など)は認証をオンにします。
もう一度 Pengolin で診断して、データベースの項目が出なくなったことを確かめます。
直したら、もう一度診断すると確かめられます
出典
- https://www.postgresql.org/docs/current/runtime-config-connection.html
- https://www.postgresql.org/docs/current/auth-pg-hba-conf.html
- https://dev.mysql.com/doc/refman/8.4/en/server-system-variables.html#sysvar_bind_address
- https://mariadb.com/kb/en/configuring-mariadb-for-remote-client-access/
- https://www.mongodb.com/docs/manual/reference/configuration-options/#mongodb-setting-net.bindIp
- https://redis.io/docs/latest/operate/oss_and_stack/management/security/
- https://learn.microsoft.com/en-us/sql/sql-server/install/configure-the-windows-firewall-to-allow-sql-server-access
- https://dev.mysql.com/doc/refman/8.4/en/option-files.html
- https://www.mongodb.com/docs/manual/core/security-mongodb-configuration/
- https://www.mongodb.com/docs/manual/reference/configuration-options/#mongodb-setting-security.authorization
- https://redis.io/docs/latest/operate/oss_and_stack/management/security/acl/
- https://www.elastic.co/docs/reference/elasticsearch/configuration-reference/networking-settings
- https://manpages.ubuntu.com/manpages/noble/man8/ss.8.html
確認日:2026-11-03

