11
10

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

macOS へ RDP でリモートデスクトップ接続する

Last updated at Posted at 2021-01-21

macOS 標準機能の画面共有は VNC ベースで、Windowsのリモートデスクトップと比べるともっさり感が否めません。また暗号化されないので、社内ネットワークで使うときはsshに乗せたりと面倒です。

そんな折にxrdpがmacOSでも動くらしいよと教えてもらい、早速試したところBig Surでも動きました。

やってみたところ、使えることは使えるのですが、同一LAN内では標準の画面共有の方が快適でした。遠いネットワークからだと違う結果になるかもしれませんが、環境が無いので試せていません。

インストール

以下からパッケージをダウンロードしておきます。xrdp-0.9.15 と xorgxrdp-0.2.15 で動作確認しました。OSは macOS 11.1 です。

xQuartz が必要なので、インストールしておきます。

brew install xquartz

依存パッケージのインストール。automake も入れろって書いてあるけど、tar ball からインストールするときはたぶん不要。

brew install libtool pkgconfig nasm libssl

まず xrdp をインストールします。

cd xrdp-0.9.15/
# git からインストールするときは bootstrap が必要
# ./bootstrap
./configure PKG_CONFIG_PATH=/usr/local/opt/openssl/lib/pkgconfig
make
sudo make install

/usr/local/ 以下は Homebrew で使っていてそこに入れるのはちょっと気持ち悪いですが、パスを変えると色々と面倒なので、そのままにしました。

xorgxrdp をインストールします。

cd ../xorgxrdp-0.2.15/
# ./bootstrap
./configure PKG_CONFIG_PATH=/opt/X11/lib/pkgconfig
make
sudo make install

設定

/etc/xrdp/xrdp.ini を編集します。
[Xorg], [Xvnc], [neutrinordp-any] をコメントアウトし、[vnc-any] のlibを変更します。

#[Xorg]
#name=Xorg
#lib=libxup.so
#username=ask
#password=ask
#ip=127.0.0.1
#port=-1
#code=20

#[Xvnc]
#name=Xvnc
#lib=libvnc.so
#username=ask
#password=ask
#ip=127.0.0.1
#port=-1
#xserverbpp=24
#delay_ms=2000
; Disable requested encodings to support buggy VNC servers
; (1 = ExtendedDesktopSize)
#disabled_encodings_mask=0


[vnc-any]
name=vnc-any
lib=libvnc.dylib
ip=127.0.0.1
port=ask5900
username=na
password=ask
#pamusername=asksame
#pampassword=asksame
#pamsessionmng=127.0.0.1
#delay_ms=2000

#[neutrinordp-any]
#name=neutrinordp-any
#lib=libxrdpneutrinordp.so
#ip=ask
#port=ask3389
#username=ask
#password=ask

確認

macのシステム環境設定で画面共有を有効にします。
スクリーンショット 2021-01-22 6.27.10.png
この「コンピュータ設定」で「VNC使用者が画面を操作することを許可」を有効にし、パスワードを設定しておきます。

xrdp を起動します。

sudo /usr/local/sbin/xrdp
sudo /usr/local/sbin/xrdp-sesman

別のPCからリモートデスクトップクライアントで接続します。
設定が間違っているのか、ここで入力したID/Passwordではログインに失敗します。
以下の画面が表示されるので、ここでpasswordに、先程VNCの設定で入力したパスワードを入れます。

login.png

終了は -k をつけて実行します。

sudo /usr/local/sbin/xrdp -k
sudo /usr/local/sbin/xrdp-sesman -k

問題

設定を間違えているだけのような気もしますが、切り分けられていません

  • リモートデスクトップ接続時に入力したアカウントでログインできない
  • 修飾キーの設定がリセットされる(capsをctrlに変更とか)

自動起動

TBD

11
10
6

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
11
10

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?