pageant ログイン

以下は Teraterm と pageant を組み合わせて利用する方式を説明しています。


本手順について

ssh は、生成した秘密鍵・公開鍵のセットのうち、公開鍵をログイン対象に登録した後、秘密鍵を利用して対象にアクセスする方式です。
Pageant は、秘密鍵の扱いを楽にしてくれるプログラムです。

概要としては、次の図のとおりです。

ssh の公開鍵登録と pageant 管理
ssh の公開鍵登録と pageant 管理

ええ、かなり分かりにくいですね。
ここでは主に、Putty で鍵のセットを生成するところから、Linux にどう登録し、どうアクセスするのか、というところまでを記載しています。

オレンジ系統は、端末で動いている Pageant が秘密鍵/公開鍵を管理していることを表しています。
公開鍵は、Teraterm でログインしたいサーバに置くファイルです。事前に置いておきましょう。

Teraterm が Pageant を利用する場合、Teraterm 起動時に次の指定を行います。
  1. 公開鍵を置いたサーバを指定すること。
  2. Pageant を利用すること
すると、Pageant は該当の秘密鍵を渡すので、毎回パスワード入力や秘密鍵の指定を行う必要なく、アクセスできるようになります。

ダウンロードするファイル

さて、次の表は、本手順で必要となるファイルの一覧です。
不足するようであれば、ダウンロードしておいてください。
ダウンロード先
NoダウンロードファイルURL用途備考
1pageant.exePuTTY 関連ファイル秘密鍵の運用
2puttygen.exe.ppk 形式での公開鍵/秘密鍵を生成必要な場合のみ
上記ソフトウェアは PuTTY もしくは WinSCP にも同梱されています。
すでにインストールされている場合は、それぞれのソフトのインストール先を確認して読み替えてください。

Tera Term はすでにセットアップされているものとして扱っています。
必要であれば Tera Term の導入 を参照してください。

続きを読む

公開鍵暗号方式ログイン

2021/05/31 13:32 Tera Term::使い方

本手順について

ssh は、生成した秘密鍵・公開鍵のセットのうち、公開鍵をログイン対象に登録した後、秘密鍵を利用して対象にアクセスする方式です。

概要としては、次の図のとおりです。
sshの公開鍵登録


ここでは主に、Tera Term で鍵のセットを生成するところから、Linux にどう登録し、どうアクセスするのか、というところまでを記載しています。

本手順書での格納先

本手順で利用する各ファイルの格納先です。
環境に合わせて読み替えてください。
利用ファイル一覧
対象ファイル格納先備考
公開鍵"C:\Users\Windows\Downloads\key\id_rsa.pub"Tera Term で生成します。
秘密鍵"C:\Users\Windows\Downloads\key\id_rsa"Tera Term で生成します。

公開鍵暗号方式では、2つで1組となる鍵を利用します。

公開しても問題ない鍵を、公開鍵と読んでいます。
誰に参照されても問題になる可能性が低いので、アクセスしたいサーバに置く用途に向いています。

公開鍵の対となる秘密鍵は、誰にも渡さない限り安全が保たれます。
ネット上で送信すること自体が危険を含むため、アクセス元で生成することが望ましいです。

秘密鍵を持っている人は、公開鍵が置かれたサーバにアクセスすることが比較的容易になる可能性が高いです。
取り扱いには、十分な注意が必要です。

ログイン対象 SSH サーバ

Linux にインストールされた OpenSSH サーバへのログインを想定しています。

Tera Term での鍵作成

OpenSSH で利用する鍵ファイルを作成します。

本手順では Tera Term の機能を利用して鍵生成する方法を説明します。

続きを読む

2019/07/28(日)Tera Term 執筆者一覧

2021/05/08 18:16 その他::メモTera Term::index

Taro Sample

サンプル(さんぷる) 太郎(たろう) さん

連絡先

メールアドレス (Domain: example.jp)
example

備考

スパムメール対策で、メールアドレスにドメインを付与していません。
送信する場合は @とともにドメイン (Domain: xxxx) を付与する必要があります。
この例であれば example@example.jp になります。

なお example.jp は、例示用ドメインとして jprs が予約しています。example@example.jp へのメールは送信不能です。
https://jprs.jp/faq/use/

続きを読む

アンインストール方法


Windows から Tera Term をアンインストール方法は、いくつかあります。

いずれを実行するにせよ、アンインストール前に Tera Term が起動していないことを確認してください。
実行中アプリは、アンインストールおよび削除できません。

方法 1 「アプリと機能」を利用する

「Windows の設定」を呼び出す

スタートメニューから「設定」をクリックします。

「アプリと機能」を呼び出す

「アプリ」をクリックします。

「Tera Term」を選択

「Tera Term」をクリックして「アンインストール」ボタンを表示します。

アンインストールの実行

