ファイアウォールマスカレードファイアウォールとポート転送の例を設定します

サーバとウェブサーバはCentOSの7オペレーティングシステムを使用しているゲートウェイ、
ゲートウェイサーバーをインストール3ギガビットイーサネットは、インターネット、企業イントラネット、Webサーバに接続されています。
ファイアウォールマスカレードファイアウォールとポート転送の例を設定します
次のような要件がある
ens37アドレス192.168.1.1に接続されたネットワークカード、信頼ファイアウォール領域に割り当てられている; ens38接続サーバNICアドレス192.168.2.1ゲートウェイサーバがファイアウォールの外部の領域に割り当てられたインターネットカードens33パブリックIPアドレスに接続するように構成されています、DMZのファイアウォールに割り当てられています。
安全のためのリモート管理のためのSSHを介してサーバやゲートウェイサーバ、12345にデフォルトのSSHポート。
サーバは暗号化されていないHTTPトラフィックをフィルタリング、HTTPSオンになっています。
サーバーは、インターネットから拒否されたゲートウェイサーバーでpingをpingを拒否しました。
ネットワークユーザは、ゲートウェイサーバー経由でインターネットへのアクセスを共有する必要があります。
インターネットユーザーがWebサーバにアクセスする必要があります。
環境の基本的な構成:
ゲートウェイサーバーのNICの設定:

[root@localhost network-scripts]# ip a  = ip addr
2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether 00:0c:29:fc:60:4b brd ff:ff:ff:ff:ff:ff
    inet 100.0.0.1/8 brd 100.255.255.255 scope global ens33
       valid_lft forever preferred_lft forever
    inet6 fe80::5f65:9c3d:d218:7cea/64 scope link 
       valid_lft forever preferred_lft forever
3: ens36: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether 00:0c:29:fc:60:55 brd ff:ff:ff:ff:ff:ff
    inet 192.168.1.1/24 brd 192.168.1.255 scope global ens36
       valid_lft forever preferred_lft forever
    inet6 fe80::7456:2bbc:dc20:31bd/64 scope link 
       valid_lft forever preferred_lft forever
4: ens37: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether 00:0c:29:fc:60:5f brd ff:ff:ff:ff:ff:ff
    inet 192.168.2.1/24 brd 192.168.2.255 scope global ens37
       valid_lft forever preferred_lft forever
    inet6 fe80::1e90:6601:56c2:c9ba/64 scope link 
       valid_lft forever preferred_lft forever

開始するには、ゲートウェイサーバー上の転送をルーティング:

[root@localhost /]# vim /etc/sysctl.conf 
net.ipv4.ip_forward = 1
[root@localhost /]# sysctl -p
net.ipv4.ip_forward = 1

カードウェブサーバを設定します。

[root@localhost /]# ip a
2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether 00:0c:29:2f:24:4b brd ff:ff:ff:ff:ff:ff
    inet 192.168.2.10/24 brd 192.168.2.255 scope global ens33
       valid_lft forever preferred_lft forever
    inet6 fe80::19de:d9a7:568a:f34f/64 scope link 
       valid_lft forever preferred_lft forever
[root@localhost /]# route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         192.168.2.1     0.0.0.0         UG    100    0        0 ens33

インターネットテストマシンのネットワークカードの設定:

[root@localhost /]# ip a
2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether 00:0c:29:45:66:64 brd ff:ff:ff:ff:ff:ff
    inet 100.0.0.10/8 brd 100.255.255.255 scope global ens33
       valid_lft forever preferred_lft forever
    inet6 fe80::3ebc:8f75:cd28:e516/64 scope link tentative 
       valid_lft forever preferred_lft forever

Webサーバ環境を構築します:

[root@localhost ~]# systemctl start firewalld           #启动防火墙
[root@localhost ~]# yum -y install httpd mod_ssl          #安装httpd和mod_ssl
[root@localhost ~]# systemctl start httpd   #启动httpd服务
[root@localhost ~]# systemctl enable httpd          #设置为开机自启
[root@localhost ~]# vim /var/www/html/index.html          #新建网站测试首页文件
<h1>test.com </h1>
[root@localhost ~]# vim /etc/ssh/sshd_config              #更改SSH的侦听端口(需关闭SELinux):
          ................
Port 12345
         ................
[root@localhost ~]# systemctl restart sshd

サイトサーバー上のFirewalldファイアウォールの設定:
1.設定されたデフォルトのエリアDMZエリア:

