やりたいが保留されているもののうち、
・WAN側からの管理用sshサーバの作成
・大学のサーバに接続できるよう、大学のsshサーバのポートを家のsshサーバに転送
・LANにだけ公開してあるWindows Server 2008のリモートデスクトップを、
sshのポート転送でWAN側から使えるようにする(実験)
…が終わったので、纏めてみた。すぐ忘れそうだし…('A`)
まずsshサーバの作成。
Ubuntuのバージョン8.10がリリースされたということで、Server版をssh待ち受けサーバとしてつこうてみることにした。
…Ubuntuだけあって、インストールはあっという間に終了。デスクトップ版と大して変わらない感覚でインストール出来た。
Xは入れなくてもよかったんだが、何となく入れてみた。セキュリティ的には、余計なのは入れないほうが良いので、そのうち削除するかもしれない。
ウインドウマネージャーは、fluxboxにしてみた。
次に、
・大学のサーバに接続できるよう、大学のsshサーバのポートを家のsshサーバに転送
を実行。
大学のサーバに、直にWAN側からログイン出来れば良いのだが、現状では出来ないので、
大学のサーバにローカルログインし、そのサーバのポート22番を家のサーバ(はちゅねサーバ)のポート65535番に転送することにした。
自分が大学にいて、ただ転送するだけならば、
c10xxxx@ac-server% ssh -R 65535:localhost:22 hachune@hachune.net ※大学のサーバをac-server、ユーザー名をc10xxxx、
家のsshサーバをhachune-server、ユーザー名をhachune、
家のネットワークのドメイン名をhachune.netとした。でおkなのだが、うちの回線があまりにも不安定で、放置していると数分で切断されてしまうという問題が。
仕方がないので、
~/.ssh/config に、
ConnectionAttempts 900 (接続試行回数(1秒に1回試行)を900回に)
を追加。これで15分位は回線が落ちても大丈夫…かもしれない。
その他に
~/.ssh/configに使える、通信維持に使用できそうなオプションとして、
・ServerAliveInterval 60 (サーバの生存チェック間隔。60秒毎にクライアントがサーバに生存確認用のパケットを送信)
・ServerAliveCountMax 60 (サーバ生存カウント回数の最大値。ServerAliveIntervalが60、ServerAliveCountMaxが60だと、サーバが応答しなくなった3600秒後に切断される)
・TCPKeepAlive "yes" or "no" (サーバとの接続が維持出来ているか確認し、異常終了した場合は通知する。一時的に落ちている場合も切断と見なしてしまう可能性もある)
…等があった。
また、
sshd_configで使用できる、通信維持に役立ちそうなオプションは、
・
ClientAliveInterval 60 (クライアントの生存チェック間隔。60秒毎にクライアントが生存していることを確認する。)
・
ClientAliveCountMax 60 (クライアントの生存チェック最大カウント数。ClientAliveIntervalが60、ClientAliveCountMaxが60だと、クライアントが応答しなくなった3600秒後に切断する。)
・
TCPKeepAlive "yes" or "no" (クライアントとの接続が維持出来ているか確認し、異常終了した場合は通知する。一時的に落ちている場合も切断と見なしてしまう可能性もある)
…など。
最後に、
・LANにだけ公開してあるWindows Server 2008のリモートデスクトップを、
sshのポート転送でWAN側から使えるようにする(実験)
…を、試してみた。
はつねサーバのポート3389をWebに公開してしまえば良い話…なのだが、
・ポートをやたら開放したくない
・どこからでも(ネットに接続できれば)ログイン画面が見れてしまうのは…ちょっと…
・とりあえず実験するぜ(`・ω・´)
シャキーン…という理由から、わざわざsshで転送することにした。
分かりにくいので、図で表してみた。
※こんな図の作成に1時間掛けるなら、レポートやれという意見は受け付けない。とりあえず、私は大学に居る、ということにして考えると、
まずac-serverの22番ポートをhachune-serverに転送。
c10xxxx@ac-server% ssh -R 65535:localhost:22 hachune@hachune.net次に、hatsune-serverの3389番ポートを、ac-serverの3389番に転送。
hachune@hachune-server% ssh -R 3389(ac-server):192.168.0.10:3389(hatsune-server側) c10xxxx@ac-server…でおkだった。
※08.11.10 追記c10xxxx@ac-server% ssh -L 3389:192.168.0.10:3389 hachune@hachune-serverだけでもおkだったことに気付いた。
後は、大学側で、
c10xxxx@ac-server% rdesktop -u username localhostとするだけ。
sshオプションのLとRの違いが微妙に分からない…('A`)
もう眠くて考える気力が…(´ぅω・`)ネムタス
なんかいろいろ間違っている所や、非効率なところがありそうなので、そのうち書き直す。…たぶん。
とりあえず、これで
大学でもはつねさんと安全に遊べ…'`ァ,、ァ(*´Д`*)'`ァ,、ァ
…( ゚Д゚)・∵. グフッ!!