この文書は過去の文書です。 統合インストーラを使うと、これらの設定手順を全て自動的に行いますので、 是非こちらを御利用下さい。

目次

  1. はじめに
  2. ダウンロード
    1. OpenSSH(Cygwin)
    2. OpenSSH for Windows
  3. インストール
    1. OpenSSH(Cygwin)
    2. OpenSSH for Windows
  4. 環境設定
    1. OpenSSH(Cygwin)
    2. OpenSSH for Windows
  5. ファイアウォールの設定
  6. 注意事項

はじめに

ここでは、「ポータブル セキュア クライアント μVNC」での利用を前提に、Windows上で動作するSSHサーバのセットアップ方法をご紹介しています。

μVNCを使用するために必要な設定は、2.ダウンロードから5.ファイアウォールの設定までです。

Windows Vistaをお使いの場合は"OpenSSH(Cygwin)"の設定を行ってください。それ以外のWindows OS(Windows 2000Professional、XP各Edition、2000/2003Server)をお使いの場合は"OpenSSH for Windows"の設定を行ってください。

↑ 目次にもどる

ダウンロード

OpenSSH(Cygwin)

  1. cygwinから、 ページ中の"Install or update now!"をクリックします。
  2. 数秒待つと、自動的にダウンロードダイアログが表示されるので、適切なフォルダを指定してダウンロードします。ファイルサイズは、およそ0.5MBです。

OpenSSH for Windows

  1. SSHWindows.SourceForge.Net: OpenSSH for Windowsから、 ページ中の"Binary Installer Releases"をクリックします。
  2. リンク先のページにて、"ssetupssh381-20040709.zip"をクリックします。
  3. リンク先のページにてしばらく待つと、画面上部にポップアップが表示されますので、ポップアップをクリックして、"ファイルのダウンロード"を選択します。
  4. 数秒待つと、自動的にダウンロードダイアログが表示されるので、適切なフォルダを指定してダウンロードします。ファイルサイズは、およそ2.3MBです。

↑ 目次にもどる

インストール

OpenSSH(Cygwin)

   事前にご確認ください

インストールを行う前にユーザー アカウント制御(UAC)を無効にして下さい。

・ユーザー アカウント制御(UAC)無効化手順

1.[スタート]→[コントロールパネル]→[ユーザー アカウント]→[ユーザーアカウント制御の有効化または無効化]を選択します。

2.操作続行の確認を求めるダイアログが表示されますので、[続行]を選択します。

3.チェックボックス[ユーザー アカウント制御(UAC)を使ってコンピュータの保護に役立たせる]のチェックをはずし、[OK]を選択します。

4.[これらの変更を適用するにはコンピュータを再起動する必要があります]と表示されるので、[今すぐ再起動する]を選択し、Windowsを再起動します。

  1. ダウンロードしたsetup.exeを実行します。
  2. 次の画面で、次へ(N) >をクリックします。
  3. 次の画面で、インストール方法を選択します。"Install from Internet"のラジオボタンを選択し、 次へ(N) >をクリックします。
  4. 次の画面で、インストールするディレクトリを指定します。本文書では、以後 C:¥Cygwin にインストールしたと仮定して説明を進めます。さらに、"All Users"、"Unix/binary"にチェックをし、 次へ(N) >をクリックします。
  5. 次の画面で、インストール時にファイルを一時的に保持するディレクトリを指定します。本文書では、以後 C:¥temp file を指定したと仮定して説明を進めます。指定後、 次へ(N) >をクリックします。
  6. 次の画面は、"Direct Connection"にチェックが付いていることを確認し、 次へ(N) >をクリックします。
  7. 次の画面で、インストールするダウンロードサイトを指定します。本文書では、時にファイルを一時的に保持するディレクトリを指定します。本文書では、"http://ftp.jaist.ac.jp" を指定したと仮定して説明を進めます。指定後、 次へ(N) >をクリックします。
  8. 次の画面で、インストールするパッケージを指定します。"Admin" の"cygrunsrv"、"Net" の"openssh" と"openssl"を指定します。この時指定した、"Net" の"openssh"のバージョンによって、環境設定での操作が異なります。指定完了後次へ(N) >をクリックします

     

     

  9. インストール終了後、アイコンを作るか否かを指定します。指定後、 完了 >をクリックします。

