Windows で bash や sshサーバを利用する

ALL
スポンサーリンク

Windows で bash や sshサーバを利用する為のインストール用スクリプトです。
2016.9.18 インストールスクリプトを更新、アップデート方法について追記しました

Windows で bash や sshサーバを使用するには、下記のものがあります。
ところが、sshサーバである OpenSSH for Windows や freeSSHd は更新が2009年、bashが使える Gow は2014年2月の更新が最後です。

OpenSSH for Windows | SourceForge.net
freeSSHd and freeFTPd – open source SSH and SFTP servers for Windows
Windows で Linux のコマンドを使う Gow パソコン鳥のブログ

2014年5月以降では、bash や sshサーバに関する下記の脆弱性が発見されており、これらに対処したものを利用したいところです。

SSLv3 に関する脆弱性(POODLE 攻撃)への対処 パソコン鳥のブログ
【重要】bash に重大な脆弱性が見つかったようです : アジャイル株式会社

現在アクティブに更新されている Cygwin で、Windows で bash や sshサーバを使用できますが、インストールや設定に手間がかかります。

そこで、bash や sshサーバを使用できるように Cygwin からのダウンロードと設定を自動で行うインストールスクリプトを用意しました。
Windows7 32bit/64bit , Windows8.1 64bit で動作確認しました。
2016.9.18 Windows10でも動作確認しました

http://vogel.dip.jp/pub/files/setup_bash_opensshd.zip

setup_opensshd.zip をダウンロード・展開して下さい。

2016.9.18 インストールスクリプトを更新しました
http://vogel.dip.jp/pub/files/setup_bash_opensshd_20160918.zip をダウンロード・展開して下さい。

以降で、Bash と sshサーバのインストール方法について説明しています。
Bash と sshサーバのインストールは重複して行っても問題ありません。

Bash のインストール

install_bash(.bat)を実行して下さい。
「エラー:管理者として実行して下さい」と表示された場合は、エクスプローラで install_bash(.bat)を右クリックして、「管理者として実行」を選んで実行して下さい。。

実行すると、自動的に Cygwin のサイトから setup-x86_64(64bit環境の場合)、または setup-x86(32bit環境の場合) をダウンロードした後、インストールが開始されます。

下の表示が出ればインストールは終了です。

インストールは成功しました
何かキーを押して完了して下さい

インストール先は C:\cygwin64(64bit環境の場合)、または C:\cygwin(32bit環境の場合)です。
またファイルダウンロード領域として C:\cygwin64_package(64bit環境の場合)、または C:\cygwin_package(32bit環境の場合)も作成されます。

Bash の実行

スタートメニューの Cygwin の「Cygwin Terminal」または「Cygwin64 Terminal」を実行するか、インストール先の Cygwin.bat を実行して下さい。
ターミナルが立ち上がります。

2016.9.18 アップデート方法について追記しました

Bash のアップデート

インストール先ディレクトリの update(.bat)を実行して下さい。
下の表示が出ればアップデートは完了です。
更新されるパッケージが無い場合も、下の表示がされます。

アップデートは成功しました
何かキーを押して完了して下さい

下の表示が出た場合は、Windows再起動でアップデートが完了します。

アップデート処理を実行しました
次回システム起動時にアップデートが完了します
何かキーを押してこの画面を閉じてください

Bash のアンインストール

アンインストール用のスクリプトはありません。
インストール先ディレクトリを手動で削除して下さい。
ただし、後述の sshサーバのインストールを行っている場合は、先に sshサーバのアンインストールを行ってください。

sshサーバ のインストール

install_opensshd(.bat)を実行して下さい。
「エラー:管理者として実行して下さい」と表示された場合は、エクスプローラで install_opensshd(.bat)を右クリックして、「管理者として実行」を選んで実行して下さい。。

実行すると、自動的に Cygwin のサイトから setup-x86_64(64bit環境の場合)、または setup-x86(32bit環境の場合) をダウンロードした後、インストールが開始されます。

下の表示が出ればインストールは終了です。

インストールは成功しました
何かキーを押して完了して下さい

インストール先は C:\cygwin64(64bit環境の場合)、または C:\cygwin(32bit環境の場合)です。
またファイルダウンロード領域として C:\cygwin64_package(64bit環境の場合)、または C:\cygwin_package(32bit環境の場合)も作成されます。

sshサーバをインストールと同時に、前述のBashのインストールも行われます。
Bash単体で実行する場合は、インストール先の Cygwin.bat を実行して下さい。
ターミナルが立ち上がります。

なお、前述の Bashのインストール作業を行うと、スタートメニューの Cygwin の「Cygwin Terminal」または「Cygwin64 Terminal」から実行できますので、必要な場合はBashのインストール作業を行って下さい。

sshサーバ への接続

Linux からの ssh接続や、下記で紹介した PuTTY や Tera Term で Windowsマシンに接続することが出来ます。
ファイアウォールの設定で 22番ポートを開けることを忘れないようにしてください。

ターミナルエミュレーター PuTTY(日本語版) パソコン鳥のブログ
ターミナルエミュレーター Tera Term パソコン鳥のブログ

ログインは、インストール時の Windowsユーザアカウントとパスワードで利用できます。

接続時のシェルは Bash になります。
文字コードは UTF-8 です。
また、bashシェル上で cmd と入力すると、コマンドプロンプトが使用可能です。この場合の文字コードは Shift_JIS です。
ただし、コマンドプロンプトではカーソルキーによるヒストリーやカーソル移動が効きません。

下記で紹介した WinSCP での接続も可能です。
接続のファイルプロトコル/転送プロトコルは、SFTP を指定して下さい。

リモートのLinuxとWindows間でGUIでファイルコピーするツール WinSCP パソコン鳥のブログ

2016.9.18 アップデート方法について追記しました

sshサーバのアップデート

インストール先ディレクトリの update(.bat)を実行して下さい。
下の表示が出ればアップデートは完了です。
更新されるパッケージが無い場合も、下の表示がされます。

アップデートは成功しました
何かキーを押して完了して下さい

下の表示が出た場合は、Windows再起動でアップデートが完了します。

アップデート処理を実行しました
次回システム起動時にアップデートが完了します
何かキーを押してこの画面を閉じてください

sshサーバ のアンインストール

インストール先ディレクトリ内の uninstall_opensshd.bat を実行して下さい。
「エラー:管理者として実行して下さい」と表示された場合は、エクスプローラで uninstall_opensshd(.bat)を右クリックして、「管理者として実行」を選んで実行して下さい。。

下の表示が出ればアンインストールは終了です。

アンインストールは成功しました
何かキーを押して完了して下さい

その後、インストール先ディレクトリを手動で削除して下さい。

コメント