[root@localhost ~]# firewall-cmd --set-default-zone=dmz
success

2、オープンHTTPSサービスDMZエリアやTCPポート12345を追加します。

[root@localhost ~]# firewall-cmd --zone=dmz --add-service=https --permanent
success
[root@localhost ~]# firewall-cmd --zone=dmz --add-port=12345/tcp --permanent
success

3は、pingを禁止します:

[root@localhost ~]# firewall-cmd --add-icmp-block=echo-request --zone=dmz --permanent
success

4、それはデフォルトのSSHポート定義済みのサービスを変更したとして、それが事前に定義されたSSHサービスを削除します:

[root@localhost ~]# firewall-cmd --zone=dmz --remove-service=ssh --permanent
success

5、firewalld設定を再ロードし、以前の設定を表示します。

[root@localhost ~]# firewall-cmd --reload
success
[root@localhost ~]# firewall-cmd --list-all
dmz (active)
  target: default
  icmp-block-inversion: no
  interfaces: ens33
  sources: 
  services: https
  ports: 12345/tcp
  protocols: 
  masquerade: no
  forward-ports: 
  source-ports: 
  icmp-blocks: echo-request
  rich rules: 

:firewalldにゲートウェイサーバーのファイアウォールを設定し
たエリアにネットワークカードを追加し、1:

[root@localhost /]# systemctl start firewalld                     #启用防火墙
[root@localhost /]# firewall-cmd --set-default-zone=external          #设置默认区域为external
success
[root@localhost /]# firewall-cmd --change-interface=ens37 --zone=trusted    #将ens37添加至trusted区域
The interface is under control of NetworkManager, setting zone to 'trusted'.
success
[root@localhost /]# firewall-cmd --change-interface=ens38 --zone=dmz     #将ens38添加至dmz区域
The interface is under control of NetworkManager, setting zone to 'dmz'.
success

2、設定を確認し、恒久的として保存

[root@localhost /]# firewall-cmd --get-active-zones 
dmz
  interfaces: ens37
external
  interfaces: ens33
trusted
  interfaces: ens36
[root@localhost /]# firewall-cmd --runtime-to-permanent          # 将当前的配置保存到文件中
success

3、内部ホストのテストに:
ファイアウォールマスカレードファイアウォールとポート転送の例を設定します

4.変更SSHポートをリスニングし、(SELinuxをクローズする)サービスを再起動します。

[root@localhost ~]# vim /etc/ssh/sshd_config      
          ................
Port 12345
         ................
[root@localhost ~]# systemctl restart sshd

図5に示すように、外部ポート12345 TCP領域の構成が追加されました:

[root@localhost /]# firewall-cmd --zone=external --add-port=12345/tcp --permanent 
success

6、SSHサービスを削除するには、外部エリア:

[root@localhost /]# firewall-cmd --zone=external --remove-service=ssh --permanent 
success

7、外部領域禁止のpingを設定します。

[root@localhost /]# firewall-cmd --zone=external --add-icmp-block=echo-request --permanent
success

8、ファイアウォールの設定をリロードします。

[root@localhost /]# firewall-cmd --reload
success

試験SSH接続:
インターネットテスタポート12345でSSHを介してゲートウェイサーバの外部インタフェースアドレスを結びます。

[root@localhost /]# ssh -p 12345 100.0.0.1
The authenticity of host '[100.0.0.1]:12345 ([100.0.0.1]:12345)' can't be established.
ECDSA key fingerprint is 68:df:0f:ac:c7:75:df:02:88:7d:36:6a:1a:ae:27:23.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '[100.0.0.1]:12345' (ECDSA) to the list of known hosts.
[email protected]'s password: 
Last login: Sun Sep  1 16:36:33 2019
[root@localhost ~]# 

ネットワークテスターのSSHログインウェブサイトサーバのポート12345を使用します。

[root@localhost /]# ssh -p 12345 192.168.2.10
The authenticity of host '[192.168.2.10]:12345 ([192.168.2.10]:12345)' can't be established.
ECDSA key fingerprint is 68:df:0f:ac:c7:75:df:02:88:7d:36:6a:1a:ae:27:23.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '[192.168.2.10]:12345' (ECDSA) to the list of known hosts.
[email protected]'s password: 
Last login: Sun Sep  1 16:36:39 2019
[root@localhost ~]# 

IPマスカレードやポート転送の実装:
1、テスト用のインターネットテスター上でWebサービスを構築します:

