Node.jsで暗号資産アービトラージ

ビットコイントレード中心にNode.jsで実際に作るためのレシピ

Webサーバ公開時に最低限設定しておきたいCentOS7セキュリティ設定

自作システムをWebサーバ化するために必要なCentOS側のセキュリティ設定について記述したいと思います。

MongoDBに設定したい最低限のセキュリティ設定は以前の記事を参照ください。

環境

まず環境ですが、さくらVPSにCentOS7を入れています。

さくらVPS月数百円なので低コストです。ただ、今から構築するなら勉強目的でAWSとかherokuとか使ってみたいかも。触ったことないですが。

最近は金融機関でも本番環境や開発環境でもAWSとか使われてきてる印象あります。
あと、Puppeteerでスクレイピングしてるとリソース不足感があってherokuとかでスケール拡張したいなと思ったりします。

SSDプランが月々685円から使える!さくらのVPS

さくらVPSの推奨セキュリティ設定の確認

さくらVPSはレンタル時に最低限のセキュリティ設定が推奨されているので、Webサーバ化する前に確認しておきましょう。


チュートリアル:CentOS 7(さくらのVPS)サーバ作成直後に設定しておくべき初期セキュリティ設定


環境設定の際の注意点

yum updateを実行する前に

ちなみにSSHのポート番号を変更すると思いますが、Linuxのパッケージ管理ツールyumのリポジトリ更新コマンド「yum update」を実行すると、firewalldの設定が元に戻ってしまうので注意です。
SSHアクセスできなくなります。


yum updateするときは、ssh接続からログアウトする前にfirewalldの設定を見直すようにしましょう。
万が一、yum updateしてssh接続からログアウトしてしまったら、VPSのWebコンソールにアクセスしてfirewalldの設定を更新すれば元に戻ります。


Macの場合は秘密鍵をキーチェーンに登録してしまおう

Macの場合はターミナルから以下のコマンドを実行して秘密鍵をキーチェーンに登録しておくと入力の手間が省けます。
(キーチェーンはパスワードやアカウント情報を記録するmacOS アプリケーションです)

ssh-add -K ~/.ssh/id_rsa

忘れやすいfirewalldの設定

firewalldに公開したいWebサービスのポートを開放しましょう。よく設定を忘れて時間を消費する項目なので、しっかり使い方を覚えておきましょう。

//Express.jsのポート4000とhttpsサービスを設定する
sudo firewall-cmd --zone=public --add-port=4000/tcp --permanent
sudo firewall-cmd --zone=public --add-service=https --permanent


Express.jsのポートはデフォルトポートが3000ですが、別の番号にしておいたほうがセキュリティ上は望ましいです。また、アプリケーションもhttps対応しておくと安心です。
下記の記事で解説しているので参考にしてみてください。

www.kennejs.com


自作アプリケーション初心者にはさくらVPSが手軽でおすすめです。