パスワードを忘れた? アカウント作成
2635634 story
UNIX

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) 。

この議論は賞味期限が切れたので、アーカイブ化されています。 新たにコメントを付けることはできません。
  • by gesaku (7381) on 2012年04月16日 17時38分 (#2136899)

    「いま移動中なんでメンテ無理っす」とか
    「外出中でパソコン持ってないんで」とか
    逃げ道がどんどん狭くなってる気がする by 鯖缶

    #そもそも逃げ道なんて無ぇ gesaku

  • 60000–61000の1000ポートも開けなきゃならないのがちょっと不安かな
    ほんとにこんなに必要なんだろか

    • by doda (31157) on 2012年04月16日 19時36分 (#2136963) 日記

      60000–61000の1000ポートも開けなきゃならないのがちょっと不安かな

      ほんとにこんなに必要なんだろか

      開けるのは全部で1001個…というどうでもいい突っ込みは置いといて、
      仕組みとして一セッションで一個ポートを使うので、かなり余裕をみて範囲を決めているという事でしょう。
      一セッションだけでいいならば、一つポートを開けてあれば使えます。
      例えばポート 5963 のみを開けている場合、 mosh -p 5963 REMOTE-HOST とすれば繋がります。

      親コメント
  • by Anonymous Coward on 2012年04月16日 12時52分 (#2136696)

    mosh: MITからモバイル時代のSSH代替品
    http://d.hatena.ne.jp/karasuyamatengu/20120411/1334092521 [hatena.ne.jp]

  • by Anonymous Coward on 2012年04月16日 13時12分 (#2136716)

    screenをサーバー側で用意しなくても、良くなるかな?
    セッションログを溜めておいたりする必要はなくなるしサーバ側にはメリットがありそう。
    クライアント複数に渡ってはセッション持ち越せないかもしれないけど
    こっちのほうが便利かな。

    # IP変わったりしてもってことは……セッションをファイルの形でどこかにもってけば使えたりするのかな?

    • サーバー側のセッション管理の必要性は変わらないから、screen コマンドを打つ手順が減るだけかも。

      # FreeBSD で screen を使った状態で、ports の make config 画面が改善されるのならぜひ使いたい。

      親コメント
      • # FreeBSD で screen を使った状態で、ports の make config 画面が改善されるのならぜひ使いたい。

        どの辺りに問題が出ているのでしょうか?
        手元の環境では特に問題ないです。

        親コメント
        • 1. TeraTerm-4.73 で FreeBSD9.0 へssh接続
          2. screen
          3. ports の任意のところで make config
          4. ブルーバックの画面で文字が表示されない
           複数項目があれば上下キーで表示されるようになる

          TeraTermの方が悪い気がしますが…
          ・screen 無しでは問題ありません。
          ・FreeBSD同士ではテストしていません。
          ・Cent-OS の authconfig-tui などは見た目が悪いながらもいつの間にか改善されていました。

          親コメント
          • by Anonymous Coward

            TeraTermが悪いんですよ、それ。
            screenのターミナルに対応していないんです。

            • う~ん。
              CentOS の CLI 、Ubuntu Server のCLI、Scientific Linux のGUI、それから PC-BSD からデフォルトのターミナルで接続しても TeraTerm と同一の現象になります。
              なので Tera Term だけが一概に悪いとは思えません。

              あと、FreeBSD のCLIから接続しても正しく表示されませんね。
              lang を ja_JP.UTF-8 にしているのが問題なんだろうか。

              親コメント
              • ang を ja_JP.UTF-8 にしているのが問題なんだろうか。

                ああ、確かに ja_JP.UTF-8 だと動作がおかしいですね。
                本来必要な改行をscreenが出力していないので、screenのバグっぽいです。

                mosh はこの点に関してはちゃんと表示されます。
                ただしDEC特殊文字の罫線→ASCII文字(-+|)の変換を行っているので、
                DEC特殊文字→Box Drawing の変換を行っているscreenに比べると表示が少々しょぼいです。
                この部分のみに関して言えば tmux が一番きれいに表示できますね。

                親コメント
              • by Anonymous Coward

                試しにLANG=Cでテストするってのは基本かもですね。
                # Debianのdialogもぐだぐだに崩れるんだよなー。

  • cygwinにインストールしてみやした。
    ここ( https://gist.github.com/2349067 [github.com] )に書いてある通りでインストール完了(sshd動かしてるのですぐlocalhostに接続できて正味30分程度)。

    まだ localhost や同じLAN内のマシンとだけしか繋げてないの有難味を感じるには至らず。
    (外向けに開いているマシンにインストールするのは、さすがにまだ躊躇します)

  • by Anonymous Coward on 2012年04月16日 15時16分 (#2136820)

    1. UDP 60000-61000開放、しかも決め打ち(クラカーさん大喜びっスよ、何番ポート使ってるか分からないSSHと違い、完璧に決め打ちなんだから)
    2. 要Boost、ncursesも--with-cxx --with-cxx-bindingでビルドして下さいね (binutilsのgoldの悪夢再びみたいな? libstdc++地獄さん、こんにちわ)
    3. X フォワーディングもポートフォワーディングも使えない←ココ重要(使い物になんねえよ あほか)

    他にも色々あるだろうけど、これだけでもうNG
    公開鍵認証だけ許可してて侵入される恐れはまず無くても、ログが汚れるのが嫌で22番以外と使ってる奴なんて多々いるだろうに・・・・・
    ましてSSHの重要な利点であるポートフォワード使えないとか・・・・・・・・
    何がSSH代替えだ? ゴミ以下だわ、こんなもん

    # つーか、自身のブログとかでマンセーしてるアホ共はこんなレベルで満足なのか?

    • by doda (31157) on 2012年04月16日 20時04分 (#2136981) 日記

      1. UDP 60000-61000開放、しかも決め打ち(クラカーさん大喜びっスよ、何番ポート使ってるか分からないSSHと違い、完璧に決め打ちなんだから)

      ssh だってデフォルトのポートは 22 と決まっていますが。
      デフォルトでない別のポートを使うという話ならば、mosh も -p オプションで可能です。

      また、mosh は接続していない時はデーモンが動いていないというのもポイントですね。
      仕組みとしては、

      1. ssh でサーバに接続する。(これが認証を兼ねる)
      2. サーバプログラムを起動する。この時、使用するポートと暗号鍵を渡される。
      3. ssh 接続を終了する。
      4. サーバプログラムjを起動した時に指定されたポートへ接続する。

      という形で、接続していない状態では mosh のサーバプログラムは動いていません。
      なのでポートが開いていても通常は問題ないはずです。

      3. X フォワーディングもポートフォワーディングも使えない←ココ重要(使い物になんねえよ あほか)

      X11転送はロードマップに挙がっていますね。
      ポート転送は挙がっていないですが、仕組みとしてはほぼ同じなのでX11転送と一緒にサポートされるんじゃないかなと期待しています。

      現状でまだサポートしていないというのは、優先度の問題じゃないでしょうか。
      ポート転送は必要な人にはとても重要な機能ですが、使わない人もかなりいるので、
      まずインタラクティブな接続の為の機能を優先するという事だと思います。

      親コメント
      • by uxi (5376) on 2012年04月17日 8時43分 (#2137173)

        開けっ放しなのが問題なのであって
        ぶっちゃけデフォルトから移すことには意味無いんですよね

        http みたいに不特定多数へ開放しておく必要がない場合
        knockd と fail2ban でダブルブロックしておくのが基本かなと思ってます

        --
        uxi
        親コメント
        • by Anonymous Coward

          「mosh は接続していない時はデーモンが動いていない」
          ということは開けっ放しにはなっていないということですよ。

    • by Anonymous Coward

      そんなに口を極めて罵るほどのことなのかな…

      • 元コメとは別の者ですが、#2136696 [srad.jp]で挙げられたまとめサイトを読んでの感想として、
        > ユーザ認証はSSHに任せている
        > SSHをinetdとして使っている感じだと思う。いったん立ち上がるとUDPでクライアントと通信しはじめる。
        というのはきわめて危ないと思いましたね。

        mosh自身が使ってるUDPベースの通信上には認証がないということは、
        UDPな通信上にポイズニングされる可能性について、どの程度配慮されているのか、ちょっと気になりました。

        親コメント
    • by Anonymous Coward

      だったら今までどおりssh使えば。
      別にssh無くすとかという訳じゃあるまいし。
      主にモバイル端末からの利用が前提じゃ?moshって。

      何でも気に入らなきゃ叩くって。てめえも2ちゃんねらーか?

      • >てめえも2ちゃんねらーか?
        ここはスラッシュドットですよ。

        --
        通知の設定いじったから、ACだとコメントされても気づかない事が多いよ。あしからずw
        親コメント
        • by Anonymous Coward

          シグネチャが自意識過剰すぎてキモい

          • by Anonymous Coward

            この手のは「打たれ弱いのでコメントは勘弁してください」っていう自己申告なんだからそっとしてやるなりここぞとばかり叩きのめすなりご自由に。

    • by Anonymous Coward

      Xフォワーディングのデタッチ・アタッチを期待したんだけど、出来ないんだ。

  • by uron (39597) on 2012年04月16日 18時16分 (#2136921)

    これはあれだ。SSHを葬式送りにするぜ! と言うメッセージだな。

    # え? 認証周りとかでいろいろで利用するって?

    --
    スルースキル:Lv2
    Keep It Simple, Stupid!
  • by Anonymous Coward on 2012年04月16日 12時48分 (#2136689)

    3小人さん

  • by Anonymous Coward on 2012年04月16日 12時52分 (#2136697)

    Tera Term対応してくれないかなぁ(チラチラ

  • by Anonymous Coward on 2012年04月16日 13時22分 (#2136727)

    日本人の皆さんとしては、UTF-8決め打ちで構わないんでしょうか。
    昔ながらの i18n とか m17n とか頑張ってる人たちは怒りそうですが。
    # 私は全然おっけー

    • by Anonymous Coward on 2012年04月16日 13時36分 (#2136744)
      むしろUTF以外は氏んでほしい
      親コメント
      • by Anonymous Coward

        UTF-16でもいい?

        • by Anonymous Coward

          自動推測でなく決め打ち出来るなら可

    • by Anonymous Coward on 2012年04月16日 14時00分 (#2136767)

      ISO 8859-1で決め打たれるよりはよっぽどいいと思う

      親コメント
    • by Anonymous Coward on 2012年04月16日 14時06分 (#2136773)

      日本人としてエンコーディングに悩まされてきた人ほど
      UTF-8の決め打ちを切望するんじゃないでしょうか。

      まずは定番のSJIS/EUCの識別問題、
      さらに機種依存文字の問題、
      そこにJISまで加わって日本語ひとつに3つも乱立、
      それで非Unicode文字を使うには結局どうするの?

      …ということでUTF-8最高!ASCII互換だし。

      親コメント
    • by kicchy (4711) on 2012年04月16日 15時06分 (#2136813)

      文字コードの表示より、入力の振る舞いのほうが気になります。
      ローカルエコーだけでサーバに届いてないトコがアンダーラインになるとか
      ドキドキするような仕様があるようなので……

      文字コードのについては、むしろ決めうちのほうが助かる。
      悩まなくていいから。
      古い環境はTelnet,SSHにすりゃいいんですよ。

      親コメント
    • by Anonymous Coward

      utf-8は構わないけど、width ambiguous を無視して
      半角決めうちとかされると、使い物にならん。

      • by Anonymous Coward

        JISに文字幅の規定はないけど日本語EUCにはまさに固定文字幅のターミナルを想定した規定があるんだよね。

typodupeerror

一つのことを行い、またそれをうまくやるプログラムを書け -- Malcolm Douglas McIlroy

読み込み中...