OpenSSH for Windows

  1. ダウンロードした「setupssh381-20040709.zip」を、適切なソフトウェアで伸張(解凍)します。
  2. 得られたsetupssh.exeを実行します。
  3. 次の画面で、Next >をクリックします。
  4. 次の画面で、示されたライセンス内容に合意する場合は、"I accept the terms in the License Agreement"のラジオボタンを選択し、 Next >をクリックします。
  5. 次の画面で、セットアップするコンポーネントを選択します。全てチェックされていて問題ありません。選択後、 Next >をクリックします。
  6. 次の画面で、インストールするディレクトリを指定します。既定値で問題ないでしょう。本文書では、以後 C:¥Program Files¥OpenSSH にインストールしたと仮定して説明を進めます。 指定後、Next >をクリックします。
  7. 次の画面で、スタートメニューを作成するフォルダを選択してInstallをクリックします。 セットアップコンポーネントの選択において、"Start Menu Shortcuts"を選択しなかった場合は、ここでの設定は不要です。
  8. インストール処理中、次のようなダイアログが出ます。このダイアログは、「OpenSSHサーバをセットアップ後、 インストールディレクトリ下のetcディレクトリにあるpasswdファイルを編集する」よう指示しています。 OKをクリックします。
  9. 次の画面で、Finishをクリックします。

↑ 目次にもどる

環境設定

OpenSSH(Cygwin)

   事前にご確認ください

ご利用のパソコンに、「Administrator」や「Guest」、IIS用のアカウントなど、Windows標準のアカウント以外にユーザがいない場合は、このスクリプトを実行する前に、WindowsにOpenSSH用のユーザ(英語のユーザー名で、「コンピュータの管理者」)を追加してください。

