Mosh はしばらく前からあります。それは作者によって「SSHの代替」であると主張されていますが、moshは実際にはssh初期認証を実行し、その後サーバーでmoshバイナリのインスタンスが開始されると、TCPを介して確立されたSSH接続は破棄されます(その目的を果たした後)認証とブートストラップ)、および今後のすべてのシェル通信とネットワークローミングは、UDP上のmoshプロトコルを介して行われますが、何らかの暗号化が行われますが、sshとは完全に分離されています。
これはすべて非常にシンプルでエレガントに聞こえますが、悪魔は常に詳細にあります。
数年前からセキュリティ専門家はmoshをどう思いますか?
彼ら自身から [〜#〜] faq [〜#〜] :
Q:安全なデータグラムプロトコルは専門家によって監査されていますか?
A:いいえ。Moshは積極的に使用されており、その設計は妥当であると考えるセキュリティ志向の暗号オタクに読まれていますが、新しいデータグラムプロトコルはそれ自体を証明する必要があり、SSP例外ではありません。AES-128とOCBのリファレンス実装を使用しており、コードにご注目ください。設計が根本的にシンプルであることが利点であると考えていますが、もちろん他の人もそう考え、間違っています。
MOSHを使用する際の留意点...ほとんどの場合、SSHを使用して接続を開始しますが、MOSHは接続を機能させるためにそれを必要としません(SSHはサーバー側で新しいmosh-serverを開始するだけで、2つの値を返しますクライアント側:ポート番号と22バイトの対称キー)。そのため、サーバーが生成する2つのアイテムを手に入れれば、誰でもあなたの接続を利用できます(つまり、IPのソースに依存しないため、これら2つの情報にアクセスできれば、事実上、接続の所有者です)。
これが意味することは、基本的に対処すべき攻撃面がいくつかあるということです。
プロトコル自体とそれを「処理中」に復号化します。これは、おそらくあなたの政府、ISP、またはあなたと同じ喫茶店の誰か以外の誰にとってもほとんどあり得ません。それを行うためのコストとトランスミッションと一致する必要があるため、これは非常に起こりそうにありません(しかし完全に前代未聞ではありません)
Mosh-serverがアクティブになると、開いているUDPポートを攻撃します。これはより可能性が高く、ここでプロトコルがさらに調査する必要があります。たとえば、MOSHシステムに対する実証済みのDOS攻撃がすでにありました(ハイジャックについてはまだ知りません)。そしてもちろん、誰かがあなたの対称鍵を入手した場合、おそらく彼らはかなり簡単にポートを推測できます。
それで、これらすべての不確実性でこのプロトコルをどのように使用するのですか?まあ、あなたはあなたのiptables(またはファイアウォールなど)を介してIPパケットが来ることができる場所を制限することができます、または何かが起こった場合にポートをノックアップするようにポートをノックするように設定することができます。もちろん、いつでもそれをそのままにして、監査されていないプロトコルの一般的なリスクを冒すことができます。
個人的に、私は60000アドレスをブロックするためにポートノッカーを使用します(多くの理由で、これは苦痛であり、安全でなく、問題があるなど)。ほとんどの場合、私の再接続は同じIP(ワイヤレスがダウンするなど)からのものであるため、MOSH接続を続行するために「再ノック」する必要はほとんどありません。もちろん、ラップトップを閉じたり、コーヒーショップを出たり、電車のWiFiに切り替えたりした場合は、MOSHポートにアクセスするために再度ノックする必要があります。
私にとって、ポートノッキングまたはMOSHは本質的なリスクですが、まとめると、ターゲットの表面積がかなり減少します。 MOSHは、ポートノッカーで発生する問題の多くを軽減し、ポートノッカーは未監査のセキュリティ接続を軽減します。