putty 形式の秘密鍵からOpenSSH形式の公開鍵ペアを作成

パスフレーズを知っている putty 形式の秘密鍵を元に Linux 系環境で OpenSSH 形式の秘密・公開鍵ペアを作成する方法をメモ。 puttygen のインストール putty 形式から OpenSSH への変換には puttygen を使う。 Linux 環境は各ディストリビューションが putty パッケージの1プログラムとしてパッケージ化しているので、インストールする 鍵形式の変換 $ puttygen keyfile -O output-type -o output-file で変換を行う。 output-type には 秘密鍵の場合は private-openssh 公開鍵の場合は public-openssh を指定 -p オプションでパスフレーズを一緒に変更することもできる。 puttygen で変換後に $ ssh-keygen -f id_rsa -p でパスフレーズを変換することもできる。 鍵の形式を確認 putty形式 OpenSSH形式 公開鍵認証の確認 変換した鍵のペアで認証できることを確認。 公開鍵を ssh-copy-id でリモートサーバに登録 登録した鍵で認証できることを確認 ReferencesContinue reading “putty 形式の秘密鍵からOpenSSH形式の公開鍵ペアを作成”

OpenSSHの警告メッセージを黙らせる

OpenSSHでサーバ接続した時に表示される警告メッセージを、黙らせる方法をメモ。 警告メッセージなしにリモートサーバにsshログイン 初めてのホストに接続する 接続先ホストのフィンガープリントが変わった などといった時に、OpenSSH は警告メッセージを表示するため、ユーザーが何らかの操作を行わないと、次の処理に移れない。 諸般の事情により、このメッセージを黙らせるには、ssh の接続オプションに -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null を指定すると良い。 ssh のオプションで渡す ssh の設定ファイルで指定する ssh オプションの意味 StrictHostKeyChecking オプションは データベースにないホストに接続するときに ask(default) : 確認させる yes : 接続しない no : 接続する を決定する。 “no” にすることで、無条件に接続される。 ssh_config(5) から If this flag is set to “yes”, ssh(1) will never automatically add host keys to the ~/.ssh/known_hosts file, andContinue reading “OpenSSHの警告メッセージを黙らせる”

SSHの多重接続について

tl;dr デプロイツールによっては 同じサーバに SSH で何回もコマンドを実行することがある(ansible とか)。 コマンドごとに毎回コネクション(トンネル)を確立するとオーバーヘッドも大きくなる。 OpenSSH は $HOME/.ssh/config に次の設定を書くことで、接続を多重化(multiplex)することができる。 multiplex 前後の速度差 SSH を使ってリモートサーバで echo コマンドを実行した時の速度差を計測 before multiplex after multiplex 多重化接続してみる 多重化接続の流れ SSH で多重化接続するには ControlMaster=yes で多重化のためのコントロールソケットを作成し 以降の接続では上で作成されたソケットを利用して接続する 多重化接続の設定 必要な設定は以下の3つ ControlMaster 多重化接続方法 ControlPath 多重接続のソケットファイルのパス ControlPersist 多重化接続の永続化設定 ~/.ssh/ssh_config で設定することも、接続のたびにコマンドラインで渡すことも可能。 多重化接続する 動きを確認しやすいように、設定ファイルを利用せずに毎回オプションを渡して多重接続してみる。 まずは ControlMaster=yes にしてコントロールソケットを作成し、 ControlPath でコントロールソケットのパスを指定する。 ソケットファイルが作成されることを確認 以降の接続では作成したコントロールソケットファイルを ControlPath で指定し、モード ControlMaster=no(デフォルト) で接続すると、多重化される。 LISTEN 状態のソケットを確認 $ lsofContinue reading “SSHの多重接続について”

  • Design a site like this with WordPress.com
    Get started