Windows標準のアカウントは、外部からの攻撃対象となりやすいので、SSH用のユーザとしては設定しません。

   ver.5.1p1-9以前

  1. [スタート]→[コントロールパネル]→[システム]→[詳細設定]タブ→[環境設定]を選択します。
  2. システム環境変数の新規(W)をクリックし、以下の値を入力します。入力後、 OKをクリックします。
    変数名:Cygwin
    変数値:binmode ntsec tty
  3. 続いてシステム環境変数からpathを選択し、編集(I)をクリックし、以下の値を追加します。設定後、 OKをクリックします。
    変数値:C:¥cygwin¥bin;
  4. Cygwinを起動し、"cygcheck -c openssh"コマンドを実行します。OpenSSHがインストールされていることを確認し、Windowsを再起動します。
  5. Cygwinを起動し、"ssh-host-config -y"コマンドを実行します。途中でSSHパスワード(設定を行っているユーザのパスワード)と、"binmode ntsec tty"を入力します。
  6. エディタでC:¥cygwin¥etc ディレクトリにある sshd_config ファイルを開きます。
  7. 15行目付近にある「Protocol 2」という記述の後ろに、「,1」を追加します(カンマの追加忘れに注意)。
  8. Protocol 2,1
  9. ファイルを上書き保存して、エディタを終了します。
  10. sshd_configファイルでポート番号の設定を行わない場合、SSHサーバのポート番号は 22 となります。

    sshd_configファイルをメモ帳など、改行コード「LF」が扱えないソフトウェアで開くと、改行コードがWindows標準の「CR+LF」に変換されてしまい、OpenSSHが動作しなくなります。改行コード「LF」が扱えるエディタをご用意ください。

  11. [スタート]→[コントロールパネル]→[ユーザー アカウント]→[ユーザーアカウント制御の有効化または無効化]を選択します。
  12. チェックボックス [ユーザー アカウント制御(UAC)を使ってコンピュータの保護に役立たせる] にチェックを入れ、[OK]を選択します。
  13. [これらの変更を適用するにはコンピュータを再起動する必要があります]と表示されるので、[今すぐ再起動する]を選択し、Windowsを再起動します。
  14. [スタート]→[管理ツール]→[サービス]を開き、「CYGWIN sshd」が開始していることを確認します。

   ver.5.1p1-10以降

  1. [スタート]→[コントロールパネル]→[システム]→[詳細設定]タブ→[環境設定]を選択します。
  2. システム環境変数の新規(W)をクリックし、以下の値を入力します。入力後、 OKをクリックします。
    変数名:Cygwin
    変数値:ntsec
  3. 続いてシステム環境変数からpathを選択し、編集(I)をクリックし、以下の値を追加します。設定後、 OKをクリックします。
    変数値:C:¥cygwin¥bin;
  4. Cygwinを起動し、"cygcheck -c openssh"コマンドを実行します。OpenSSHがインストールされていることを確認し、Windowsを再起動します。
  5. Cygwinを起動し、以下のコマンドを入力します。
    ・chmod +rw /etc/passwd
    ・chmod +rw /etc/group
    ・chmod 111 /var
  6. "ssh-host-config -y"コマンドを実行します。途中で入力を求められますので、1度目は"yes"、2度目と3度目は"cyg_server"を入力します。4度目と5度目には本設定終了後、新たに作成されるsshdサービス管理用アカウントの認証パスワードを入力します。
  7. "Host Configuration finished. Have fun!"というメッセージの表示後、Windowsを再起動します。
  8. Windowsに新しく"Privileged server"というユーザーが登録されますので、ログオンします。ログオンパスワードは上記6.にて入力したパスワードです。
  9. エディタでC:¥cygwin¥etc ディレクトリにある sshd_config ファイルを開きます。
  10. 15行目付近にある「Protocol 2」という記述の後ろに、「,1」を追加し(カンマの追加忘れに注意)、ファイルを上書き保存して、エディタを終了します。
  11. Protocol 2,1

    sshd_configファイルでポート番号の設定を行わない場合、SSHサーバのポート番号は 22 となります。

    sshd_configファイルをメモ帳など、改行コード「LF」が扱えないソフトウェアで開くと、改行コードがWindows標準の「CR+LF」に変換されてしまい、OpenSSHが動作しなくなります。改行コード「LF」が扱えるエディタをご用意ください。

  12. [スタート]→[コントロールパネル]→[ユーザー アカウント]→[ユーザーアカウント制御の有効化または無効化]を選択します。
  13. チェックボックス [ユーザー アカウント制御(UAC)を使ってコンピュータの保護に役立たせる] にチェックを入れ、[OK]を選択します。
  14. [これらの変更を適用するにはコンピュータを再起動する必要があります]と表示されるので、[今すぐ再起動する]を選択し、Windowsを再起動します。
  15. [スタート]→[管理ツール]→[サービス]を開き、「CYGWIN sshd」が開始していることを確認します。

OpenSSH for Windows

OpenSSH for Windowsでは、環境設定を簡単に行えるスクリプトをご提供しておりますので、これを利用します。

   事前にご確認ください

openSSH for Windowsの設定を手動で行いたい、設定内容の詳細を知りたい方は、OpenSSH for Windowsの環境設定(詳細な手順)をご覧下さい。 環境設定スクリプトをご使用の場合、手動での設定は不要です。

ご利用のパソコンに、「Administrator」や「Guest」、IIS用のアカウントなど、Windows標準のアカウント以外にユーザがいない場合は、このスクリプトを実行する前に、WindowsにOpenSSH用のユーザ(英語のユーザー名で、「コンピュータの管理者」)を追加してください。

Windows標準のアカウントは、外部からの攻撃対象となりやすいので、SSH用のユーザとしては設定しません。

環境設定スクリプトを実行後、ウィンドウの×ボタンで閉じないでください。 必ず、Setp7の終了後に表示されるこのウィンドウを閉じるを押して閉じてください。

