ConoHa VPSのfirewallを設定する
前回SSH接続の22番ポートを閉じて新しいポートを割り当てたので、次はfirewall周りの設定をしていきます。
目次
まずはfirewallの設定を確認する。
まずは現在のfirewallの設定をみてみます。
初期状態だとfirewallはオフになっているのですが、firewallを有効にすると一時的にSSH接続ができなくなります。
なのでここからの作業はConoHaのサーバー管理画面のコンソールを使って作業を進めます。
コンソールを起動させてrootでログインします。
ログインが完了したら下記のコマンドでfirewallの設定を確認します。
# firewall-cmd --list-all
初期状態だと「FirewallD is not running」というメッセージが出てくると思います。
firewallを有効にする
firewallを有効にします。
# systemctl start firewalld.service
firewallを有効にしたらサーバー起動時に自動でfirewallが立ち上がるようにします。
# systemctl enable firewalld.service
firewallの設定をしていく
次にfirewallの設定をしていきます。
今回メールサーバーはConoHa以外のサーバーを利用するのでConoHaサーバーの方で使うのはSSHとHTTP、HTTPSのみなのでこれらを有効にしてあとの通信は閉じてしまいます。
ConoHaのマニュアルに主な通信とポート番号がありますので一応書いておきます。
ファイアウォールの設定をしてセキュリティを強化しよう
https://support.conoha.jp/v/hellovps-ex-01/?btn_id=v-hellovps-w-01-sidebar_v-hellovps-ex-01
ConoHa VPSサポート
- SSH 22番ポート
- HTTP 80番ポート
- HTTPS 443番ポート
- POP3 110番ポート
- IMAP 143番ポート
- SMTP 25番ポート
追記:ConoHaのVPSではKUSANAGI環境を簡単に管理できるKUSANAGI managerというサービスがあり、それを使う場合は60000番ポートの通信も有効化する必要があります。
SSHの通信を有効化
SSHの通信を有効化
# firewall-cmd --remove-service=ssh
SSHの通信をVPSを再起動時に自動で行われるようにします。
# firewall-cmd --permanent --zone=public --remove-service=ssh
前回SSHでの接続のポート番号を変えたので指定したポートを開ける。
例ではポート番号を45678にしました。
# firewall-cmd --add-port=45678/tcp
こちらも再起動時に自動化
# firewall-cmd --permanent --add-port=45678/tcp
追記
KUSANAGI managerを使う場合は60000番ポートも開けます。
# firewall-cmd --add-port=60000/tcp
自動化します。
# firewall-cmd --permanent --add-port=60000/tcp
HTTPとHTTPSの通信を有効化
# firewall-cmd --permanent --zone=public --add-service=http
# firewall-cmd --permanent --zone=public --add-service=https
firewallを再起動して設定を反映させる。
firewallを再起動します。
# firewall-cmd --reload
firewallの設定がちゃんと反映されているか確認します。
# firewall-cmd --list-all
serviceとportの行を確認して、SSH、HTTP、HTTPSが許可されていることと、45678のポートが開いていることを確認してください。
問題なければlogoutしてコンソールを閉じます。
まとめ
ここまででSSHのポート番号の変更とfirewallの設定まで完了しました。
次はSSH、SFTPのパスワードログインを禁止し、鍵をもっていないとサーバーに接続できないようにしていきます。