Linuxのファイアウォールの制約と開いているポートのルーティング、アドレス変換

ファイアウォールの制限の、Linuxの場合:

防火壁

  • ファイアウォールはまた、障壁は、内部ネットワークと外部ネットワークの間に配置され、保護壁として知られているシステム管理者は、データパケットへのアクセスを制御するために予め定義された規則に従っています。ファイアウォールは、役割入力する権限のないユーザーを防ぐためである防衛システム、の最初の行です。
  • ネットワークでは、いわゆる「ファイアウォール」内部ネットワークのための方法を指し、別途公衆アクセスネットワークは、それが実際に分離技術です。ファイアウォールは、あなたが「同意しない」人とデータをシャットアウトしながら、それは、あなたがあなたのネットワークやデータを入力するために「同意」することを可能にする、二つのネットワークにおけるアクセス制御の実装は規模を伝えています。
  • netfilterのカーネルファイアウォールアーキテクチャは、セキュリティポリシーは、パケットフィルタリング、パケット処理、マスカレード、透過プロキシ、動的ネットワーク・アドレス変換など、多くの機能で実現することができます
  • システムは、(netfilterのデータ変更の)ファイアウォールポリシーを管理するための2つの言及した管理ツールを提供しています。firewlldとiptables。

filrewalld

  • Firewalld動的なファイアウォールデーモンは、ネットワークとある程度そのリンクとのインターフェイスに信頼を割り当てるために、ネットワーク「ゾーン」をサポートするために動的に管理ファイアウォールを提供します。
  • / usr / libに/ firewalld /と/ etc / firewalld /さまざまなXMLファイルに保存されているfirewalldの設定
  • firewalldは、グラフィカルインタフェースの管理(ファイアウォール-config)コマンドと管理(ファイアウォール-CMD)を提供します

firewalld域(ゾーン)

ネットワークの利用者に与えられた信頼のレベルに基づいて、ネットワークファイアウォールは、9種類の領域に分割することができます。

ここに画像を挿入説明

  • のみ接続172.25.254.16:
    [ルートサーバ@〜]#--direct --add-ファイアウォール-CMDルール1 -p IPv4のTCPは、フィルタ22 --dportはACCEPT -j 172.25.254.16 -s INPUTで
    の成功を

  • 172.25.254.16接続のみが許可され、他のホストが接続することができます:
    [ルートサーバー@〜]#--direct --add-ファイアウォール-cmdの22をフィルタリング--dportルールのIPv4 TCPは、INPUT 1 -pです。!172.25.254.16 -s ACCEPT -j
    成功

  • 唯一172.25.254.16の接続設定を削除:
    [ルートサーバーを@〜]#--direct --remove-ファイアウォール-cmdのルール22をフィルタリング--dport 1 -p IPv4のTCPは、INPUTがACCEPT -j 172.25.254.16 -sです。
    成功

  • 削除のみ172.25.254.16の接続を許可、他のホストを接続するように設定されている:
    [ルート@サーバー〜]#の--direct --remove-1ルールのIPv4フィルタをファイアウォール-CMD INPUT -p tcpのは、22を--dport!172.25.254.16 -s ACCEPT -j
    成功

ファイアウォール設定

ファイアウォールポリシーを設定するためのグラフィカル・インターフェースへのファイアウォール設定#
1ランタイムをすぐに有効にする一時的なポリシーを設定しますが、システムの再起動後、またはファイアウォールの設定構成障害をリロード

ここに画像を挿入説明
2永久永久に一度永久設定、ファイアウォール設定を再ロードする必要性を設定した後、設定

ここに画像を挿入説明
ファイアウォール-CMDの基本的なコマンド:

1、オープンfirewalldサービス

为了避免firewlld和iptables产生冲突,再进行实验时候,先关闭iptables,开启firewalld。
systemctl stop iptables #关闭iptables服务
systemctl mask iptables.service #锁定iptables服务
systemctl disable iptables #设置iptables开机不自启动
systemctl start firewalld #启动firewalld服务
systemctl enable firewalld #设置firewalld开机自启动

2、域的查看和设置

firewall-cmd --get-zones #查看所有的域
firewall-cmd --get-default-zone #查看默认的域
firewall-cmd --set-default-zone=trusted #设置默认的域
firewall-cmd --state #查看防火墙状态,开启为running 关闭为 not running。

3 、查看域的防火墙策略

firewall-cmd --list-all #查看默认域的所有防火墙策略,没有指定域就是查看默认域
firewall-cmd --list-all --zone=trusted # 查看指定域的所有防火墙策略
firewall-cmd --list-services --zone=public #查看指定域的某一项策略(services)
firewall-cmd --list-ports --zone=public # 查看指定域的某一项策略(ports)
firewall-cmd --list-all-zones # 查看所有域的所有防火墙策略

firewall-cmd --add-service=ftp #临时添加ftp服务到默认域,立即生效
firewall-cmd --add-service=http --permanent #永久添加http服务到默认域,加载后生效
firewall-cmd --reload #重新加载配置,临时添加的服务失效,永久添加的服务生效。

二、路由端口打开,地址转换

实验目的:当其他ip连接该ip 时,会默认连接到172.25.254.16这个ip。

服务端
[root@server ~]# firewall-cmd --list-all
public (default, active)
interfaces: eth0
sources:
services: dhcpv6-client ftp ssh
ports:
masquerade: no #把no改成“yes",即把路由功能打开。
icmp-blocks:
rich rules:

[root@server ~]# firewall-cmd --permanent --add-masquerade
success
[root@server ~]# systemctl restart firewalld #开启路由功能后一定要重新启动防火墙
[root@server ~]# firewall-cmd --list-all
public (default, active)
interfaces: eth0
sources:
services: dhcpv6-client ftp ssh
ports:
masquerade: yes
forward-ports:
icmp-blocks:
rich rules:

[ルート@サーバー〜]#ファイアウォールは --add-フォワードポートを-cmd =ポート= 22:プロト= TCP:toport = 22:toaddr = 172.25.254.35# IP他のIP IPに接続したときに、アドレス変換を追加し、しますIPへのデフォルトの接続:172.25.254.35
成功
[ルートサーバー@〜]#--list-ファイアウォール-cmdのすべて
のパブリック(デフォルト、アクティブ)
インターフェース:eth0の
出典:
サービス:DHCPv6のクライアントFTP SSH-
ポート:
仮面舞踏会:はい
フォワード・ポート:ポート= 22です:TCP =プロト:toport = 22は次のとおりです。toaddr = 172.25.254.35
ICMP-ブロック:
リッチルール:

クライアント:
テスト:
[ルート@のkehu〜]#のSSHの[email protected]

##デフォルトの変換アドレスは、IPを削除するために追加されました:
[ルート@サーバー〜]#ファイアウォール-CMD --remove-フォワードポート=ポート= 22:プロト= TCP:toport = 22:## toaddr = 172.25.254.35は、変換を削除しますアドレスのIP
成功

おすすめ

転載: blog.csdn.net/Y950904/article/details/89970370