charade

Ssh-agent clone for cygwin that proxies to pageant

  • 所有者: wesleyd/charade
  • 平台:
  • 许可证: Other
  • 分类:
  • 主题:
  • 喜欢:
    0
      比较:

Github星跟踪图

Intro

Charade is an ssh-agent in cygwin that proxies requests to pageant.

If you don't use cygwin or pageant, you don't need charade. If you're happy with plink, you don't need charade. (I love putty, but I prefer openssh to plink.)

Background: I tolerate Windows XP. I actually quite like it. But it needs putty, and it needs cygwin to be usable. I used to maintain two separate sets of ssh keys: one for putty, which I kept in pageant, and another for cygwin's openssh, which I kept in ssh-agent/keychain.

Eventually I got fed up maintaining two key pairs and charade was born.

Charade just pretends to be ssh-agent on one side and putty on the other. It's a shim between openssh and pageant.

It aspires to be a drop-in replacement for ssh-agent, and that's how I use it atm. It works for me. It probably won't work for you.

I stole large swaths of code from (i) Simon Tatham's putty (mostly putty-src/windows/winpgntc.c) and (ii) openssh's (and Tatu Ylonen's and Marcus Friedl's) ssh-agent.c.

Also check out cuviper's ssh-pageant, which does something similar.

Russell Davis has a clever way of setting environment variables at boot so that processes launched outside your shells can also use your ssh keys.

Required cygwin packages

  • gcc-g++
  • make
  • keychain
  • openssh
  • psmisc

Installation instructions

  1. Clone the repository

     git clone git://github.com/wesleyd/charade.git
    
  2. Build and install charade

      make && make install
    
  3. Stop running charade or ssh-agent processes

      killall charade   # Only if upgrading
    
      killall ssh-agent   # Only if not upgrading
    
  4. Remove existing keychain files to clear references to ssh-agent

      rm -rf ~/.keychain
    
  5. Add these two lines to ~/.bash_profile:

      keychain -q -Q
    
      . ~/.keychain/`hostname`-sh
    
  6. Logout, launch a new shell or putty and try it out

     ssh git@github.com
    

If you have a key in pageant, you should be able to go where it points.

It just forwards ssh messages, so surprising (to me!) things Just Work, like adding keys with ssh-add instead of through the pageant gui.

Wesley Darlington, December 2009.

主要指标

概览
名称与所有者wesleyd/charade
主编程语言C
编程语言C (语言数: 4)
平台
许可证Other
所有者活动
创建于2009-11-10 11:58:28
推送于2021-09-01 13:09:53
最后一次提交2021-09-01 09:09:53
发布数0
用户参与
星数64
关注者数5
派生数13
提交数67
已启用问题?
问题数10
打开的问题数2
拉请求数7
打开的拉请求数1
关闭的拉请求数0
项目设置
已启用Wiki?
已存档?
是复刻?
已锁定?
是镜像?
是私有?