2014/03/06

linux ssh key putty config port forwarding

ssh/keyなど、毎回はまる。
うまくいかない場合もある。

・sshdサーバーデーモン、クライアントのssh
    sshdはsshに対して2つの認証を行う
 ホスト認証
    ライアント上には通常 known_hosts と呼ばれるファイルがあり、
    ここには特定の IPアドレス (とホスト名) をもつサーバのホスト公開鍵が登録されています。
 ユーザ認証
    ーーーーー>ここ押さえて、なんとなく調べられるかな。。。
   
・ssh -v
  which ssh
    たいていの場合、システムの OpenSSH では
    よく使うプログラムは /usr/bin
    設定ファイルは /etc/ssh
    サーバデーモンは /usr/sbin
    補助プログラム (ユーザは直接実行しない) は /usr/libexec (あるいは /usr/libexec/openssh)
 
・認証エージェント
通常の公開鍵認証では、ユーザのパスフレーズによって 復元された秘密鍵は一回しか認証に使われず、一度ログインしたあとは失われてしまいます。
 これに対して認証エージェントは復元された秘密鍵を一定時間にわたってメモリ上に保持し、 何度も使うことができます。

・ssh-keygen -t rsa
 --->rsaタイプのキーを生成

・OpenSSh SSh-2形式の鍵をpuTTYで使うために、
 puTTY形式に変換する
 =>PuTTYgenを使ってファイルを変換する
    OpenSSH の秘密鍵 id_rsa を開く
    Save private key ボタンを押す


・逆にputtygen.exeで作成した公開鍵はOpenSSHでは使用できないので、
使用可能な形式に変換する必要がある。変換には、ssh-keygenコマンドを使う。
$ ssh-keygen -i -f putty_id.pub > putty.pub ←putty.pubに変換


・which ssh (ssh のパス名を表示する)
/usr/bin/ssh

・ssh -V (ssh クライアントのバージョンを表示する)
OpenSSH_4.3p2, OpenSSL 0.9.7e-p1 25 Oct 2004


■./ssh/.configにホストの名前を追加、proxyを設定など
ーーーーーーーーーーー
Host **** Hostセクションの名前は、*で全体あるいは部分的にワイルドカード指定が可能だ
  HostName 11.11.11.11
  Port 2222
  IdentityFile id_rsa
  User test
  ProxyCommand connect -H proxy %h %p
  Protocol 利用する ssh バージョンを指定します (1, 2)
ーーーーーーーーーーーーー

■ssh,scpのコマンドライン、オプション
knownHostに自分のポートを追加する
ssh -vN -o ServerAliveInterval=5 -L 10022:22:host1
==>わかりづらい。

 -i identityファイル
 -o オプションの指定、これはコマンドラインオプションでは指定できないオプションを指定したいときに便利です
 -L [localhostポート]:[リモートホスト]:[リモートホストポート]

■ ポートフォワーディング(port forwarding)とは、
    ローカルコンピュータの特定のポートに送られてきたデータを、
    別な通信経路を用いてリモートコンピュータの特定ポートに送信する事です。
    通常の通信では、各アプリケーションに応じたポートを経由して通信が行われます。しかし、一度ローカルマシンとリモートマシンをSSHで接続し、
    その経路を使用してアプリケーションの通信を行います。 この経路の事を、”SSHトンネル”と呼ぶこともあります。
     SSHで暗号化されたSSHトトンネルを掘り、そのトンネルの中にデータを送るといったイメージです。
    この方法により、通信を暗号化することができ、セキュリティを高める事ができます
    SSH の接続を保ったまま、、他の何をする