Memo/Windows/10/WSL/ssh-agent-wsl

https://dexlab.net:443/pukiwiki/index.php?Memo/Windows/10/WSL/ssh-agent-wsl
 

ssh-agent-wsl: WSL環境でwindowsアプリからssh-agentと連携する

Windows10 1803以降にはssh-agentが入っていて、ssh-addで秘密鍵を登録できる。
しかし、WSLからはWindows側のssh-agentにアクセスできない。
ssh-agent-wsl はそれを可能にする。

  • 環境
    • Windows 10 Pro 1803
    • WSL(Ubuntu 18.04 LTS)
  1. Windows側でssh-agentのサービスを起動する。
    # 管理者権限のpowershell
    Set-Service -Name ssh-agent -StartupType Automatic
    Start-Service -Name ssh-agent
    Get-Service -Name ssh-agent
    
    Status   Name               DisplayName
    ------   ----               -----------
    Running  ssh-agent          OpenSSH Authentication Agent
  2. releases からssh-agent-wsl.7z(v2.2)をダウンロードして、windows側のドライブに展開
    • 例: C:\local\ssh-agent-wsl
  3. WSL上の ~/.bashrc に追加
    echo 'eval $(/mnt/c/local/ssh-agent-wsl/ssh-agent-wsl -r)' >> ~/.bashrc
  4. WSLのterminalを閉じて、開き直す。以下のようなメッセージが出ていれば起動しているはず。
    ssh-agent-wsl pid 40
  5. Windows側(PowerShell)で秘密鍵を登録してみる。
    # $HOME/.ssh/id_rsa が登録される
    ssh-add
    # 秘密鍵が登録されたか確認
    ssh-add -l
  6. WSL側で、秘密鍵が登録されているか確認
    ssh-add -l

アプリの対応

KeePassXC

KeePassXC Password Manager

  1. ssh秘密鍵登録用のエントリを追加
  2. 詳細設定
    • 添付ファイルで sshのprivate.key を追加
  3. sshエージェント設定
    • 「データベースが開かれたり、ロックが解除〜」にチェック
    • 「データベースが閉じられたり、ロックされた〜」にチェック
    • 秘密鍵で、使う鍵を選択
  4. KeePassXC 起動時に、ssh秘密鍵が自動登録される。DBロックするとssh秘密鍵が削除される事を確認する。

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2019-04-03 (水) 15:26:00 (15d)