http://ttssh2.sourceforge.jp/
久々にターミナルソフトをチェックしてみたら、TeraTermがBSDライセンスで改めてリリースされていますね。あまり変わり映えはしませんが、Puttyなど開発が終了しているソフトが増えるなか、とりあえずサポートされていることは○ですね。
2011年10月11日火曜日
2008年11月1日土曜日
PuTTY No.003(Pageant#2)
PuTTY を使う場合に、Pageant を使ったほうが便利という話(PuTTY No.002(Pageant))がありましたが、それをもう少し便利にする話です。
Pageant を起動して、*.ppk ファイルを読み込んで、その都度、パスフレーズを入力するという手順でした。それが面倒だとも思っていました。が、一々、ppk ファイルを読み込むという作業を省略できることがわかりました。
Pageant をスタートアップに放り込んであると思いますが、その起動時に、ppk ファイルをあらかじめ指定しておくという方法です。
スタートアップアイコンのプロパティの [ショートカット]タブ-[リンク先]に以下の様に指定されていると思います。
"C:\Program Files\PuTTY\pageant.exe"これを以下の様に変更します。後ろに ppk ファイルを指定するだけです。
"C:\Program Files\PuTTY\pageant.exe" "C:\PPK\id_rsa_1.ppk" "C:\PPK\id_rsa_2.ppk"これで、スタートアップでの起動時に、ppk ファイルが読み込まれた状態で起動してきます。PPK ファイルの自動読込ができるわけです。
ただし、パスフレーズの自動入力はしてくれないので、パスフレーズの入力だけは必要です。ここも自動化するのはどうかと思いますが、もし、自動かしたいのであれば、画面の自動制御ツール等を組み合わせて使うしかないと思います。(BearMouseなんかどうでしょうか。)
2008年8月15日金曜日
PuTTY No.002(Pageant)
PuTTY を使っているのであれば、Pageant を使わない手はありません。何をしてくれるツールかというと、鍵認証のパスワード入力を行ってくれるエージェントです。
使い方ですが、PuTTY をインストールすると一緒にインストールされるので、それを前提に説明します。
- Pageant を起動します。
起動すると、タスクトレイに、ターミナルが帽子をかぶったアイコンが表示されます。
やっぱり、‘エージェント’なので、それ風にしてあるということでしょうか・・・
また、常に使うのであれば、[スタートアップ]に放り込んでおくといいでしょう。 - 鍵認証で使う鍵を Pagent へ登録します。
この作業は、起動毎に毎回必要です。鍵が多いと面倒ですね。- タスクトレイの Pagent を右クリックし、[Add Key] を選択します。
- 鍵ファイルを要求されるので、拡張子が ppk の PuTTY Private Key Files形式のファイルを選択します。(例:id_rsa.ppk)
- [Pagent: Enter Passphrase] 画面で、選択した ppk ファイルのパスフレーズ(パスワード)を求められるので、パスワードを入力し、[OK] をクリックします。
- PuTTY でセッションを開くと、Pagent に鍵ファイルが登録済みであれば、パスワード(パスフレーズ)を入力する必要はありません。
おまけといってはなんですが、Pagent への鍵の登録は、上記の方法でも可能えすが、PuTTY の鍵ファイル( .PPK )をダブルクリックしても、[Pagent: Enter Passphrase] 画面が表示され、パスフレーズを入力できます。(わざわざ、Pagent を起動してメニューから [Add-Key] を選択する必要はありません。)まあ、鍵ファイルが奥深いところにあったりすると、Pagent を起動してから鍵ファイルを登録したほうが早いような気もしますが。
また、これもおまけですが、Pagent 起動後は、右クリックで出てくるメニューで、Saved Session を開くと設定保存済みのセッション情報を選択し、起動できます。
PuTTY もパーフェクトというわけではないですが、環境を整えていくと結構使えます。PuTTY 自体は軽くて便利です。また、Tera Term 等に比べても安定しているように感じます。
更に余談ですが、‘ぷてぃ’と読むのではなく、‘ぱてぃ’と読むようですね。
PuTTY - Wikipedia
> PuTTY(パティ)は、Simon Tathamが開発・公開しているターミナル
>エミュレータである。 MIT Licenseのオープンソースソフトウェアである。
2008年7月16日水曜日
自宅サーバ構築 No.002(SSH設定)
とりあえずCentOSをインストールし終わりましたが、当然、このままでは公開できません。まずは、いくつかセキュリティ面で設定する必要があります。
まずは、SSHに必要な設定を行います。
- rootでのログインを禁止する
- パスワード認証を禁止する
- 公開鍵認証のみ許可する
※以下、PuTTYで操作しています。
以下の通り、最初は警告が表示されますが、そのまま[はい]をクリックします。

- root 以外のユーザーを作成
rootでのログインを禁止するわけですから、root以外のユーザーを作成する必要があります。# useradd -d /home/hoge -c HOGE -u 1001 hoge
# passwd hoge
Changing password for user hoge.
New UNIX password:
Retype new UNIX password:
passwd: all authentication tokens updated successfully. - root でのログインを禁止
以下の設定を実施し、rootでログインできないこと、作成したユーザーでログインできることを確認します。# vi /etc/ssh/sshd_config
:
#PermitRootLogin yes ← 標準はデフォルトがyes
PermitRootLogin no
:
# service sshd restart ← 設定反映
sshd を停止中: [ OK ]
sshd を起動中: [ OK ] - 公開鍵作成
パスワード認証を禁止する前に公開鍵認証を設定します。公開鍵認証前にパスワード認証を禁止するとログインできなくなっていまいますから・・・ :-)$ ssh-keygen -b 2048 -t rsa -C hogehoge
Generating public/private rsa key pair.
Enter file in which to save the key (/home/hoge/.ssh/id_rsa):
Created directory '/home/hoge/.ssh'.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/hoge/.ssh/id_rsa.
Your public key has been saved in /home/hoge/.ssh/id_rsa.pub.
The key fingerprint is:
xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx hogehoge - 公開鍵を authorized_keys へ追加
$ cat $HOME/.ssh/id_rsa.pub >> $HOME/.ssh/authorized_keys
$ chmod 600 authorized_keys ← パーミッションを600に変更
$ ls -l authorized_keys
-rw------- 1 centuser centuser 398 7月 17 09:20 authorized_keys
$ rm id_rsa.pub ← 不要なので削除 - id_rsa を保存
id_rsa をターミナルソフトを起動するクライアントへ保存します。これがなくなってしまうと公開鍵の作成からやり直しになるので要注意です。 - id_rsa の変換(PuTTY の場合)
TeraTerm 等では、id_rsa がそのまま使えるので、変換は特に必要ありません。PuTTY の場合は必要になるので、以下の通り変換しておきます。- PuTTYgen を起動します。
- [PuTTY Key Generator]画面で、[Conversions]-[Import key]で保存した id_rsa を開きます。
- [PuTTYgen: Enter Passphrase for key]画面で、パスフレーズを入力します。
- [PuTTY Key Generator]画面で、[Save private key]をクリックし、id_rsa.ppk を作成します。
- ターミナルソフトで公開鍵認証で接続
ターミナルソフトで公開鍵認証で接続できることを確認します。 - パスワード認証を禁止
公開鍵認証での接続が成功することを確認して、パスワード認証を禁止します。
設定後、パスワード認証できないことを確認します。# vi /etc/ssh/sshd_config
:
#PasswordAuthentication yes ← 初期設定では yes なのでコメントアウト
PasswordAuthentication no
:
# service sshd restart ← 設定反映
sshd を停止中: [ OK ]
sshd を起動中: [ OK ]
ひとつ気になるのは、PuTTY でパスワード認証をチャレンジすると
No supported authentication methods availableと表示されて、拒否されます。動作は満たしていますが、パスワード認証を禁止しているということがわかってしまいます。これはできれば隠匿したいですね。パスワード認証時のエラーを返すほうがいいと思いますが、そういう動作をさせると問題あるんでしょうかね。
PuTTY No.001(できるだけマウスを使わない)
PuTTYを使っていると不便なことがいくつかあります。ターミナルソフトとしての基本はできているのですが、シンプル故に何とやらです。
標準の設定のままではマウスを多用しなければいけません。なので、以下が、できるだけマウスを使わないようにするための設定です。
- システムメニューの表示
システムメニューは頻繁じゃないですが、‘新しいセッション’、‘セッションの複製’、‘フルスクリーン’そして、‘設定の変更’と使うメニューは多いです。しかし、このシステムメニューは、ウインドウの左上をマウスでクリックしなければなりません。そこで、システムメニューを[Alt]+[Space]で表示できるようにします。- PuTTY起動時に表示される[PuTTY Configuration]画面で設定します。
- [カテゴリ]-[ウインドウ]-[動作]で、以下の項目をチェックします。
■ALT-Space でシステムメニューを表示する
■Alt-Enter でフルスクリーンにする
- ペースト(貼り付け)
この手のターミナルソフトは、マウスの右クリックで、クリップボードの内容を貼り付けることができます。そして、同様の操作が[Alt]+[v]等のショートカットでペーストできますが、PuTTYでは、それができません。かつ、いわゆるメニューがないので、ショートカットが明示されていないので、分かりづらいのですが、[Shift]+[Ins]でペースト可能です。一応、ヘルプにも以下の通り記述があります。A.6.6 How do I copy and paste between PuTTY and other Windows applications?
Copy and paste works similarly to the X Window System. You use the left mouse button to select text in the PuTTY window. The act of selection automatically copies the text to the clipboard: there is no need to press Ctrl-Ins or Ctrl-C or anything else. In fact, pressing Ctrl-C will send a Ctrl-C character to the other end of your connection (just like it does the rest of the time), which may have unpleasant effects. The only thing you need to do, to copy text to the clipboard, is to select it.
To paste the clipboard contents into a PuTTY window, by default you click the right mouse button. If you have a three-button mouse and are used to X applications, you can configure pasting to be done by the middle button instead, but this is not the default because most Windows users don't have a middle button at all.
You can also paste by pressing Shift-Ins.
2008年7月11日金曜日
ssh鍵認証 No.001(Linuxで鍵作成)
sshで鍵認証する場合の一例です。
- ssh-keygen で id_rsa と id_rsa.pub を作成します。
適当なパスフレーズを入力して作成します。ssh-keygen -t rsa -b 2048
- id_rsa.pub を authorized_keys に追加します。
cat $HOME/.ssh/id_rsa.pub >> $HOME/.ssh/authorized_keys
- id_rsa を 接続するターミナルソフト側で読み込みます。
- PuTTYでは、id_rsa を PuTTYgen で private key として保存します。
- ターミナルソフトで接続時に id_rsa を指定して接続します。
- PuTTYでは、private key として保存した、id_rsa.ppk 等を指定します。
- TeraTermでは、id_rsa をそのまま鍵として指定します。
といってしまうと、確かに鍵認証は、パスワード認証に比べて、より強固なセキュリティを提供してくれるわけですが、大きな落とし穴があります。それは、パスワード認証と併用していると、鍵認証よりも低いセキュリティレベルの認証ができてしまい、パスワード認証可能な環境であれば、「鍵を持っていなくても認証ができる」→「誰でもアタックできる」状態となってしまいます。
以下の様に、sshd_config で、パスワード認証を禁止しておかないとメリットは半減です。
PasswordAuthentication no
登録:
投稿 (Atom)