はじめに
こんにちは、Windows PCで仕事をしているtsuyuhです。
私はこれまでもずっとWindows PCを使ってきましたが、バイオインフォマティクス界隈ではMacユーザが幅を利かせている (偏見) ので、若干肩身が狭かったです。
(アメリエフはWindowsユーザとMacユーザが半々くらいなのでいい会社: ))
確かに、バイオインフォマティクスをやるならMacの方が何かと便利ではあるんです。 とは言っても、わざわざ使い慣れていないOSに変えるのは面倒くさいんですよね。Windows気に入ってますし。
そんなわけで、会社や研究室で肩身の狭い思いをしているWindowsユーザの皆様に向けて、何かを書いてみようと思います。
今回は、サーバへの接続方法について紹介します。
作業環境
Windows 10 Pro v20H2
Tera Term v4.105
Tera Termをインストール
Windows PCでサーバに接続するためには、「Tera Term」というソフトを使うのが便利です。
※ PowerShellでもコマンド使えばできるけど、設定が結構大変。。
まず、このページ↓ から適当なバージョンのexeファイルをダウンロードします。
ダウンロードファイル一覧 - Tera Term - OSDN
※ Tera Termのバージョンによっては使えないコマンドがあるらしい…
落としたexeファイルを開くとインストーラが起動します。
色々選択肢が出てきますが、基本的にデフォルトのままでOK。
インストールが完了したらデスクトップにアイコンができます。
サーバ接続のための準備
特定のサーバに接続するにはユーザ名とパスワードまたは「鍵」が必要になります。
サーバの管理設定によって異なるので管理者に聞いてみてください。
ここでは設定が難しい鍵の使い方を説明します。
用意する鍵は以下の2本
・秘密鍵
→ サーバに接続するときに使う
・公開鍵
→ 秘密鍵で入れるように予めサーバに登録しておく
⇒ ざっくり言うと、鍵と鍵穴の関係です。
... サーバ (家) に入るために、ユーザ名 (自分専用のドア) に紐づけられた公開鍵 (錠前) 、とその秘密鍵 (鍵) といったところでしょうか。
作業の流れ
1. サーバ管理者にユーザ名を登録してもらう。
2. 自分のPCで秘密鍵と公開鍵を作成する。
3. サーバ管理者に公開鍵を渡して、登録してもらう。
4. 自分の秘密鍵を使ってサーバに接続する。
鍵の作り方
まず、Windows PowerShellを開きます。
Windows 10ならデスクトップ左下のWindowsマークを右クリックすればあるはず。
次に、PowerShell上で適当なディレクトリに移動して、".ssh" フォルダを作成します。
> cd Desktop > mkdir .ssh
そして、下記コマンドを入力します。
> ssh-keygen -t ed25519 -f .ssh/example_key -C " " ### オプション説明 ### # -t: 署名アルゴリズム。"ed25519" が強い。 # -f: 鍵の名前。.sshディレクトリ内に"example_key" という名前の鍵ファイルが出力される。 # -C: コメント付与。なんでも書けます。
すると、パスワードを入れろというメッセージが出力されるので、必要なら入力してEnter、要らないなら何も入力せずにEnterを押します (確認のため再入力が求められる)。
Enter passphrase (empty for no passphrase): Enter same passphrase again:
その結果、.shhフォルダ内に秘密鍵と公開鍵が作成されました!
拡張子が付いていない方 (example_key) が秘密鍵、拡張子 (.pub) が付いている方 (example_key.pub) が公開鍵です。
→ 公開鍵はサーバの管理者に渡してください。優しい管理者なら登録してくれるはずです。
※ 秘密鍵は絶対に他人に渡さないでください。
Tera Termでサーバに接続
今回は、社内のとあるLinuxサーバにSSH接続してみようと思います。
とあるサーバ
IPアドレス: (仮) 123.456.78.90
ポート番号: (仮) 1024
まず、Tera Termのアイコンをダブルクリックするとこんな画面が出てきます ↓
これを以下のように設定します。
・「ホスト(T)」 の欄にIPアドレス (123.456.78.90) を入力
・「TCPポート#(P)」 の欄にポート番号 (1024) を入力
・「サービス」はSSHのラジオボタンをクリック
・「SSHバージョン(V)」はSSH2を選択
・「IPバージョン(N)」はAUTOを選択
→ できたら「OK」をクリックします。
※ 初めて接続する場合はセキュリティ警告が出ますが、「続行」をクリックすればOKです。
すると、下記のような画面が表示されます ↓
これを以下のように設定します。
・「ユーザ名(N)」の欄に、サーバに登録してもらった自分のユーザ名を入力。
・「パスフレーズ(P)」の欄は空欄のまま。
※ サーバ管理者にパスワードを設定してもらえば、鍵がなくても接続できます。が、セキュリティ的にはちょっと弱い。
・「認証方式」は「RSA/DSA/ECDSA/ED25519鍵を使う」のラジオボタンをクリック。
次に、「RSA/DSA/ECDSA/ED25519鍵を使う」の「秘密鍵(K)」の欄の右端にある "..." ボタンをクリックします。
すると、秘密鍵ファイルを選択する画面が表示されるので、下図の通り適切な秘密鍵ファイル (example_key) を選択して、「開く」をクリック。
最後に、Tera TermのSSH「認証画面」で「OK」をクリックすればサーバに接続完了。
あとはTera Term上で適当なコマンドを打って解析するだけ!
まとめ
・Windows PCでサーバに接続するならTera Term
・ssh-keygen
コマンドで秘密鍵と公開鍵を作成
・サーバに公開鍵を登録してもらえば、秘密鍵を使っていつでもサーバにログイン可能