再確認のために表示された「アンインストール」ボタンをクリックします。

方法 2 アンインストーラ (unins000.exe) を利用する

Tera Term は、32bit プログラムなので、Windows OS が 32bit 版か 64bit 版かでインストール先が変わります。

32bit 版の場合

デフォルトインストールであれば、以下のフォルダに格納されています。
unins000.exe を実行してください。
%ProgramFiles%\teraterm\unins000.exe

64bit 版の場合

デフォルトインストールであれば、以下のフォルダに格納されています。
unins000.exe を実行してください。
%ProgramFiles(x86)%\teraterm\unins000.exe

方法 3 手動で全部削除する

関係ファイルの削除

Tera Term ディレクトリにある Tera Term 関係のファイルをフォルダ毎すべて削除してください。
Tera Term は、32bit プログラムなので、Windows OS が 32bit 版か 64bit 版かでインストール先が変わります。
32bit 版の場合
デフォルトインストールであれば、以下のフォルダに格納されています。
teraterm フォルダ毎すべて削除してください。
%ProgramFiles%\teraterm
64bit 版の場合
デフォルトインストールであれば、以下のフォルダに格納されています。
teraterm フォルダ毎すべて削除してください。
%ProgramFiles(x86)%\teraterm
任意の場所にインストールした場合
解凍後に手動でインストールした、任意のフォルダを削除してください。

フォントの削除

コントロールパネルの「フォント」から "Tera Special" フォントを削除してください。

レジストリの削除

Tera Term Menu を使用していた場合は、レジストリ HKEY_CURRENT_USER\Software\ShinpeiTools\TTermMenu を削除して下さい。

レジストリエディタは、コマンドプロンプト等より以下のコマンドで実行できます。
> regedit
・削除対象レジストリ
HKEY_CURRENT_USER\Software\ShinpeiTools\TTermMenu

エスケープ文字


エスケープ文字

Tera Term マクロに限らずプログラムではエスケープ文字を利用したくなる場面があります。

例えば、シェルで改行文字をエスケープすると、内容によっては長くなってしまう1行も、適切に改行することで見やすいスクリプトになります。
$ cat sample.sh
#!/bin/bash
the_first_value="5"
the_second_value="6"
printf "This sample calculation message %s + %s = %s\n" \
  ${the_first_value} \
  ${the_second_value} \
  $((the_first_value + the_second_value))
$ bash sample.sh
This sample calculation message 5 + 6 = 11
例えば、括り文字 (シングルクォーテーション ' や、ダブルクォーテーション " のこと)をエスケープすると、括り文字の中で括り文字を扱うことができます。
$ echo "This is \"double Quotation\" sample"
This is "double Quotation" sample

結論

結論を言うと、現時点*1において Tera Term にエスケープ文字はありません。

*1 : Tera Term バージョン 4.103

代替方法

エスケープする方法がないため、上記の使用例に対する代替案を記します。

ASCII コードを直指定

括り文字の中に括り文字を利用する場合は、ASCII コードを直に指定する方法があります。
指定方法
ASCII コードを利用
Tera Term で ASCII コードを指定するには、文字に割り振られた番号に # を付与します。

'#' で数値が記述場合、10進数 (0~9) での指定です。
'#$' で数値が記述されている場合、16進数 (0~F) での指定です。

たとえば Tera Term で文字 A を指定する場合、10進数では #65 を、16進数では #$41 を記述します。
ASCII コードで指定可能な文字については ASCII コード を参照してください。
制御文字/印字可能文字に関わらず指定可能です。

・ASCII コードでの代替指定
sprintf "This is "#34"double quotation"#$22
messagebox inputstr 'message test'
ASCII コードでの指定

クォーテーションの種類を変える
厳密にいうと代替方法ではありませんが、シングルクォーテーションの中でダブルクォーテーションを利用することは可能です。
sprintf 'This is "double quotation"'
messagebox inputstr 'message test'
制限事項
上述のような ASCII コード指定する場合は、クォーテーションの中に入れることができません。

・ASCII コードの指定をミスしている例
sprintf "This is #34double quotation"#$22
messagebox inputstr 'message test'
クォートを指定ミスしている例


また、一連の文字列にはスペースを入れることができません。

・ASCII コードが反映されない例
sprintf "This is " #34 "double quotation"#$22
messagebox inputstr 'message test'
反映されない例


スペースも ASCII コードで指定可能なので、以下のように記述します。

・スペース文字を指定した例
sprintf "This is"#32#34"double quotation"#34
messagebox inputstr 'message test'

strconcat

文字列を、何列かに分けて組み立てたい場合は strconcat を利用することで代替できるかもしれません。

もともと strconcat を使っているものを sprintf2 に代替したものが Linux SSH ですが、逆に sprintf2 を strconcat で分解する方法としても参考になると思います。