書いておかないと忘れちゃうシリーズ。
jail で環境を作って、xrdp でどこからでもデスクトップが使える環境を以前から使っていて、いろんな場所で開発するのにとても便利だったのですが、あまりにもいろいろ入れたり消したりしていたら無駄に大きくなりすぎたため、必要最低限の環境を構築しなおすことにしました。
前回作ったのがかなり昔すぎて、いろいろ忘れていてはまったので、未来の私のためにここにメモを残します。
とりあえず、FreeBSD 12.2-RELEASE では xrdp のバックエンドで xorg は、セキュリティ上の問題から動きません。以前は動いてたのに。CBSD とかはカーネルにパッチあてて動かしていますが、毎回やるの大変なので、xorgは諦めます。バックエンドは tigervnc 使うことにします。
以下作り方。
qjail でさっくりベースを作ります。desktop はjail名です。その辺はかぶらないように適当に。
fstabを編集して、/home を nullfs でマウントして、親環境のフォルダを見えるようにしておくといろいろ便利です。逆に親環境を全く汚染したくない場合は設定しないでください。
あとは中に入って作業します。
これで最低限 xrdp が動くパッケージが入ります。
あとは、ini ファイルの修正をして xrdp を設定していきます。
port のところを tcp://[IP4アドレス]:3389 に変更。
127.0.0.1 となっているところを探して、すべて desktop の IP4アドレスに修正します。
Session types のセクションを探して、 Xvnc を一番上に持ってきます。
127.0.0.1 となっているところを探して、すべて desktop の IP4アドレスに修正します。
Xvnc のパラメータで、 -localhost の行をコメントにします(先頭に ; をつけます)
あとは、作業でつかうユーザーを登録しておきます。
その際に、親環境の /home をマウントしている場合は親環境の uid gid と同じになるように注意しましょう。
ここまで来たら一旦 jail を再起動しましょう。
あとは、他の環境から Remote Desktop Client で接続するだけです。その際に証明書でエラーが出ますが、とりあえずは無視してもつながります。
すると、xterm のそっけない画面がでてきますので、あとは好みのDE入れて環境構築を続けましょう。
ということで、はまりどころ。
gid,uid に注意する
127.0.0.1 を変更
-localhost を削除。
この3つ、すべてはまりました。
前回構築した際もはまった記憶にあります。というかいろいろあがいてから思い出しました。