Chienomi

ルーターをCentOS7に

server

CentOS6はUSB NICを認識できなかったため、慣れないUbuntuを使ってきたが、ついにCentOS 7への移行を実現した。

刷新されたAnacondaインストーラを使う。何もいじらずにインストールできるようになっているが、その一方でインストールしながらユーザーが作成できるなど効率的なデザインに変化している。シンプルながら機能性が失われておらず、なかなか驚きがある。

インストールが完了すると例によってmei_meが騒ぐ。とりあえずrootでログインし

# rmmod mei_me

さらに二度と起動しないように、/etc/modprobe.d/blacklist.conf に

blacklist mei blacklist mei_me"

とどめに、/etc/modprobe.d/modprobe.conf.local

install mei /bin/true install mei_me /bin/true

NICの設定はAnacondaから行える。そのためいきなりネットワークに接続できた。

ネットワークの設定はnmtuiまたはnmcliで行う。nmtuiは対話的に利用できる。これを用いて設定する。もちろん、USB NICも正しく認識されている。

ifconfigがないため、net-toolsをインストールしておくほうが良い。また、digコマンドもないため、dns-toolsをインストールしておく。このほか、zshとvimとdnsmasqをとりあえずインストールした。

IP forwardingが無効となっているため、これを恒久的に有効にする方法を探したが、良い記述がない。systemdに移行したための問題だ。そこでやや乱暴だが、/etc/sysctl.d/99-sysctl.confに

net.ipv4.ip_forward = 1

と書いておく。これでリブートしておおよそうまく動くのだが、DNSをフォワードしてくれない。ファイアウォールに起因するが、CentOS7はfirewalldを使用しており、設定方法が分からない。とりあえずfirewalldを無効化すれば動く。

だが、もちろんそれは困るので、とりあえずsubID 0x10のネットワークのコネクションは全部通過するようにする。通らないのはDNSなので、sshログインで設定可能だ。

firewalldは動いていなければいけない。そして、0x10インターフェイスをtrustedにする。

# firewall-cmd --zone=trusted --change-interface=enp0s25

さらに恒久化するため、/etc/sysconfig/network-scripts/ifcfg-enp0s25にZONE=trustedを追記する。これで0x10(enp0s25)から入ってくるトラフィックは全て通過するようになった。

dnsmasqを設定すると、Ubuntuのように訳の分からないことならず、正しくDHCP, DNSともに機能する。

全体的な印象としては、systemd, firewalldという新機構が案の定手強い状況だ。Fedoraと違いiptablesと共存しているわけではないため、firewalldの設定は必ず習得しなければいけないという厳しいものだ。GUI込みならばそれほど難しくないのかもしれないが。

困ったことに検索してみても、firewall-configを紹介しているだけで、firewalldのコマンドラインにおける設定方法は全く紹介されていないのだ。