sshクライアントを設定しよう(Windows編 その1)

【連載】

にわか管理者のためのLinux運用入門

【第6回】sshクライアントを設定しよう(Windows編 その1)

[2016/01/19 08:00]後藤大地 ブックマーク ブックマーク

Windows環境でsshクライアントを設定するには?

前回はMac OS XやLinux/*BSDからsshクライアントを使うための設定方法を紹介した。これらのプラットフォームには最初からsshコマンドが用意されているので、特に難しいことはなかった。だが現在、企業ではWindowsを使っているケースのほうが圧倒的に多い。

Net Applicationsの報告によれば、2015年12月におけるデスクトップ向けOSのうち、Windowsのシェアは91%以上だという。さらにバージョン別に見るとWindow 7が55%を超えており、向こう数年間は「2人に1人がWindows 7を使っている」という状況が続きそうだ。そこで本連載では、Windows 7を使ってsshクライアントを設定する方法について説明することにしたい。

ただし、ここで問題がある。今、Windowsでsshを使い始めるには、少しばかり時期が悪い。マイクロソフトはこれまでOpenSSHを正式にサポートしていなかったため、通常はssh機能を持ったターミナル・アプリケーションをインストールして利用するというのが定石だった。

しかし、ここに来て状況が変わり始めた。マイクロソフトのPowerShellチームが昨年、「今後正式にOpenSSHをサポートする」と発表したのだ。すでに昨年末までに数度のバイナリ・リリースも実施しており、今年春には正式版のリリースが予定されている。つまり、これからはマイクロソフトが提供するOpenSSHを利用するのが、Windowsでのデファクト・スタンダードになっていく可能性が高い。そうなれば、導入手順も洗練され、簡便化されるだろう。

とは言え、それは今春以降の話であり、今バイナリ・リリースを利用する際はまだ少し手間がかかるのだ。今回からは数回にわたり、現段階におけるWindowsでのsshクライアントの設定方法について紹介していくが、多少面倒な作業が伴うのはそういう事情である。

GitHubからOpenSSHのWindows向けバイナリを入手しよう

Windows向けのOpenSSHのバイナリは、GitHubで提供されている。まずは最新版のビルド済みバイナリをダウンロードしてほしい。

GitHub PowerShell/Win32-OpenSSHからバイナリをダウンロードする

ダウンロードしたファイルを展開すると、「ssh.exe」というコマンドを確認できる。

ssh.exeなどのコマンドを確認できる

この青いコマンドプロンプトを表示しているアプリケーションは、「PowerShell」という、Mac OS XやLinuxのターミナルのようなものだ。スタート・メニューの「プログラムとファイルの選択」から検索すると、見つけやすいだろう。基本的には、このアプリケーション上でssh.exeを実行して利用することになる。

環境変数PATHの設定とコマンドのインストール

コマンドを利用できるようにするために、環境変数PATHに設定されているフォルダにssh.exeをコピーしておきたい。だが、デフォルトの状態では該当するフォルダは設定されていない。

そこで、とりあえずユーザーのホーム・フォルダに「bin」というフォルダを作成し、そこにssh.exeをコピーする(ここでは、C:\Users\daichi\binとなる)。そして、このフォルダへのパスを環境変数PATHに追加すれば、フォルダ内のファイルをコマンドとして利用できるようになる。

C:\Users\daichi\binフォルダにssh.exeをコピーした

環境変数PATHにC:\Users\daichi\binを追加するには「$env:path += ‘;C:\Users\daichi\bin’」のように入力/実行すればよいわけだが、このやり方だとPowerShellを起動するたびに実行しなければならない。それは面倒なので、PowerShell起動時に自動的にこの処理が実行されるように、自動実行用のファイルにその旨を書き込んでおく。自動実行用ファイルへのパスは$profileに設定されているので、まずはパスを確認しよう。

自動実行用ファイルへのパスは、「echo $profile」と入力/実行すると確認できる

今回の場合、「C:\Users\daichi\Documents\WindowsPowerShell\Microsoft.PowerShwll_profile.ps1」が自動実行用のファイルだ。Mac OS XやLinuxでいうところの~/.profileや~/.bashrcのようなものだと考えておけばよいだろう。メモ帳などお持ちのテキスト・エディタで直接ファイルを開いてみてほしい。

メモ帳(notepad)でプロファイルを開く

もし、ファイルがまだ存在しなければ以下のようなダイアログが起動するので、「はい」を選択してファイルを新規作成する。

ファイルがまだ存在しない場合は、新規作成する

ファイルを開いたら、先ほどの処理を書き込んで保存する。

環境変数PATHに、ssh.exeなどをコピーしたフォルダのパスを追加

そして最後に、これがちょっとばかり手間なのだが、このファイルが実行できるようにポリシーを変更する必要がある。この操作は管理者権限で行う必要があるため、スタート・メニューから「Windows PowerShell Modules」というアプリケーションを検索して起動し、「Set-ExcutionPolicy RemoteSigned」と入力して変更する。

$profileが起動時に実行されるようにポリシーを変更

なお、PowerShellとPowerShell Modulesは見た目が似ているが、PowerShell Modulesはタイトル・バーに「管理者」という文字が表示されるし、アイコンにもシステム管理者的なイメージを抱かせる盾のアイコンが付随しているので、その辺りで見分けていただきたい。

ssh.exeの動作を確認してみよう

ここまでの設定が適切にできていれば、PowerShell起動後に環境変数PATHの設定を確認すると、「C:\Users\daichi\bin」が追加されているはずだ。

環境変数PATHに「C:\Users\daichi\bin」が追加された

そして、ssh.exeのパスが「C:\Users\daichi\bin\ssh.exe」となっていることが確認できれば、今回の作業は成功だ。

ssh.exeのパスが「C:\Users\daichi\bin\ssh.exe」になっている

これで、ssh.exeコマンドを実行すると、サーバにログインできるようになる。

Windows PowerShellでssh.exeを実行してサーバにログイン

もし今後、現在開発中のsshのバイナリがアップデートされた場合は、今回コピーしたファイルを上書きすればよい。

今回のおさらい

今回のおさらいは次のとおりだ。

  • マイクロソフトは、WindowsでのOpenSSH正式サポートへ向けた開発を進めている
  • Windows OpenSSHの正式リリースは、2016年春以降に予定されている
  • 開発中ではあるものの、GitHubからビルド済みファイルをダウンロードし、PowerShellで利用できる
  • インストールすれば、使い方はMac OS XやLinux/*BSDと同じ

現状ではやや導入手順が煩雑なのが難点だが、正式版がリリースされたらもっと簡単になると期待したい。クライアント側のOSが変わっても設定は使い回せるので、Linuxユーザーもこの機会に一度、WindowsでOpenSSHを使ってみてほしい。

※ 本記事は掲載時点の情報であり、最新のものとは異なる場合がございます。予めご了承ください。

一覧はこちら

連載目次

もっと知りたい!こちらもオススメ

 【特別企画】 管理者にお馴染みの

【特別企画】 管理者にお馴染みの"バックアップ問題"、Win/Linux混在環境の担当者が出した答えとは?

地味ながらも面倒なうえ、ミスが許されないために精神的苦痛も伴うシステム管理作業。それがバックアップではないだろうか。コスト抑制のためLinuxを使って自力で構築したが、運用に関してもお金をかけられず、シェルスクリプトを組んでバックアップを行う。しかし、細かい作業にそれなりの人足をとられるため結果的にコストが嵩むうえ、実のところ正常にリストアできるかも怪しい。…

関連リンク

この記事に興味を持ったら"いいね!"を Click
Facebook で IT Search+ の人気記事をお届けします
注目の特集/連載
[解説動画] Googleアナリティクス分析&活用講座 - Webサイト改善の正しい考え方
[解説動画] 個人の業務効率化術 - 短時間集中はこうして作る
ミッションステートメント
教えてカナコさん! これならわかるAI入門
AWSではじめる機械学習 ~サービスを知り、実装を学ぶ~
対話システムをつくろう! Python超入門
Kubernetes入門
SAFeでつくる「DXに強い組織」~企業の課題を解決する13のアプローチ~
PowerShell Core入門
AWSで作るマイクロサービス
マイナビニュース スペシャルセミナー 講演レポート/当日講演資料 まとめ
セキュリティアワード特設ページ

一覧はこちら

今注目のIT用語の意味を事典でチェック!

一覧はこちら

会員登録(無料)

ページの先頭に戻る