今日からNetBSD Advent Calendar 2020が始まりました。
微妙に参加者が少ないのが心配ですが、今年も気ままにマイペースでカレンダーを埋めて行こうかと思います。
今日のお話
今日はNetBSD-9.xで変更になった設定について気づいた範囲で紹介しようと思います。
NetBSDがリリースされる度に仮想マシンにインストールして生活環境として使う、ということを繰り返していますが、NetBSD-9.xでいくつか設定周りの変更が入っているようです。
NetBSD-9.xでの変更点
- DHCPクライアントの設定が
dhclient
からdhcpcd
に変更された。 -
sshd_config
で公開鍵認証のみに設定する場合、ChallengeResponseAuthentication no
も必要になった。 - デフォルトのウインドウマネージャが
twm
からctwm
になった。
DHCPクライアントの設定が dhclient
から dhcpcd
に変更された
(これはNetBSD-8.xからですが)DHCPクライアントの設定が dhclient
から dhcpcd
に変更されています。
とはいっても、単純に s/dhclient/dhcpcd/
と置き換えれば良いだけなので、特に新しい設定方法を覚えなおす必要はありません。
具体的には以下のような設定を /etc/rc.conf
に追記する形になります。
# NetBSD-7.xまでの設定手順。
#dhclient=YES
#dhclient_flags="wm0"
# NetBSD-8.x以降の設定手順。
dhcpcd=YES
dhcpcd_flags="wm0"
sshd_config
で公開鍵認証のみに設定する場合、 ChallengeResponseAuthentication no
も必要になった。
NetBSD-8.xまでは公開鍵認証でのssh接続のみに絞る場合は、デフォルト値から以下の2項目を設定するだけでOKで、 ChallengeResponseAuthentication yes
(デフォルト値)でも公開鍵認証のみが許可される挙動になっていました。
# パスワード認証を許可しない。
PasswordAuthentication no
# PAM(Pluggable Authentication Module)を使用しない。
UsePAM no
これに対し、NetBSD-9.xでは ChallengeResponseAuthentication yes
のデフォルト値はそのままですが、この設定のままだとパスワード認証にフォールバックされる挙動に代わっています。
対応としては自明で、 ChallengeResponseAuthentication no
に設定すればOKです。
# この設定でパスワード認証にフォールバックされなくなる。
ChallengeResponseAuthentication no
ちょっと気になったので、NetBSD-8.x/9.xのOpenSSHバージョンを確認してみると以下のようになっていました。
おそらくはOpenSSH-7.xからOpenSSH-8.xのメジャーバージョンアップで ChallengeResponseAuthentication yes
の挙動が変更されているようです(これ以上は深く追えていない...)。
- NetBSD-8.2
OpenSSH_7.6 NetBSD_Secure_Shell-20171007, OpenSSL 1.0.2k 26 Jan 2017
- NetBSD-9.1
OpenSSH_8.0 NetBSD_Secure_Shell-20190418-hpn13v14-lpk, OpenSSL 1.1.1g 21 Apr 2020
デフォルトのウインドウマネージャが twm
から ctwm
になった。
これは以下のブログ記事でも話題になっていのでご存知の方も多いでしょう。NetBSDでは長いあいだデフォルトのウインドウマネージャとしてtwmが採用されていましたが、NetBSD-9.1からctwmに切り替えられました。
Xを起動すると普通にCTWMが使用され、デフォルト設定のままでもかまわないのですが、右クリックでコンテキストメニューが表示されるのはイマイチな点です。VNCとかで接続している状態でVNCのウインドウにフォーカスを合わせるためにクリックしただけでメニュー表示、そして運悪く"Restart CTWM"を選択してしまうという事故(?)が起こりかねません。
この点については、CTWMの設定ファイルを修正することで対応しましょう。 /etc/X11/ctwm/system.ctwmrc
を以下のように変更することで、左クリックによるメニュー表示を無効化できます。
$ cd /etc/X11/ctwm
$ diff -u system.ctwmrc.ORIG system.ctwmrc
--- system.ctwmrc.ORIG 2020-12-01 12:31:10.798860000 +0900
+++ system.ctwmrc 2020-12-01 12:31:37.726916000 +0900
@@ -282,7 +282,7 @@
Button2 = : icon : f.move
Button3 = : icon | iconmgr : f.raiselower
-Button1 = : root : f.menu "NetBSD"
+#Button1 = : root : f.menu "NetBSD"
Button2 = : root : f.menu "TwmAllWindows"
Button3 = : root : f.menu "NetBSD"
まとめ
NetBSD-9.xにおける設定周りで変化があった個所を気づいた範囲で紹介してみました。sshdまわりの挙動の差異には注意が必要そうですね。
久しぶりにNetBSDを使用してみようという人の助けになれば幸いです。