[root@localhost ~]# yum -y install httpd
[root@localhost ~]# vim /var/www/html/index.html
<h1> www.baidu.com</h1>
[root@localhost ~]# systemctl enable httpd
[root@localhost ~]# systemctl start httpd

2、社内試験機とDMZサイトのサービスエリアは、インターネットサイト(ない場合はアクセスをアクセスすることができ、それは、ファイアウォールの設定の問題パブリックネットワークテスターは、ファイアウォールの最初の公開テストマシン、または関連のリリースをオフにすることができかもしれトラフィックサービスすることができます):
ファイアウォールマスカレードファイアウォールとポート転送の例を設定します
3は、ゲートウェイサーバの外部領域がマスカレード開かれ表示します。

[root@localhost /]# firewall-cmd --list-all --zone=external 
external (active)
  target: default
  icmp-block-inversion: no
  interfaces: ens33
  sources: 
  services: 
  ports: 12345/tcp
  protocols: 
  masquerade: yes                     # 表示地址伪装已启用
  forward-ports: 
  sourceports: 
  icmp-blocks: echo-request
  rich rules: 

ソースアドレス192.168.1.0/24ネットワークセグメントを装っ4、オープンのみアドレスIP。
閉じるマスカレードゲートウェイサーバーの外部デフォルトのアドレスに、外部領域内のアドレス192.168.1.0/24のネットワークセグメントを装ったアドレスを開くために、ソースのIPアドレスを必要とする豊富なルールを追加します。

[root@localhost ~]# firewall-cmd --remove-masquerade --zone=external 
success
[root@localhost ~]# firewall-cmd --zone=external --add-rich-rule='rule family=ipv4 source address=192.168.1.0/24 masquerade'
success

テストアクセスDMZの領域でアクセスすることは不可能見つけ、それがネットワーク内でホストすることができます:

[root@localhost /]# curl http://100.0.0.10
curl: (7) Failed connect to 100.0.0.10:80; No route to host

:5、インターネットユーザーが内部Webサーバにアクセスすることができます実現するためのポート転送を設定する
ゲートウェイサーバ上で設定:

[root@localhost /]# firewall-cmd --zone=external --add-forward-port=port=443:proto=tcp:toaddr=192.168.2.10
success

インターネット上でのアクセス、イントラネットのWebサーバーが正常にマシンをテスト:
ファイアウォールマスカレードファイアウォールとポート転送の例を設定します
第六は、達成するための豊富なポート転送ルールを使用します。

今の会社は新しいパブリックネットワークのIPアドレス100.0.0.254のために適用される場合は、設定した後、あなたはポート転送を再実行する必要があります。

図1に示すように、パブリックネットワークアドレス100.0.0.254新しいアプリケーションが第2のIPアドレスとして、外部インタフェースens33ゲートウェイサーバ上に配置されています。

[root@localhost /]# vim /etc/sysconfig/network-scripts/ifcfg-ens33
TYPE=Ethernet
BOOTPROTO=static
IPADDR0=100.0.0.1                                 # 改到下四行
PREFIX0=24
IPADDR1=100.0.0.254
PREFIX1=24                                           # 添加成两个IP
DEFROUTE=yes
PEERDNS=yes
PEERROUTES=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_PEERDNS=yes
IPV6_PEERROUTES=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=ens33
DEVICE=ens33
ONBOOT=yes
ZONE=external

[root@localhost /]# ifdown ens33;ifup ens33             # 重启网卡使配置生效
[root@localhost /]# ip a                           # 查看配置是否成功
2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether 00:0c:29:fc:60:4b brd ff:ff:ff:ff:ff:ff
    inet 100.0.0.1/24 brd 100.0.0.255 scope global ens33
       valid_lft forever preferred_lft forever
    inet 100.0.0.254/24 brd 100.0.0.255 scope global secondary ens33
       valid_lft forever preferred_lft forever
    inet6 fe80::5f65:9c3d:d218:7cea/64 scope link 
       valid_lft forever preferred_lft forever

2、金持ちのconfigureポート転送ルールを使用しました:

[root@localhost /]# firewall-cmd --zone=external --add-rich-rule='rule family=ipv4 destination address=100.0.0.254/24 forward-port port=443 protocol=tcp to-addr=192.168.2.10' 
success

3.検証:
ファイアウォールマスカレードファイアウォールとポート転送の例を設定します

おすすめ

転載: blog.51cto.com/14227204/2434539