GNU/Linux >> Linux の 問題 >  >> Linux

Linuxファイアウォールの使用を開始する

賢明なファイアウォールは、ネットワークへの侵入に対するコンピュータの最初の防衛線です。家にいるときは、インターネットサービスプロバイダーが提供するルーターに組み込まれているファイアウォールの背後にいる可能性があります。ただし、外出中は、コンピューターで実行されているファイアウォールのみが使用されているため、Linuxコンピューターでファイアウォールを構成および制御することが重要です。 Linuxサーバーを実行している場合は、ファイアウォールを管理する方法を知って、ローカルとリモートの両方で不要なトラフィックからファイアウォールを保護できるようにすることも同様に重要です。

ファイアウォールをインストールする

多くのLinuxディストリビューションには、ファイアウォールがすでにインストールされて出荷されており、従来は iptablesでした。 。これは非常に効果的でカスタマイズ可能ですが、構成が複雑になる可能性があります。幸い、開発者は、ユーザーが長いiptablesルールを記述せずにファイアウォールを制御できるように、いくつかのフロントエンドを作成しました。

Fedora、CentOS、Red Hat、および同様のディストリビューションでは、デフォルトでインストールされるファイアウォールソフトウェアはファイアウォールです 、ファイアウォール-cmdで構成および制御されます 指図。 Debianおよび他のほとんどのディストリビューションでは、firewalldをソフトウェアリポジトリからインストールできます。 UbuntuにはUncomplicatedFirewall(ufw)が付属しているため、firewalldを使用するには、ユニバースを有効にする必要があります。 リポジトリ:

$ sudo add-apt-repository universe
$ sudo apt install firewalld

ufwも非アクティブ化する必要があります:

$ sudo systemctl disable ufw

しない理由はありません ufwを使用します。これは優れたファイアウォールフロントエンドです。ただし、この記事では、ほぼすべてのディストリビューションに同梱されているsystemdへの幅広い可用性と統合のため、firewalldに焦点を当てています。

ディストリビューションに関係なく、ファイアウォールを有効にするには、ファイアウォールがアクティブであり、起動時にロードされる必要があります:

$ sudo systemctl enable --now firewalld
ファイアウォールゾーンについて

Firewalldは、ファイアウォールの構成を可能な限りシンプルにすることを目的としています。これは、ゾーンを確立することによって行われます。 。ゾーンは、ほとんどのユーザーの日常のニーズに適合する、賢明で一般的なルールのセットです。デフォルトでは9つあります:

  • 信頼できる: すべてのネットワーク接続が受け入れられます。これは最も偏執的なファイアウォール設定であり、テストラボや、ローカルネットワーク上のすべての人が友好的であることがわかっている家族の家などの信頼できる環境でのみ使用する必要があります。
  • 自宅、職場、社内: これらの3つのゾーンでは、ほとんどの着信接続が受け入れられます。これらはそれぞれ、通常はアクティビティを期待しないポートのトラフィックを除外します。これらはいずれも、ネットワークトラフィックがポートを覆い隠すことを期待する理由がなく、通常はネットワーク上の他のユーザーを信頼する家庭環境で使用するのに適した設定です。
  • 公開: 公共エリアで使用します。これは偏執的な設定であり、ネットワーク上の他のコンピューターを信頼しない場合を対象としています。選択された一般的でほとんど安全な着信接続のみが受け入れられます。
  • dmz: DMZは非武装地帯の略です。このゾーンは、内部ネットワークへのアクセスが制限されている組織の外部ネットワーク上にある、公的にアクセス可能なコンピューターを対象としています。パーソナルコンピュータの場合、これは通常、有用なゾーンではありませんが、特定の種類のサーバーにとって重要なオプションです。
  • 外部: マスカレードが有効になっている外部ネットワークで使用する場合(プライベートネットワークのアドレスがパブリックIPアドレスにマップされ、その背後に隠されていることを意味します)。 dmzゾーンと同様に、SSHを含め、選択された着信接続のみが受け入れられます。
  • ブロック: このシステム内で開始されたネットワーク接続のみが可能であり、すべての着信ネットワーク接続はicmp-host-prohibitedで拒否されます メッセージ。これは非常に偏執的な設定であり、信頼できない環境や敵対的な環境にある特定の種類のサーバーやパーソナルコンピューターにとって重要なオプションです。
  • ドロップ: すべての着信ネットワークパケットは、応答なしでドロップされます。発信ネットワーク接続のみが可能です。これよりも偏執的な設定は、WiFiをオフにして、イーサネットケーブルを抜くことだけです。

