Close icon
2019月10日17日

さくらのVPS CentOS 7でファイアーウォールの設定

パケットフィルタの設定

さくらのVPSのコントロールパネルでパケットフィルタの設定を確認すると、パケットフィルタの利用設定が利用する、接続可能ポートにSSH(22)が設定されています。

パケットフィルタの設定

ファイアウォールの設定はサーバー側で行うので、パケットフィルタの利用設定は利用しないに設定します。

パケットフィルタの設定

このあと、さくらのVPS - コントロールパネルでコンソールを起動しファイアウォールの設定を進めます。

ファイアウォールの設定

firewalld.serviceの状態を確認すると起動していません。

$ systemctl status firewalld.service
● firewalld.service - firewalld - dynamic firewall daemon
Loaded: loaded (/usr/lib/systemd/system/firewalld.service; disabled; vendor preset: enabled)
Active: inactive (dead)
Docs: man:firewalld(1)

firewalld.serviceを起動します。

$ sudo systemctl start firewalld.service

firewalld.serviceの状態を確認するとactiveになっているのでOK

firewalld.serviceを自動起動するように設定

$ sudo systemctl enable firewalld.service

httpとhttpsを許可する

$ sudo firewall-cmd --zone=public --add-service=http --permanent
$ sudo firewall-cmd --zone=public --add-service=https --permanent
$ sudo firewall-cmd --reload

設定を確認する

$ sudo firewall-cmd --list-all
public (active)
target: default
icmp-block-inversion: no
interfaces: eth0
sources:
services: dhcpv6-client http https ssh
ports:
protocols:
masquerade: no
forward-ports:
source-ports:
icmp-blocks:
rich rules:

sshのポートを変更

sshd_configを開きポートを設定します。

$ sudo vi /etc/ssh/sshd_config

今回はポート番号を61203に設定しました。

Port 61203

rootユーザーでsshでログインできないようにnoを設定

PermitRootLogin = no

パスワード認証を許可する

PasswordAuthentication yes

sshdを起動する

$ sudo systemctl start sshd.service

sshdが起動しているか確認する

$ sudo systemctl status sshd.service

ファイアウォールのsshのデフォルトの設定を確認するとportが22になっています。

$ cat /usr/lib/firewalld/services/ssh.xml
<?xml version="1.0" encoding="utf-8"?>

SSH
Secure Shell (SSH) is a protocol for logging into and executing commands on remote machines. It provides secure encrypted communications. If you plan on accessing your machine remotely > via SSH over a firewalled interface, enable thisoption. You need the openssh-server package installed for this option to be useful.

ポート番号を変更したい場合は、このファイルを/etc/firewalld/にコピーして編集します。

$ sudo cp /usr/lib/firewalld/services/ssh.xml /etc/firewalld/services/ssh.xml

$ sudo vi /etc/firewalld/services/ssh.xml

/etc/ssh/sshd_configに設定したポート番号を指定します。

<service>
  <short>SSH</short>  <description>Secure Shell (SSH) is a protocol for logging into and executing ccommands on remote machines. It provides secure encrypted communications. If youplan on accessing your machine remotely via SSH over a firewalled interface, enaable this option. You need the openssh-server package installed for this option tt
o be useful.</description>
  <port protocol="tcp" port="61203"/>
</service>

設定を反映します。

$ sudo firewall-cmd --reload

これでコマンドでポート番号を指定してsshで接続できるようになります。



アトトックラボとは

株式会社アトトックメンバー が技術の話、デザインの話、キャラクターの話、ときどき脱線してガジェットの話やライフハックの話など好きなことを書いています。


連載記事


最近の記事


タグ