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 | % sudo vi /etc/network/interfaces |
余談だが,DNSサーバは Cloudflare と GoogleのPublic DNSを設定した.
ファイル更新後,再起動したら無事に2つのNICにIPアドレスが設定された.netplanに移行するのは,とりあえず,あとまわしにする(汗).
参考ページ:
- Ubuntu Bionic: Netplan
https://ubuntu.com/blog/ubuntu-bionic-netplan - Ubuntu 18.04 LTSで固定IPアドレスを設定する方法【サーバー編】:
https://linuxfan.info/ubuntu-1804-server-static-ip-address - Ubuntu 18.04 LTS のネットワーク設定がnetplanというものになっているのでその扱い方についてのメモ書き
https://blog.dshimizu.jp/article/1196
NAPT (NAT, IP masquarade)の設定
上記の設定を見てのとおり,LAN側はPrivate IP addr.によるネットワークなので,Router(Gateway)化の一環として,IP masquarade の設定をした.
作業は,以下のWebページを参考に実施した.
( ufwで実施,iptablesを回避した )
- ufwでNATとポートフォーワード
https://qiita.com/yasutti/items/fa39cdf836a23386f460 - Debian 10 (buster) - ファイアウォール設定!
https://www.mk-mode.com/blog/2019/10/26/debian-10-firewall-setting/
Webページが消えることもあるので,作業内容も書いておく
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で処理するため,こちらのファイルは変更しない.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"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)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の設定記法そのまんまだな…
ufw の有効化
以下のコマンドを実行するだけ1
% sudo ufw enable
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