Gateway化のためのNetwork設定 on Ubuntu 18.04

Ubuntu server on MacPro 1,1を Gateway (Router)化した.
その時のnetwork設定についてメモしておく

NICの設定

Ubuntu 18.04が稼働するMacPro 1,1の2つのNICに固定のIPアドレスを割り当てる.

必要な設定情報:
WAN側: aaa.bbb.ccc.ddd
Default route: aaa.bbb.ccc.1
LAN側: 192.168.2.x/24 (Private address)

Ubuntuは,version 17.10からnetplanというツールでネットワーク設定をするようになった.という記述をいくつかのWebページで見かけるのだが,自分のサーバの状況を確認すると,このツールの設定ファイルが存在するはずのディレクトリ /etc/netplan の中身が空っぽだった.なので,old styleの設定方法である /etc/network/interfaces で設定することにした.

Ubuntu version 14.04からupgradeしたので,こういう状況なのだろうか?!

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
% sudo vi /etc/network/interfaces
# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
auto eth0
iface eth0 inet static
address aaa.bbb.ccc.ddd
netmask 255.255.255.0
gateway aaa.bbb.ccc.1
dns-nameservers 1.1.1.1 8.8.4.4

# The secondary network interface
auto eth1
iface eth1 inet static
address 192.168.2.1
netmask 255.255.255.0
gateway 192.168.2.1

余談だが,DNSサーバは Cloudflare と GoogleのPublic DNSを設定した.
ファイル更新後,再起動したら無事に2つのNICにIPアドレスが設定された.netplanに移行するのは,とりあえず,あとまわしにする(汗).

参考ページ:

NAPT (NAT, IP masquarade)の設定

上記の設定を見てのとおり,LAN側はPrivate IP addr.によるネットワークなので,Router(Gateway)化の一環として,IP masquarade の設定をした.
作業は,以下のWebページを参考に実施した.
( ufwで実施,iptablesを回避した )

Webページが消えることもあるので,作業内容も書いておく

  1. NIC間でのpacket転送を許可する

    1
    2
    3
    % sudo vi /etc/ufw/sysctl.conf
    # Uncomment this to allow this host to route packets between interfaces
    net/ipv4/ip_forward=1

    /etc/sysctl.confにも同様のファイルがあり,過去にLinuxを触っていた人は,こちらの方が馴染みがあるかもしれないが,ufwで処理するため,こちらのファイルは変更しない.

  2. ufwの設定(1)
    /etc/default/ufwを編集し,転送処理のdefault policyをACCEPTに変更する

    1
    2
    3
    4
    5
    % sudo vi /etc/default/ufw
    # Set the default forward policy to ACCEPT, DROP or REJECT. Please note that
    # if you change this you will most likely want to adjust your rules
    #DEFAULT_FORWARD_POLICY="DROP"
    DEFAULT_FORWARD_POLICY="ACCEPT"
  3. ufwの設定(2)
    通信を許可するポート番号について,【穴】を開ける

    1
    2
    3
    4
    5
    % sudo ufw logging low (これはlogの設定)
    % sudo ufw allow ssh
    % sudo ufw allow 53 (DNS)
    % sudo ufw allow 443 (HTTPS)
    % sudo ufw allow 80 (HTTP)
  4. ufwの設定(3)
    NAPT(Network address and port translation)の設定を行う.
    自分の環境では,LAN側からの通信に基づいてNAPTを行うだけで良いので,IPマスカレードの設定だけ行う(ポートフォワードの設定はしない).
    以下の内容をファイルの最後尾,(*filter 〜 COMMIT ブロック間の外側)に追記した.

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    % sudo vi /etc/ufw/before.rules
    ...
    #
    # NAT setting
    #
    *nat
    -F
    :POSTROUTING ACCEPT [0:0]
    # 内側から外側へ
    -A POSTROUTING -s 192.168.1.0/24 -o eth0 -j MASQUERADE
    COMMIT

    この記述だけ見ると,iptablesの設定記法そのまんまだな…

  5. ufw の有効化
    以下のコマンドを実行するだけ

    1
    % sudo ufw enable
  6. ufw の稼働状況確認

    1
    2
    3
    4
    5
    6
    7
    8
    9
    % sudo ufw status
    Status: active

    To Action From
    -- ------ ----
    22/tcp ALLOW Anywhere
    53 ALLOW Anywhere
    443/tcp ALLOW Anywhere
    80/tcp ALLOW Anywhere

— ends here

Gateway化のためのNetwork設定 on Ubuntu 18.04

http://the.netaro.info/2020/03/12/2020-0312_networkCfg/

Author

T.T

Posted on

2020-03-12

Updated on

2020-12-12

Licensed under