海外サーバーvultr

Ubuntu 14.04でUbuntuファイアウォール(UFW)を設定する

あなたがあなた自身のサーバを動かすときセキュリティは非常に重要です。あなたは、許可されたユーザーだけがあなたのサーバー、設定、そしてサービスにアクセスできることを確認したいです。

Ubuntuには、プリロードされたファイヤーウォールがあります。それはUFW(Ubuntu-Firewall)と呼ばれています。UFWはかなり基本的なファイヤーウォールですが、ユーザーフレンドリーで、トラフィックのフィルタリングに優れており、優れたドキュメントがあります。このファイヤーウォールを自分で設定するには、Linuxに関する基本的な知識があれば十分です。

UFWをインストール

UFWは通常Ubuntuにデフォルトでインストールされていることに注意してください。しかし、どちらかといえば、あなたはそれを自分でインストールすることができます。UFWをインストールするには、次のコマンドを実行します。

sudo apt-get install ufw

接続を許可する

あなたがウェブサーバを運営しているなら、あなたは明らかにあなたのウェブサイトにアクセスできる世界を望んでいます。したがって、WebのデフォルトのTCPポートが開いていることを確認する必要があります。

sudo ufw allow 80/tcp

一般的には、次の形式を使用して必要なポートを許可することができます。

sudo ufw allow <port>/<optional: protocol>

接続を拒否する

特定のポートへのアクセスを拒否する必要がある場合は、これを使用してください。

sudo ufw deny <port>/<optional: protocol>

たとえば、デフォルトのMySQLポートへのアクセスを拒否しましょう。

sudo ufw deny 3306

UFWは、最も一般的なサービスポート用の単純化された構文もサポートしています。

root@127:~$ sudo ufw deny mysql
Rule updated
Rule updated (v6)

信頼できるIPアドレス以外の場所(例:officeまたはhome)からSSHポート(デフォルトではポート22)へのアクセスを制限することを強くお勧めします。

信頼できるIPアドレスからのアクセスを許可する

通常、アクセスを許可する必要があるのは、ポート80などの公に開かれたポートだけです。他のすべてのポートへのアクセスは制限または制限する必要があります。SSHまたはFTPを介してサーバーにアクセスできるようにするには、自宅/オフィスのIPアドレスをホワイトリストに登録することをお勧めします(できれば、静的IPであることが前提です)。

sudo ufw allow from 192.168.0.1 to any port 22

MySQLポートへのアクセスも許可しましょう。

sudo ufw allow from 192.168.0.1 to any port 3306

今よく見えます。次へ移りましょう。

UFWを有効にする

UFWを有効にする(または元に戻す)前に、SSHポートがIPアドレスからの接続を受信できることを確認する必要があります。UFWファイヤーウォールを起動または有効にするには、次のコマンドを使用します。

sudo ufw enable

実行時すると次のメッセージが表示されます:

root@127:~$ sudo ufw enable
Command may disrupt existing ssh connections. Proceed with operation (y|n)?

入力Yを、を押してくださいファイヤーウォールを有効にします。

Firewall is active and enabled on system startup

UFWの状態を確認する

あなたのすべてのルールを見てください。

sudo ufw status

次のような出力が表示されます。

sudo ufw status
Firewall loaded

To                         Action  From
--                         ------  ----
22:tcp                     ALLOW   192.168.0.1
22:tcp                     DENY    ANYWHERE

より詳細なステータスレポートを表示するには、 “verbose”パラメータを使用します。

sudo ufw status verbose

UFWを無効化/リロード/再起動

UFWを無効(停止)にするには、このコマンドを実行します。

sudo ufw disable

UFWをリロードする必要がある場合(リロードルール)、以下を実行してください。

sudo ufw reload

UFWを再起動するには、まずUFWを無効にしてから再度有効にする必要があります。

sudo ufw disable
sudo ufw enable

UFWを有効にする前に、SSHポートがあなたのIPアドレスに許可されていることを確認してください。

ルールを削除する

UFWのルールを管理するには、それらをリストする必要があります。あなたはUFWステータスをパラメータ “番号付き”でチェックすることでそれを行うことができます。次のような出力が表示されます。

root@127:~$ sudo ufw status numbered
Status: active

To                              Action      From
--                              ------      ----
[ 1] 22                         ALLOW IN    192.168.0.1
[ 2] 80                         ALLOW IN    Anywhere
[ 3] 3306                       ALLOW IN    192.168.0.1
[ 4] 22                         DENY IN     Anywhere

角かっこ内の数字に気づいた?さて、これらのルールを削除するには、これらの番号を使う必要があります。

sudo ufw delete [number]

IPv6サポートを有効にする

VPSでIPv6を使用している場合は、UFWでIPv6サポートが有効になっていることを確認する必要があります。これを行うには、設定ファイルをテキストエディタで開きます。

sudo nano /etc/default/ufw

開いたら、それIPV6が “yes”に設定されていることを確認してください。

IPV6=yes

この変更を加えたら、ファイルを保存してください。その後、UFWを無効にしてから再度有効にして再起動します。

sudo ufw disable
sudo ufw enable

デフォルト設定に戻る

デフォルト設定に戻る必要がある場合は、次のコマンドを入力してください。これはあなたの変更を元に戻すでしょう。

sudo ufw reset

結論

全体として、UFWは最も一般的なハッキングの試みからあなたのVPSを保護することができます。もちろん、あなたのセキュリティ対策は、単にUFWを使用するよりも詳細にする必要があります。しかし、それは良い(そして必要な)スタートです。

UFWの使用例がさらに必要な場合は、UFW – Community Help Wikiを参照してください。