CentOS7でIP Masquerade(firewalld),squid,dhcpd

更新日2017-10-09 (月) 14:29:37

CentOS7をサーバ(GUI使用)[DNS,メールサーバ、開発ツール]でインストール

仮想ブリッジvirbr0の無効化と有効化 [KVM導入時に作成されるブリッジインターフェース(virbr0]

# ifconfig

(略)
        TX packets 4  bytes 198 (198.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

virbr0: flags=4099<UP,BROADCAST,MULTICAST>  mtu 1500
        inet 192.168.122.1  netmask 255.255.255.0  broadcast 192.168.122.255
        ether 52:54:00:31:80:e8  txqueuelen 1000  (Ethernet)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 0  bytes 0 (0.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
  • 仮想マネージャのインストール
# yum install virt-manager
  • 仮想ブリッジvirbr0削除

GUIでvirt-manager

アプリケーション→システムツール→仮想マネージャ

編集→接続の詳細→仮想ネットワーク→「defalut」を選択して「○の中にX」のマークを選択して削除

IP Masquerade

ゾーンの設定

  • WAN:external (sshだけ通過)
  • LAN:trusted (すべての通信を許可:設定変更不可)

インターフェースの状態

# nmcli d
デバイス  タイプ    状態      接続
ens32     ethernet  接続済み  ens32
ens33     ethernet  切断済み  --
lo        loopback  管理無し  --
# ip addr show
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN qlen 1
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host
       valid_lft forever preferred_lft forever
2: ens32: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether 00:50:56:81:70:6c brd ff:ff:ff:ff:ff:ff
    inet 192.168.10.200/24 brd 192.168.10.255 scope global dynamic ens32
       valid_lft 345532sec preferred_lft 345532sec
    inet6 2001:a4e8:ee4e:0:f2ec:5e1:78bb:fd31/64 scope global noprefixroute dynamic
       valid_lft 14333sec preferred_lft 12533sec
    inet6 fe80::22c5:8de0:8bdc:1e1a/64 scope link
       valid_lft forever preferred_lft forever
3: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether 00:50:56:81:07:f0 brd ff:ff:ff:ff:ff:ff
  • ens33にIP 192.168.66.2を設定
# nmcli c modify ens33 ipv4.method manual
# nmcli c modify ens33 ipv4.addresses 192.168.66.2/24
# nmcli c down ens33; nmcli c up ens33
接続 'ens33' が正常に非アクティブ化されました (D-Bus アクティブパス: /org/freedesktop/NetworkManager/ActiveConnection/2)
接続が正常にアクティベートされました (D-Bus アクティブパス: /org/freedesktop/NetworkManager/ActiveConnection/3)
  • ネットワークの再起動
# systemctl restart network
# ip addr show

(略)
3: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP  qlen 1000
    link/ether 00:50:56:81:07:f0 brd ff:ff:ff:ff:ff:ff
    inet 192.168.66.2/24 brd 192.168.66.255 scope global ens33
       valid_lft forever preferred_lft forever
    inet6 fe80::250:56ff:fe81:7f0/64 scope link
       valid_lft forever preferred_lft forever
  • ens33のNICをゾーンtrustedに、ens32のNICをゾーンexternalに接続
# nmcli c mod ens33 connection.zone trusted
# nmcli c mod ens32 connection.zone external
# reboot
  • firewallのアクティブゾーンを表示
# firewall-cmd --get-active-zone
external
  interfaces: ens32
trusted
  interfaces: ens33
  • firewallのゾーンの内容を表示
# firewall-cmd --list-all --zone=trusted
trusted (active)
  target: ACCEPT
  icmp-block-inversion: no
  interfaces: ens33
  sources:
  services:
  ports:
  protocols:
  masquerade: no
  forward-ports:
  source-ports:
  icmp-blocks:
  rich rules:

serviceが空白はすべて許可

# firewall-cmd --list-all --zone=external
external (active)
  target: default
  icmp-block-inversion: no
  interfaces: ens32
  sources:
  services: ssh
  ports:
  protocols:
  masquerade: yes
  forward-ports:
  source-ports:
  icmp-blocks:
  rich rules:

masquerade: yesになっている→masqueradeが構成されている

Emacsのインストール

# yum install emacs

squidのインストール

# yum install squid
# cd /etc/squid/

proxyのポート変更

  • squid.conf
# Squid normally listens to port 3128
##http_port 3128
http_port 8080
  • 起動
# systemctl start squid
-確認
# ps -ax | grep squid
 3284 ?        Ss     0:00 /usr/sbin/squid -f /etc/squid/squid.conf
 3286 ?        S      0:00 (squid-1) -f /etc/squid/squid.conf
 3291 ?        S      0:00 (logfile-daemon) /var/log/squid/access.log
 3301 pts/1    S+     0:00 grep --color=auto squid
  • OS起動時に起動に設定
# systemctl enable squid
Created symlink from /etc/systemd/system/multi-user.target.wants/squid.service to /usr/lib/systemd/system/squid.service.
-OS起動時に起動の確認
# systemctl list-unit-files -t service | grep squid
squid.service                                 enabled

DHCPサーバのインストール

# yum install dhcp
  • 設定
# cd /etc/dhcp

以下を追加

-dhcp.conf
# ネームサーバーのホスト名, またはIPアドレス指定
option domain-name-servers     192.168.10.46; 

# デフォルト貸出期間
default-lease-time 600; 

# 最大貸出期間
max-lease-time 7200; 

# 正当な DHCP サーバーであることの宣言
authoritative; 

# ネットワークアドレスとサブネットマスク指定
subnet 192.168.66.0 netmask 255.255.255.0 {
     # 貸し出すIPアドレスの範囲指定
    range dynamic-bootp 192.168.66.201 192.168.66.254;
     # ブロードキャストアドレス指定
    option broadcast-address 192.168.66.255;
     # ゲートウェイアドレス指定
    option routers 192.168.10.245;
} 
  • 起動確認
# systemctl status dhcpd.service

dhcpd.service - DHCPv4 Server Daemon ← が緑であることを確認する。

    Loaded: loaded (/usr/lib/systemd/system/dhcpd.service; disabled; vendor preset: disabled)
    Active: active (running) since 月 2017-10-09 07:40:54 JST; 38s ago  ←「active (running)」を確認する。
      Docs: man:dhcpd(8)
            man:dhcpd.conf(5)
  Main PID: 3588 (dhcpd)
    Status: "Dispatching packets..."
    CGroup: /system.slice/dhcpd.service
            mq3588 /usr/sbin/dhcpd -f -cf /etc/dhcp/dhcpd.conf -user dhcpd -gr...
 
 10月 09 07:40:54 CentOS7-Router.ism21.net dhcpd[3588]: Sending on   LPF/ens3... 
 10月 09 07:40:54 CentOS7-Router.ism21.net dhcpd[3588]:
 10月 09 07:40:54 CentOS7-Router.ism21.net dhcpd[3588]: No subnet declaration...
 10月 09 07:40:54 CentOS7-Router.ism21.net dhcpd[3588]: ** Ignoring requests ...
 10月 09 07:40:54 CentOS7-Router.ism21.net dhcpd[3588]:    you want, please w...
 10月 09 07:40:54 CentOS7-Router.ism21.net dhcpd[3588]:    in your dhcpd.conf...
 10月 09 07:40:54 CentOS7-Router.ism21.net dhcpd[3588]:    to which interface...
 10月 09 07:40:54 CentOS7-Router.ism21.net dhcpd[3588]:
 10月 09 07:40:54 CentOS7-Router.ism21.net dhcpd[3588]: Sending on   Socket/f...
 10月 09 07:40:54 CentOS7-Router.ism21.net systemd[1]: Started DHCPv4 Server ...
 Hint: Some lines were ellipsized, use -l to show in full.
  • OS起動時に起動に設定
# systemctl enable dhcpd
Created symlink from /etc/systemd/system/multi-user.target.wants/dhcpd.service  to /usr/lib/systemd/system/dhcpd.service.
  • OS起動時に起動の確認
    # systemctl list-unit-files -t service | grep dhcpd
    dhcpd.service                                 enabled  ← 「enabled]を確認する 。
    dhcpd6.service                                disabled

参考


トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2017-10-09 (月) 14:29:37 (138d)