PuTTYはもう不要?Windows 10標準搭載のOpenSSHクライアントの使い方を徹底解説
遠隔地から*nixマシンを管理する必要がある場合、ほぼ必ずSSHが使われます。BSDやLinuxベースのサーバーOSには、OpenSSHデーモンがあらかじめインストールされているのが一般的です。このデーモンと「会話」してリモートマシンを操作するには、クライアント側にもSSHクライアントが必要になります。
長年、Windowsで最も人気のあるSSHクライアントといえばPuTTYでした。しかし最近の大型アップデート以降、Windows 10には標準でSSHクライアントが搭載されるようになりました。PuTTYをダウンロード・インストール・設定する手間を考えると、標準クライアントの方がはるかに簡単かつ迅速に使い始められます。
WindowsのOpenSSHクライアントをインストールする方法
まず、すでにインストール済みかどうかを確認しましょう。キーボードのWindowsロゴキーを押すか、スタートメニューをクリックし、「cmd」と入力してコマンドプロンプトを開きます。

続いて「ssh」と入力してEnterキーを押します。コマンドラインオプションの簡単な一覧が表示されれば、クライアントはすでにインストールされています。この場合、このセクションの残りの手順は不要です。

もし「コマンドが認識されていません」といったメッセージが表示された場合は、スタートメニューで「features」と検索し、「アプリと機能」を開いて「オプション機能の管理」をクリックします。

次に「機能の追加」をクリックし、リストを下にスクロールして「OpenSSH クライアント」を見つけます。これをインストールすれば準備完了です。

Windows標準のOpenSSHクライアントの使い方
Linuxでsshコマンドを使ったことがある方なら、Windowsでの使い方はすぐに理解できるでしょう。構文もコマンドラインオプションもまったく同じです。完全なSSHマニュアルはOpenBSDの公式サイトで読むことができます。
サーバーに接続するための基本構文は次のとおりです。ssh ユーザー名@IPアドレスまたはホスト名
記述例:
ssh root@203.0.113.1 ssh john@example.com
パスワードでログインする場合は簡単です。フィンガープリント(指紋情報)の確認に対して「yes」と入力して受け入れ、その後パスワードを入力します(入力中の文字は画面に表示されません)。

ただし、セキュリティの観点からは、パスワード認証ではなくSSH鍵の使用が強く推奨されます。ボットネットに感染したゾンビPCは、常時インターネット上のOpenSSHサーバーをスキャンし、パスワードの総当たり攻撃(ブルートフォース攻撃)を試みています。一方、SSH鍵は総当たり攻撃では破られません。「パスワード+fail2ban」というよく勧められる構成よりも、はるかに安全です。fail2banは同一IPアドレスからの複数回の試行をブロックできますが、攻撃者は別のIPアドレスからさまざまなパスワードを試し続け、いずれ成功してしまう可能性があります。
SSH鍵でログインする方法
SSH認証用の鍵ペアを作成する方法は多数ありますが、実はWindowsにもssh-keygenが用意されており、コマンドプロンプトから直接利用できます。鍵ペアを作成したら、公開鍵をサーバー側に登録し、パスワードログインを無効化します。そして秘密鍵はWindowsマシン上に保存しておきましょう。
ログイン時には、-iオプションで秘密鍵のパスを指定します。コマンド例は以下のとおりです。
ssh -i C:\Users\mte\testkey root@203.0.113.1

あるいは、秘密鍵を既定の場所へ移動しておく方法もあります。初回接続後、SSHクライアントは現在のユーザーディレクトリ内に.sshというフォルダを自動作成します。コマンドプロンプトで以下のコマンドを実行すると、このフォルダを開けます。
explorer %userprofile%\.ssh
ここに秘密鍵をコピーし、ファイル名を「id_rsa」に変更します。

これ以降は、-iオプションを付けなくても、この秘密鍵を使ってログインできるようになります。
ssh root@203.0.113.1
覚えておきたい便利なSSHコマンドのオプション
-p— SSHサーバーが22番以外のポートで待ち受けている場合に使用します。例:ssh -p 4444 root@203.0.113.1-C— クライアントとサーバー間の通信を圧縮します。非常に低速な回線でのみ有効です。-v— 詳細モード。内部で何が起きているかを大量に出力します。接続トラブルのデバッグに役立ちます。
組み合わせたコマンド例:
ssh -p 4444 -C -v root@203.0.113.1
まとめ
これは基本的にLinuxマシンに搭載されているものと同じOpenSSHクライアントなので、sftpなどのコマンドもそのまま利用できます。これにより、リモートサーバーとのファイルのアップロード・ダウンロードが容易になり、FileZillaのようなFTPクライアントを別途インストールする必要がなくなります。コマンドライン派にとっては大きなメリットでしょう。
さらに、sshコマンドを使えばSSHトンネルの構築も可能です。ISPからグローバルIPアドレスが割り当てられていない環境でも、ローカルコンピュータが外部からの接続を受け付けるといった「不可能」なことを可能にする強力な機能です。これについては、今後のチュートリアルで詳しく解説する予定です。
-
Windows 10でSSHセキュアシェルを使う方法!おすすめクライアント5選を徹底解説
パソコンをリモートデスクトップに接続したり、ネットワーク経由でデータを共有したりするには、セキュアシェル(SSH)が必要です。この記事では、Windows 10でSSHセキュアシェルを使用する方法について詳しく解説します。 SSHセキュアシェルは、デバイスとインターネットを含む任意のネットワーク間の通信システムと考えることができます。通信が暗号化されているため安全であり、ハッカーやスパイウェア、アドウェア、マルウェアなどから、ユーザーがどのサイトや場所にアクセスしているか、どこからデータを受信しているかといった情報を守ることができます。 Linux系OSはWindowsよりも安全性が高いと言わ
-
SSHサーバーを使って動かなくなったWindows PCにアクセス・復旧させる方法
システムが突然クラッシュし、どんなコマンドにも応答しなくなることは珍しくありません。さらに困るのは、大事なファイルにアクセスしたいのにPCがまったく動かせない状態になってしまったときです。しかし、心配はいりません。SSHサーバーを活用すれば、不具合を起こしたWindows PCにもアクセスでき、事態を打開できる可能性があります。まずは、SSHについて簡単におさらいしておきましょう。SSHサーバーとは?SSH(Secure Shell)は、安全性の確保されていないネットワーク上でも、ネットワークサービスを安全に操作できるように設計された暗号化通信プロトコルです。代表的な用途としては、別のコンピュ