一度、このスクリプトを実行した後で、再びスクリプトを実行すると、ログインユーザを最初から再設定します。 前回設定したログインユーザは上書きされ使用できなくなりますのでご注意ください。

  1. 左の「環境設定スクリプトのダウンロード」をクリックします。
  2. ダウンロードした「setup_sshwindows.zip」を、適切なソフトウェアで伸張(解凍)します。
  3. 得られた「setup_sshwindows.vbs」をダブルクリックして実行します。
    ウィンドウが立ち上がり、環境設定が自動的に行われます。
  4. OpenSSHのインストールが問題なく行われていれば、「Step5: ユーザ情報の生成」まで自動的に進み、Windows上のユーザの一覧が表示されます。
    これは、SSHを使ってWindowsにログインできるユーザーを決めるものです。ユーザーの選択が終わりましたら[選択完了]を押します。

    ここで、いずれかのチェックを外しても、普通にパソコンを使う場合には何も支障はありません。

    チェックを外したユーザは「暗号化の設定」画面で「SSHユーザ」 「SSHパスワード」として指定できなくなるようになります。

  5. Step7で「SSH疎通テスト」を行います。これは、実際にSSHを使ってご利用のパソコンにログインできるかどうかをテストします。 Windowsに複数のユーザが登録されている場合、次のような画面が表示されます。これからの疎通テストを行うユーザを、リストから選択します。

    ご利用のWindowsに、1つだけユーザが登録されている場合、この画面は現れず、自動的に、そのアカウントを使ってテストが開始されます。

  6. 別のウィンドウが立ち上がり、以下のような画面が表示されます。"yes"と入力してEnterを押します(画像をクリックすると拡大画像を表示します)。
    SSH疎通テストの最初の画面

    (画像をクリックすると拡大画像を表示します)

  7. 5で選択したユーザーのパスワードを入力してEnterを押します。

    セキュリティ上の理由から、入力したパスワードは表示されません。

    入力したパスワードは表示されませんが、実際には入力できていますので、正しいパスワードを入力し、Enterを押してください。

    SSH疎通テストで、パスワードを入力する画面

    (画像をクリックすると拡大画像を表示します)

  8. 以下の図のように「続行するには何かキーを押してください...」と表示されましたら成功です。 何かキーを押すと、ウィンドウが閉じます。

    (画像をクリックすると拡大画像を表示します)

  9. もとのウィンドウに以下のように表示されますので、このウィンドウを閉じるを押します。
  10. 以下のダイアログが表示されますので、はいを押してウィンドウを閉じます。

↑ 目次にもどる

ファイアウォールの設定

外部からμVNCを通じてOpenSSHに接続するには、ファイアウォールの設定が必要な場合があります。一般家庭でのファイアウォールの設定箇所には、以下のような候補が考えられます。

これらの設定方法に関しては、各製品のマニュアルを参照してください。

これらを設定する場合、必要となる情報としては以下があります。本文章の例では、通信を許可するポート番号は 22 となります。OpenSSHのポート番号を変更した場合には、変更した番号を設定してください。

通信を許可するプログラム名
OpenSSH(Cygwin)
C:¥cygwin¥bin¥cygrunsrv.exe
C:¥cygwin¥usr¥sbin¥sshd.exe
OpenSSH for Windows
C:¥Program Files¥OpenSSH¥bin¥cygrunsrv.exe
C:¥Program Files¥OpenSSH¥usr¥sbin¥sshd.exe
通信を許可するポート番号
22

↑ 目次にもどる

注意事項

Windowsのユーザー名が日本語の方へ
Windowsのユーザー名が日本語の場合、OpenSSHの動作に悪影響を与える可能性があります。 新たに英語のユーザー名を作成し、そのユーザーを「コンピュータの管理者」にして下さい。
Cygwinをインストールされている方へ
ここでご紹介しているOpenSSH for Windowsは、CygwinからOpenSSHパッケージを抜き出して作られています。そのため、Cygwinがインストールされている環境にOpenSSH for Windowsをインストールすると悪影響を与える恐れがあります。
Cygwinをご使用いただいている場合、OpenSSH for Windowsをインストールせず、Cygwin上で動作するOpenSSHをご利用ください。
Windows標準のファイアウォール以外のセキュリティソフトをインストールされている方へ
既にWindows標準のファイアウォール以外のセキュリティソフトをインストールされている場合、ここでご紹介しているOpenSSHが正常に動作しない場合があります。
この場合には、OpenSSHのご使用を中止していただくか、インストールされているセキュリティソフトの製造元へお問合せ下さい。

↑ 目次にもどる