NGINX と PM2 を使用して安全な VPS 環境を構築する方法
インターネットの普及に伴い、VPS (仮想プライベート サーバー) は多くの企業にとって推奨される導入となっています。ウェブサイトとアプリケーション環境。しかし、セキュリティ問題はますます重要になっています。この記事では、NGINX と PM2 を使用して安全な VPS 環境を構築する方法について説明し、具体的なコード例を示します。
NGINX は、高速で高性能の HTTP およびリバース プロキシ サーバーであり、負荷分散を実現し、悪意のある攻撃からサーバーを保護するのに役立ちます。 PM2 は、Node.js アプリケーションがサーバー上で常に安定して実行されることを保証できる最新の Node.js アプリケーション プロセス マネージャーです。
安全な VPS 環境を構築するための具体的な手順は次のとおりです:
HTTPS の構成
HTTPS プロトコルは、Web サイトとアプリケーション間の安全な通信を保証します。無料の Let's Encrypt 証明書を使用して HTTPS を実装できます。まず、Certbot ツールをインストールし、それを通じて証明書を申請および更新する必要があります。
sudo apt-get install certbot sudo certbot certonly --nginx
このコマンドは、NGINX プラグインを使用して証明書を自動的に構成します。
リバース プロキシの構成
リバース プロキシを使用すると、セキュリティとパフォーマンスのさらなる利点が得られます。 NGINX をリバース プロキシ サーバーとして使用して、PM2 上で実行されている Node.js アプリケーションにリクエストを転送できます。 NGINX 構成ファイルの例を次に示します。
server { listen 80; server_name example.com; location / { proxy_pass http://localhost:3000; # 此处的3000是Node.js应用程序的端口 proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection 'upgrade'; proxy_set_header Host $host; proxy_cache_bypass $http_upgrade; } }
この構成ファイルは、example.com からのすべてのリクエストをローカルホスト上で実行されている Node.js アプリケーションに転送します。
ファイアウォールの構成
ファイアウォールは、サーバーを悪意のある攻撃から保護するための重要な部分です。 UFW (Uncomplicated Firewall) を使用してファイアウォール ルールを構成できます。
sudo ufw allow OpenSSH # 允许SSH访问 sudo ufw allow 'Nginx HTTP' # 允许HTTP访问 sudo ufw enable # 启用防火墙
上記のコマンドを使用すると、SSH および HTTP アクセスを許可し、ファイアウォールが他の不正な接続をフィルタリングしてブロックできるようになります。
PM2 を使用して Node.js アプリケーションを管理する
PM2 を使用すると、Node.js アプリケーションがサーバー上で常に安定して実行され、アプリケーションが自動的に起動して監視されます。以下は、PM2 を使用してアプリケーションを管理するためのサンプル コマンドです。
pm2 start app.js --name myapp # 启动应用程序 pm2 list # 查看当前运行的应用程序 pm2 restart myapp # 重启应用程序
PM2 には、ニーズに応じて変更およびカスタマイズできるさらに多くのコマンドと機能が用意されています。
上記の手順により、NGINX と PM2 を使用して安全な VPS 環境を構築できます。もちろん、これは単なる基本的な構成例であり、特定のニーズに応じて変更および改善できます。使用する場合は、関連ドキュメントをよく読み、セキュリティに関するベストプラクティスに従ってください。
以上がNGINX と PM2 を使用して安全な VPS 環境を構築する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。