🐧

Windows 版 OpenSSH クライアント:Linux 使い(略)Advent Calendar 2024

2024/12/06に公開

はじめに

これは「Linux 使いになりたい人のための Advent Calendar 2024」の記事です。

筆者は、Web エンジニアを志望する人には、セルフホスト Git サービスを稼働させて利用することをオススメしています。もし Git を使ったことがないなら、Git を学ぶときに、セルフホスト Git サービスを稼働させることも視野に含めながら学習するのが効率的だと考えています。

Windows 版 OpenSSH クライアント

前回はセルフホスト Git サービスを使うにあたり、OpenSSH サーバーを設定して SSH プロトコルで Git リモートリポジトリへアクセスできるようにすることが多いといった説明をしました。

OpenSSH サーバーを利用するにあたっては OpenSSH クライアントも必要となるので、今回は、Windows 版 OpenSSH クライアントについて簡単に紹介します。

筆者が知っている Windows 版 OpenSSH クライアントとしては下記があります。

Windows 標準の OpenSSH クライアントについては以前記事にしてあるので省略します。Windows 標準の OpenSSH クライアントはターミナルでコマンドラインで利用し、設定ファイルなども基本的にテキストファイルで用意するため、GUI に慣れている人には使いにくいと感じることが多いでしょう。慣れないうちは、GUI で設定ができる Windows アプリを使いたいと思うかもしれません。

そういうときに、これらのアプリが役に立ちます。

RLogin

RLogin は MIT ライセンスで開発されている OSS です。記事執筆時点での最新版は 2.30.0 でした。Git Bash などで、次のように RLogin.exe ファイルを入手すれば使用できるようになります。

FILE_NAME=rlogin_x64.zip
VERSION=2.30.0
SITE_URL=https://github.com/kmiya-culti/RLogin
DL_URL="${SITE_URL}/releases/download/${VERSION}/${FILE_NAME}"
curl -s -L -o ./${FILE_NAME} ${DL_URL}
unzip ./${FILE_NAME}
rm ./${FILE_NAME}

筆者は、RLogin は1つのファイルだけで実行可能だという点が使いやすいと考えています。インストールや実行までの手順が少なくて済み、利用までのハードルが低いです。

なお、USB メモリへ使用する鍵ファイルと一緒にいれておいて、使うときだけ Windows マシンへ USB メモリを挿して実行するといったことができます。

USB メモリの管理をしっかりとする必要がありますが、パソコンと別に管理することで、安全性を高めることができる場合があります。ノートパソコンなどに直接 OpenSSH クライアントアプリや鍵ファイルはおかず、家で使うときだけ USB メモリから利用し、外出するときは USB メモリは持ち歩かない、ということもできるわけです。

とはいえ、OpenSSH を標準的に使うことが普通になってきた現在だと、そういったことがメリットに感じられる場面は少ないかもしれません。

TeraTerm

TeraTerm は BSD ライセンスの OSS です。winget コマンドで簡単にインストールすることができます。

winget install -e --id TeraTermProject.teraterm

TeraTerm は、豊富なターミナル機能を備えたアプリケーションで、Windows の高機能ターミナルアプリとしては歴史が長いです。日本の開発者が中心となって開発されているもので、利用者も多く、資料も豊富にあるので、ターミナル利用の初心者でも安心して使えます。

TeraTerm は、OpenSSH クライアントアプリというよりは、ターミナルアプリとしての機能に必要性を感じてインストールしておくことの方が多い印象です。すでに TeraTerm が必要でインストールしてあるときは、別途 OpenSSH クライアントアプリをわざわざインストールする必要はないという感じです。

PuTTY

PuTTY は BSD ライセンスの OSS です。winget コマンドで簡単にインストールすることができます。

winget install -e --id PuTTY.PuTTY

通常の OpenSSH とは鍵ファイルのフォーマットが別なのですが、Windows アプリで OpenSSH クライアントの選択肢が少なかった頃に人気があって普及していました。

自分は TeraTerm で OpenSSH を使うより前に PuTTY を使っていて、PuTTY だと対応していない機能が必要になったときに TeraTerm を使っていました。

オリジナルは日本語対応していませんが、有志による日本語版もあります。そちらは winget ではインストールができず、下記のサイトから手動でダウンロードしてインストールする必要があります。

なお、PuTTY-ranvis と iceiv+putty は別物です。

Chrome 用 OpenSSH クライアント

Windows に限りませんが、Chrome で使える OpenSSH クライアントもあります。Google が提供している Chrome の拡張機能で Secure Shell というものです。

Windows 版の Chrome へインストールすることで、Windows 上で OpenSSH クライアントアプリとして実行することができます。他の OS でも同じように使えるため、使えるようになっておくと OS 用の OpenSSH クライアントアプリがない環境でも Chrome で自分のアカウントでログインができさえすれば、OpenSSH が使えるという環境を用意することができるようになります。

OS 用アプリのインストール制限が厳しいが、Chrome に関しては制限が緩い環境のときに重宝します。また、OpenSSH 初心者へ OS へアプリをインストールせずに OpenSSH を使わせたいときには役に立ちます。

おわりに

Windows 標準の OpenSSH クライアントや WSL Ubuntu などが登場する前は、ここで紹介した GUI アプリのどれかを Windows へインストールして使っていました。

最近は、Linux 版の OpenSSH クライアントと同じ設定で利用できることから、Windows 標準の OpenSSH クライアントや WSL Ubuntu 標準の openssh-client パッケージの ssh コマンドを使うことが増えています。

とはいえ、何らかの理由で、これらとは違った OpenSSH クライアントを使いたい場面に出会うこともあるので、こういったアプリについての知識はあると良いのだろう、と考えています。

Discussion