アンドロイド

Debian 9でufwを使用してファイアウォールを設定する方法

AE T L3 Ubuntu Installation & Basic Linux Commands

AE T L3 Ubuntu Installation & Basic Linux Commands

目次:

Anonim

Debianには、ベースシステムの一部としてインストールされたiptablesでファイアウォールを管理するためのツールを提供するいくつかのパッケージが含まれています。 初心者がiptablesツールを使用してファイアウォールを適切に構成および管理する方法を学ぶのは複雑な場合がありますが、UFWはそれを単純化します。

UFW(Uncomplicated Firewall)は、iptablesファイアウォールルールを管理するための使いやすいフロントエンドであり、その主な目標は、iptablesの管理を簡単にすること、または名前が複雑でないことを示すことです。

このチュートリアルでは、Debian 9でUFWを使用してファイアウォールを設定する方法を示します。

前提条件

このチュートリアルを進める前に、必ずsudo権限を持っているようにログインしているユーザーを作ります。

UFWをインストールする

Debian 9では ufw はデフォルトではインストールされません。次のように入力して ufw パッケージをインストールできます。

sudo apt install ufw

UFWステータスを確認する

インストールプロセスが完了したら、次のコマンドでUFWのステータスを確認できます。

sudo ufw status verbose

出力は次のようになります。

Status: inactive

UFWはデフォルトで無効になっています。 インストールは、サーバーからのロックアウトを回避するために、ファイアウォールを自動的にアクティブにしません。

UFWがアクティブになっている場合、出力は次のようになります。

UFWデフォルトポリシー

デフォルトでは、UFWはすべての着信接続をブロックし、すべての発信接続を許可します。 つまり、サーバーにアクセスしようとするユーザーは、ポートを特別に開かない限り接続できず、サーバーで実行されているすべてのアプリケーションとサービスは外部にアクセスできます。

デフォルトのポリシーは /etc/default/ufw ファイルで定義されており、 sudo ufw default を使用して変更でき sudo ufw default コマンド。

ファイアウォールポリシーは、より詳細でユーザー定義のルールを構築するための基盤です。 ほとんどの場合、最初のUFWデフォルトポリシーが出発点として適切です。

アプリケーションプロファイル

apt 使用してパッケージをインストールすると、サービスを説明し、 /etc/ufw/applications.d 設定を含むアプリケーションプロファイルが /etc/ufw/applications.d ディレクトリに追加されます。

システムタイプで利用可能なすべてのアプリケーションプロファイルをリストするには:

sudo ufw app list

システムにインストールされているパッケージに応じて、出力は次のようになります。

Available applications: DNS IMAP IMAPS OpenSSH POP3 POP3S Postfix Postfix SMTPS Postfix Submission…

特定のプロファイルおよび含まれるルールに関する詳細を検索するには、次のコマンドを使用します。

sudo ufw app info OpenSSH

Profile: OpenSSH Title: Secure shell server, an rshd replacement Description: OpenSSH is a free implementation of the Secure Shell protocol. Port: 22/tcp

A上記の出力は、OpenSSHプロファイルがポート 22 開くことを示しています。

SSH接続を許可する

UFWファイアウォールを有効にする前に、着信SSH接続を許可する必要があります。

リモートロケーションからサーバーに接続している場合(ほとんどの場合)、着信SSH接続を明示的に許可する前にUFWファイアウォールを有効にすると、Debianサーバーに接続できなくなります。

着信SSH接続を許可するようにUFWファイアウォールを構成するには、次のコマンドを実行します。

sudo ufw allow OpenSSH

Rules updated Rules updated (v6)

SSHサーバーがデフォルトのポート22以外のポートでリッスンしている場合、そのポートを開く必要があります。

たとえば、sshサーバーはポート 8822 でリッスンし、次のコマンドを使用してそのポートでの接続を許可できます。

sudo ufw allow 8822/tcp

UFWを有効にする

UFWファイアウォールが着信SSH接続を許可するように設定されたので、次を実行して有効にすることができます。

sudo ufw enable

Command may disrupt existing ssh connections. Proceed with operation (y|n)? y Firewall is active and enabled on system startup

ファイアウォールを有効にすると既存のssh接続が中断される可能性があるという警告が表示されます y Enter 押すだけです。

他のポートでの接続を許可する

サーバーで実行されるアプリケーションと特定のニーズに応じて、他のポートへの着信アクセスを許可する必要もあります。

