
私は VPS を持っており、mysql データベースにリモート アクセスしようとしています。
任意のIPアドレスにルート権限を付与しました
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'password' WITH GRANT OPTION;
FLUSH PRIVILEGES;
私はファイルにコメントしましたmy.cnf
、行
#bind-address = 127.0.0.1
MySQLを再起動しました
sudo service mysql restart
しかし、次のステップ(周りのチュートリアルではすべてそう言及されている)は、ポート3306からのリクエストを転送することであり、私のVPSには出力iptables
がないためiptables
、sudo service iptables status
iptables: unrecognized service
iptablesをインストールできましたが、nginx でも同じことが実現できるでしょうか?つまり、これは、mysql データベースへのリモート アクセスを許可するためのフォート転送ですか?
答え1
いいえ、Nginx と Netfilter はまったく異なるものです。
MySQL データベースを驚くほどオープンな方法で構成しました。これは危険です。より良い選択肢としては、インターネット全体ではなく、アプリケーション (Web サーバーなど) からのみアクセスを制限することです。これを行うには、 を%
このクライアントのアドレスに置き換えます。
Netfilter サブシステムのツールを使用して追加のファイアウォール ルールを設定することについて質問がありましたがiptables
、これは良いことです。ツールがインストールされていない場合は、なぜインストールしないのですか?
Nginx は、遅かれ早かれいずれ必要になるであろう Web サーバーです。しかし、決して Netfilter の代わりとなるものではありません。