/ usr / lib / firewalld / zone にある構成ファイルを確認することで、ディストリビューションまたはsysadminによって定義された各ゾーンおよびその他のゾーンについて読むことができます。 。たとえば、Fedora31に同梱されているFedoraWorkstationゾーンは次のとおりです。

$ cat /usr/lib/firewalld/zones/FedoraWorkstation.xml 
<?xml version="1.0" encoding="utf-8"?>
<zone>
  <short>Fedora Workstation</short>
  <description>Unsolicited incoming network packets are rejected from port 1 to 1024, except for select network services. Incoming packets that are related to outgoing network connections are accepted. Outgoing network connections are allowed.</description>
  <service name="dhcpv6-client"/>
  <service name="ssh"/>
  <service name="samba-client"/>
  <port protocol="udp" port="1025-65535"/>
  <port protocol="tcp" port="1025-65535"/>
</zone>
現在のゾーンを取得する

-get-active-zones を使用すると、現在のゾーンをいつでも確認できます。 オプション:

$ sudo firewall-cmd --get-active-zones

それに応じて、アクティブゾーンの名前とそれに割り当てられたネットワークインターフェイスを受け取ります。ラップトップの場合、これは通常、デフォルトゾーンにWiFiカードがあることを意味します:

FedoraWorkstation
  interfaces: wlp61s0
現在のゾーンを変更する

ゾーンを変更するには、ネットワークインターフェイスを別のゾーンに再割り当てします。たとえば、例を変更するには wlp61s0 パブリックゾーンへのカード:

$ sudo firewall-cmd --change-interface=wlp61s0 \
--zone=public

その他のLinuxリソース

  • Linuxコマンドのチートシート
  • 高度なLinuxコマンドのチートシート
  • 無料のオンラインコース:RHELの技術概要
  • Linuxネットワーキングのチートシート
  • SELinuxチートシート
  • Linuxの一般的なコマンドのチートシート
  • Linuxコンテナとは何ですか?
  • 最新のLinux記事

カフェに出かけてラップトップのセキュリティポリシーを強化する必要があると感じた場合でも、仕事をして開放する必要がある場合でも、いつでも理由を問わず、インターフェイスのアクティブゾーンを変更できます。イントラネットに接続するための一部のポート、またはその他の理由。 ファイアウォール-cmdのオプション タブを押すとオートコンプリート キー。キーワード「change」と「zone」を覚えている限り、メモリで学習するまでコマンドをつまずくことができます。

詳細

既存のゾーンのカスタマイズ、デフォルトゾーンの設定など、ファイアウォールでできることは他にもたくさんあります。ファイアウォールに慣れれば、オンラインアクティビティの安全性が高まるため、すばやく簡単に参照できるように虎の巻を作成しました。

ファイアウォールのチートシートをダウンロード
Linux
  1. LinuxでNetworkManagerを使い始める

  2. Linuxtacコマンドの使用を開始する

  3. LinuxでSSHを使い始める

  1. PiFlashの使用を開始する:LinuxでRaspberryPiを起動する

  2. Linuxcatコマンドの使用を開始する

  3. LinuxでPostgreSQLを使い始める

  1. Linux用のbtrfsの使用を開始する

  2. GNOMEを使い始めるためのアドバイス

  3. GNOMELinuxデスクトップの使用を開始する