
SSH をモバイル向けに近代化した「Mosh」 43
ストーリー by reo
もしゅもしゅ 部門より
もしゅもしゅ 部門より
ある Anonymous Coward 曰く、
1995 年に発表された「SSH」は、安全性の低い「TELNET」や「RLOGIN」に変わってネットワークログインツールの主役となったが、MIT のハッカーグループは SSH の近代化が必要だとして、それに代わるモバイル向けネットワークログインツール「MOSH」(Mobile shell) を発表した (Mosh: the mobile shell、本家 /. 記事より) 。
Mosh の特徴は Wi-Fi ネットワーク間のローミングや 3G 回線への切り替え時に IP アドレスが変わったり、スリープから復帰しても接続が維持できること。リモート接続時に文字入力を行ったとき (ローカルエコー時) の応答性の良さ。詳細は今年後半に開催される USENIX で論文として提示される予定。現状のものはネットで公開されている (研究論文 PDF) 。
いっそのことイリジウム持って海外逃亡 (スコア:4, おもしろおかしい)
「いま移動中なんでメンテ無理っす」とか
「外出中でパソコン持ってないんで」とか
逃げ道がどんどん狭くなってる気がする by 鯖缶
#そもそも逃げ道なんて無ぇ gesaku
要求ポートがガバガバ (スコア:3)
60000–61000の1000ポートも開けなきゃならないのがちょっと不安かな
ほんとにこんなに必要なんだろか
Re:要求ポートがガバガバ (スコア:4, 参考になる)
60000–61000の1000ポートも開けなきゃならないのがちょっと不安かな
ほんとにこんなに必要なんだろか
開けるのは全部で1001個…というどうでもいい突っ込みは置いといて、
仕組みとして一セッションで一個ポートを使うので、かなり余裕をみて範囲を決めているという事でしょう。
一セッションだけでいいならば、一つポートを開けてあれば使えます。
例えばポート 5963 のみを開けている場合、 mosh -p 5963 REMOTE-HOST とすれば繋がります。
別の方によるまとめ。 (スコア:2, 参考になる)
mosh: MITからモバイル時代のSSH代替品
http://d.hatena.ne.jp/karasuyamatengu/20120411/1334092521 [hatena.ne.jp]
これで、screenが代替できる? (スコア:2, すばらしい洞察)
screenをサーバー側で用意しなくても、良くなるかな?
セッションログを溜めておいたりする必要はなくなるしサーバ側にはメリットがありそう。
クライアント複数に渡ってはセッション持ち越せないかもしれないけど
こっちのほうが便利かな。
# IP変わったりしてもってことは……セッションをファイルの形でどこかにもってけば使えたりするのかな?
Re:これで、screenが代替できる? (スコア:1)
サーバー側のセッション管理の必要性は変わらないから、screen コマンドを打つ手順が減るだけかも。
# FreeBSD で screen を使った状態で、ports の make config 画面が改善されるのならぜひ使いたい。
Re:これで、screenが代替できる? (スコア:1)
# FreeBSD で screen を使った状態で、ports の make config 画面が改善されるのならぜひ使いたい。
どの辺りに問題が出ているのでしょうか?
手元の環境では特に問題ないです。
Re:これで、screenが代替できる? (スコア:1)
1. TeraTerm-4.73 で FreeBSD9.0 へssh接続
2. screen
3. ports の任意のところで make config
4. ブルーバックの画面で文字が表示されない
複数項目があれば上下キーで表示されるようになる
TeraTermの方が悪い気がしますが…
・screen 無しでは問題ありません。
・FreeBSD同士ではテストしていません。
・Cent-OS の authconfig-tui などは見た目が悪いながらもいつの間にか改善されていました。
Re: (スコア:0)
TeraTermが悪いんですよ、それ。
screenのターミナルに対応していないんです。
Re:これで、screenが代替できる? (スコア:1)
う~ん。
CentOS の CLI 、Ubuntu Server のCLI、Scientific Linux のGUI、それから PC-BSD からデフォルトのターミナルで接続しても TeraTerm と同一の現象になります。
なので Tera Term だけが一概に悪いとは思えません。
あと、FreeBSD のCLIから接続しても正しく表示されませんね。
lang を ja_JP.UTF-8 にしているのが問題なんだろうか。
Re:これで、screenが代替できる? (スコア:2)
ang を ja_JP.UTF-8 にしているのが問題なんだろうか。
ああ、確かに ja_JP.UTF-8 だと動作がおかしいですね。
本来必要な改行をscreenが出力していないので、screenのバグっぽいです。
mosh はこの点に関してはちゃんと表示されます。
ただしDEC特殊文字の罫線→ASCII文字(-+|)の変換を行っているので、
DEC特殊文字→Box Drawing の変換を行っているscreenに比べると表示が少々しょぼいです。
この部分のみに関して言えば tmux が一番きれいに表示できますね。
Re: (スコア:0)
試しにLANG=Cでテストするってのは基本かもですね。
# Debianのdialogもぐだぐだに崩れるんだよなー。
cygwinにインストールしてみた (スコア:2)
cygwinにインストールしてみやした。
ここ( https://gist.github.com/2349067 [github.com] )に書いてある通りでインストール完了(sshd動かしてるのですぐlocalhostに接続できて正味30分程度)。
まだ localhost や同じLAN内のマシンとだけしか繋げてないの有難味を感じるには至らず。
(外向けに開いているマシンにインストールするのは、さすがにまだ躊躇します)
これは無いわ・・・・・・ (スコア:1, 参考になる)
1. UDP 60000-61000開放、しかも決め打ち(クラカーさん大喜びっスよ、何番ポート使ってるか分からないSSHと違い、完璧に決め打ちなんだから)
2. 要Boost、ncursesも--with-cxx --with-cxx-bindingでビルドして下さいね (binutilsのgoldの悪夢再びみたいな? libstdc++地獄さん、こんにちわ)
3. X フォワーディングもポートフォワーディングも使えない←ココ重要(使い物になんねえよ あほか)
他にも色々あるだろうけど、これだけでもうNG
公開鍵認証だけ許可してて侵入される恐れはまず無くても、ログが汚れるのが嫌で22番以外と使ってる奴なんて多々いるだろうに・・・・・
ましてSSHの重要な利点であるポートフォワード使えないとか・・・・・・・・
何がSSH代替えだ? ゴミ以下だわ、こんなもん
# つーか、自身のブログとかでマンセーしてるアホ共はこんなレベルで満足なのか?
Re:これは無いわ・・・・・・ (スコア:5, 参考になる)
1. UDP 60000-61000開放、しかも決め打ち(クラカーさん大喜びっスよ、何番ポート使ってるか分からないSSHと違い、完璧に決め打ちなんだから)
ssh だってデフォルトのポートは 22 と決まっていますが。
デフォルトでない別のポートを使うという話ならば、mosh も -p オプションで可能です。
また、mosh は接続していない時はデーモンが動いていないというのもポイントですね。
仕組みとしては、
1. ssh でサーバに接続する。(これが認証を兼ねる)
2. サーバプログラムを起動する。この時、使用するポートと暗号鍵を渡される。
3. ssh 接続を終了する。
4. サーバプログラムjを起動した時に指定されたポートへ接続する。
という形で、接続していない状態では mosh のサーバプログラムは動いていません。
なのでポートが開いていても通常は問題ないはずです。
3. X フォワーディングもポートフォワーディングも使えない←ココ重要(使い物になんねえよ あほか)
X11転送はロードマップに挙がっていますね。
ポート転送は挙がっていないですが、仕組みとしてはほぼ同じなのでX11転送と一緒にサポートされるんじゃないかなと期待しています。
現状でまだサポートしていないというのは、優先度の問題じゃないでしょうか。
ポート転送は必要な人にはとても重要な機能ですが、使わない人もかなりいるので、
まずインタラクティブな接続の為の機能を優先するという事だと思います。
port なんて飾りです (スコア:2)
開けっ放しなのが問題なのであって
ぶっちゃけデフォルトから移すことには意味無いんですよね
http みたいに不特定多数へ開放しておく必要がない場合
knockd と fail2ban でダブルブロックしておくのが基本かなと思ってます
uxi
Re: (スコア:0)
「mosh は接続していない時はデーモンが動いていない」
ということは開けっ放しにはなっていないということですよ。
Re: (スコア:0)
そんなに口を極めて罵るほどのことなのかな…
Re:これは無いわ・・・・・・ (スコア:2)
元コメとは別の者ですが、#2136696 [srad.jp]で挙げられたまとめサイトを読んでの感想として、
> ユーザ認証はSSHに任せている
> SSHをinetdとして使っている感じだと思う。いったん立ち上がるとUDPでクライアントと通信しはじめる。
というのはきわめて危ないと思いましたね。
mosh自身が使ってるUDPベースの通信上には認証がないということは、
UDPな通信上にポイズニングされる可能性について、どの程度配慮されているのか、ちょっと気になりました。
Re:これは無いわ・・・・・・ (スコア:1)
mosh は AES-OCB というメッセージ認証も併せ持った暗号方式を使っています。
なので、ssh 接続時に渡される暗号鍵を使って認証していると考えていいと思います。
Re: (スコア:0)
暗号鍵が分からないので、 IP spoofing して偽UDPパケットを送りつけようとしても
シーケンス番号が合わなくて捨てられちゃうだけ。
Re:これは無いわ・・・・・・ (スコア:1)
IP spoofing する必要は無いですね。
IP アドレスが変わっても接続を維持できるのが売りの一つなので。
Re: (スコア:0)
だったら今までどおりssh使えば。
別にssh無くすとかという訳じゃあるまいし。
主にモバイル端末からの利用が前提じゃ?moshって。
何でも気に入らなきゃ叩くって。てめえも2ちゃんねらーか?
Re:これは無いわ・・・・・・ (スコア:1)
>てめえも2ちゃんねらーか?
ここはスラッシュドットですよ。
通知の設定いじったから、ACだとコメントされても気づかない事が多いよ。あしからずw
Re: (スコア:0)
シグネチャが自意識過剰すぎてキモい
Re: (スコア:0)
この手のは「打たれ弱いのでコメントは勘弁してください」っていう自己申告なんだからそっとしてやるなりここぞとばかり叩きのめすなりご自由に。
Re: (スコア:0)
Xフォワーディングのデタッチ・アタッチを期待したんだけど、出来ないんだ。
喪主 (スコア:1)
これはあれだ。SSHを葬式送りにするぜ! と言うメッセージだな。
# え? 認証周りとかでいろいろで利用するって?
スルースキル:Lv2
Keep It Simple, Stupid!
2仕業 (スコア:0)
3小人さん
windows用クライアントが無い・・・ (スコア:0)
Tera Term対応してくれないかなぁ(チラチラ
Re:windows用クライアントが無い・・・ (スコア:2)
出来たらいいですね。自分はしばらくは時間が取れそうにないですが。
あと、ライセンスの問題が有るからなあ。
# BSD LicenseのソフトウェアがOpenSSLを使ったDLLとGPLなDLLの両方を同時に使うのって大丈夫なんだろうか
Re:windows用クライアントが無い・・・ (スコア:1)
オープンソースなんだから、お前もがんばれよ。(チラッ
Re: (スコア:0)
お前もがんばれよ。
Re:windows用クライアントが無い・・・ (スコア:1)
UTF8決め打ちでいいの? (スコア:0)
日本人の皆さんとしては、UTF-8決め打ちで構わないんでしょうか。
昔ながらの i18n とか m17n とか頑張ってる人たちは怒りそうですが。
# 私は全然おっけー
Re:UTF8決め打ちでいいの? (スコア:1)
Re: (スコア:0)
UTF-16でもいい?
Re: (スコア:0)
自動推測でなく決め打ち出来るなら可
Re:UTF8決め打ちでいいの? (スコア:1)
ISO 8859-1で決め打たれるよりはよっぽどいいと思う
Re:UTF8決め打ちでいいの? (スコア:1)
日本人としてエンコーディングに悩まされてきた人ほど
UTF-8の決め打ちを切望するんじゃないでしょうか。
まずは定番のSJIS/EUCの識別問題、
さらに機種依存文字の問題、
そこにJISまで加わって日本語ひとつに3つも乱立、
それで非Unicode文字を使うには結局どうするの?
…ということでUTF-8最高!ASCII互換だし。
Re:UTF8決め打ちでいいの? (スコア:1)
文字コードの表示より、入力の振る舞いのほうが気になります。
ローカルエコーだけでサーバに届いてないトコがアンダーラインになるとか
ドキドキするような仕様があるようなので……
文字コードのについては、むしろ決めうちのほうが助かる。
悩まなくていいから。
古い環境はTelnet,SSHにすりゃいいんですよ。
Re: (スコア:0)
utf-8は構わないけど、width ambiguous を無視して
半角決めうちとかされると、使い物にならん。
Re: (スコア:0)
JISに文字幅の規定はないけど日本語EUCにはまさに固定文字幅のターミナルを想定した規定があるんだよね。