以下は、いくつかの最も一般的なサービスへの着信接続を許可する方法のいくつかの例です。

ポート80を開く-HTTP

HTTP接続は、次のコマンドで許可できます。

sudo ufw allow

http プロファイルの代わりに、ポート番号 80 使用できます。

sudo ufw allow 80/tcp

ポート443を開く-HTTPS

HTTP接続は、次のコマンドで許可できます。

sudo ufw allow

https 代わりに同じことを実現するには、ポート番号 443 使用できます。

sudo ufw allow 443/tcp

ポート8080を開く

sudo ufw allow 8080/tcp

ポート範囲を許可

UFWを使用すると、ポート範囲へのアクセスを許可することもできます。 UFWでポート範囲を許可する場合、 tcp または udp いずれかのプロトコルを指定する必要があります。

たとえば、 tcp udp 両方で tcp ポートを許可するには、次のコマンドを実行します。

sudo ufw allow 7100:7200/tcp sudo ufw allow 7100:7200/udp

特定のIPアドレスを許可する

sudo ufw allow from 64.63.62.61

特定のポートで特定のIPアドレスを許可する

特定のポートでアクセスを許可するには、IPアドレスが64.63.62.61の作業マシンのポート22で次のコマンドを使用するとします。

sudo ufw allow from 64.63.62.61 to any port 22

サブネットを許可する

IPアドレスのサブネットへの接続を許可するコマンドは、単一のIPアドレスを使用する場合と同じですが、唯一の違いは、ネットマスクを指定する必要があることです。 たとえば、192.168.1.1から192.168.1.254の範囲のIPアドレスからポート3360(MySQL)へのアクセスを許可する場合、次のコマンドを使用できます。

sudo ufw allow from 192.168.1.0/24 to any port 3306

特定のネットワークインターフェイスへの接続を許可する

特定のポートでのアクセスを許可するには、ポート3360を特定のネットワークインターフェース eth2 のみに allow in on allow in on およびネットワークインターフェースの名前を使用します。

sudo ufw allow in on eth2 to any port 3306

接続を拒否する

すべての着信接続のデフォルトポリシーは deny 設定されます。これは、特に接続を開かない限り、UFWがすべての着信接続をブロックすることを意味します。

ポート 80 443 を開き、サーバーが 23.24.25.0/24 ネットワークから攻撃を受けている 23.24.25.0/24 ます。 23.24.25.0/24 からのすべての接続を 23.24.25.0/24 には、次のコマンドを使用します。

sudo ufw deny from 23.24.25.0/24

sudo ufw deny from 23.24.25.0/24 to any port 80 sudo ufw deny from 23.24.25.0/24 to any port 443

拒否ルールを作成することは、許可ルールを作成することと同じです allow deny に置き換えるだけです。

UFWルールを削除する

UFWルールを削除するには、ルール番号と実際のルールを指定する2つの方法があります。

UFWを初めて使用する場合は特に、ルール番号でUFWルールを削除する方が簡単です。

ルール番号でルールを削除するには、まず削除するルールの番号を見つける必要があります。 それを行うには、次のコマンドを実行します。

sudo ufw status numbered

Status: active To Action From -- ------ ---- 22/tcp ALLOW IN Anywhere 80/tcp ALLOW IN Anywhere 8080/tcp ALLOW IN Anywhere

ポート8080への接続を許可するルール番号3を削除するには、次のコマンドを使用できます。

sudo ufw delete 2

2番目の方法は、実際のルールを指定してルールを削除することです。 たとえば、ポート 8069 を開くルールを追加した場合、次の方法で削除できます。

sudo ufw delete allow 8069

UFWを無効にする

何らかの理由でUFWを停止し、すべてのルールの実行を無効にしたい場合:

sudo ufw disable

後でUTFを再度有効にし、すべてのルールをアクティブにする場合は、次のように入力します。

sudo ufw enable

UFWをリセット

UFWをリセットすると、UFWが無効になり、アクティブなルールがすべて削除されます。 これは、すべての変更を元に戻し、新たに開始する場合に役立ちます。

UFWをリセットするには、次のコマンドを入力するだけです。

sudo ufw reset

結論

Debian 9マシンにUFWファイアウォールをインストールして設定する方法を学びました。 システムの適切な機能に必要なすべての着信接続を許可し、不要な接続をすべて制限してください。

ufw firewall iptables debianセキュリティ