AnyDeskの代替、TailScale+VNC
2022/11記:AnyDeskは現在推奨しない。リモートデスクトップまとめを参照されたい
AnyDeskを便利に使ってきたのだが、最近は、「ビジネスでお使いでしょうか?」の警告が良く出るようになってきた。
主には、すぐ隣にある常時電源ONのパソコンの操作のために、AnyDeskを使っているのであって、特にAnyDeskでなければならない理由はない。ただし、たまの出張時には、何も考えなくても同じ操作で、ノートパソコンからどこにいてもこのパソコンに接続できるので、非常に便利というところだし、ごくたまに他人のところに接続することがある位だ。
そこで、AnyDeskを捨てることにする。とは言っても、ごくまれ(一年に一度あるか無いか)に全く知らない人にAnyDeskを入れてもらい、その番号を教えてもらい操作することはあるため、AnyDeskのインストール自体はそのままにしておく。
AnyDeskの代替はあるか?
Top 10 AnyDesk Alternatives & Competitorsにある。
この種のソフトは今や様々あるようだが(以前はTeamViewer位しか選択肢がなかった)、コメントを読んでみると、「AnyDeskより高い」などがあり、面倒なのでこれは選ばないことにした。もっと良い方法があるのである。
VNCの問題
ずいぶんと昔からある同種のソフトとして、そのプロトコルが公開されたVNCというものがある。これをもとに、VNC、UltraVNC、RealVNC等が作られているのだが、基本的に同じプロトコルなので、例えば、Windows用のUltraVNCからLinuxのvnc-serverに接続するなどが簡単にできる。
その一方で、VNCの問題としては、基本的にポートを開けないといけない。なおかつ、悪いやつが入ってこれないようにパスワードを管理しないといけない。さらに、通信路を盗聴された場合には、暗号化されていないので、まる見えになってしまう点である。
したがって、オフィス内LAN、家庭内LANで作っている分には良いのだが、外出先から接続しようとすると、途端に面倒くさくなる。
ここでは、Tailscaleを使って対象のPCとのVPN接続を行い、その上でUltraVNCを使ってみる。
Tailscaleのすごさ
何と言っても、Tailscaleでは、ほとんど何の苦労もなくVPNを作れてしまう。そして、VPNを作ってしまえさえすれば、ポートオープンやら何やらも、(VNC自体の)パスワードの管理も、通信路の盗聴も、何も気にする必要はない。VPNに参加しているPCは、どれほど遠くにあろうとも、安全なオフィス内LANや家庭内LANにあるものとして扱えるからだ。
そして、VNCなどのリモートコントロールだけではなく、その他のサービス(例えば、暗号化無しのFTPやTelnet)も何も考えずに動作させることができる。
Tailscaleの使い方は、Tailscaleの使い方:概要からの一連の記事を参照されたい。
VNCのセットアップ
ここでは、Tailscaleが既にセットアップされており、MagicDNSによって、対象PCを名前でアクセスできるものとする。
つまり、持ち出し用のノートPCと常時電源ONの据え置きPCは、TailscaleのVPNに参加しており、それぞれを名前でアクセスできる。
ここで据え置きPCにVNCをインストールする。
Windows用に使えるVNCは多種類あり、この目的ではUltraVNCを使ってきたのだが、TightVNCの方が安定していることに気がついた。UltraVNCは、接続できているものの、全く操作できない状態になったりする。
基本的にVNCのプロトコルは互換性があるようで、例えばサーバ側がTightVNCで、それをクライアント側からUltraVNCでアクセスするということも可能だ。
クライアント側に拡張子.vncファイルを作成しておくと、そのダブルクリックだけでサーバに接続できるが、これもUltraVNCtごTightVNCで同じフォーマットのようだ。UltraVNCのクライアントで作成した.vncファイルをTightVNCのクライアントでも利用できる。
また、UltraVNCのクライアントよりも、TightVNCのクライアントの方が動作が軽い。
クライアントの接続方法と接続ファイルの作成方法は以下の通り。ただし、ultramanというのは、VPN上でのマシンの名前を表している。つまり、MagicDNS機能を使っているがゆえだ。