-
Você pode executar o keyring do Gnome ou o Kwallet na máquina remota. Cada um vem em dois componentes, um daemon e uma GUI.
-
Você pode executar o aplicativo da GUI na máquina remota se executar o ssh com o encaminhamento do X. Só porque é uma máquina "servidor" não significa que você não pode instalar aplicativos GUI nele. Não importa se você está executando o ambiente de área de trabalho correspondente ou não, os aplicativos não precisam de um ambiente de área de trabalho específico para serem executados.
-
Você pode controlar o Kwallet na linha de comando através de
qdbus, embora não seja uma boa idéia neste caso específico, porque você teria que escrever sua senha em texto puro em uma linha de comando, e isso pode ser espionado por outros usuários. Veja também esta resposta SU . -
Há uma ligação de python para o keyring do Gnome e o Kwallet (packages
python-keyring-gnomeepython-keyring-kwallet); você poderia escrever um pequeno script python para controlá-los. Na verdade, já existe um para o keyring do Gnome: gkeyring . -
Se a senha do seu chaveiro é igual à sua senha de login, você pode instalar o
libpam-keyringe seu chaveiro será desbloqueado automaticamente quando você efetuar login. No entanto, isso requer login com uma senha em vez de um par de chaves .
-
-
Se você estiver executando o Gnome-keyring ou o Kwallet localmente, poderá encaminhá-los por meio do ssh, com um pouco de trabalho. Eles usam soquetes Unix, que o ssh não pode encaminhar. Mas você pode usar
socatrelay os soquetes Unix para soquetes TCP localmente e o contrário na máquina remota:while true; do socat TCP-LISTEN:22007 UNIX-CONNECT:"$GNOME_KEYRING_SOCKET"; done & ssh -R22007:localhost:22007 remote.example.com export GNOME_KEYRING_SOCKET="$HOME/.gnome-keyring-socket" while true; do socat UNIX-LISTEN:"$GNOME_KEYRING_SOCKET" TCP4:localhost:22007; done &Isso pode ser automatizado com pequenos scripts de shell em cada lado e uma linha
RemoteForwardem~/.ssh/config. Teoricamente, você deve poder acessar o chaveiro gnome da máquina remota. No entanto, tentei acessá-lo com cavalos-marinhos e nem tentei me conectar a$GNOME_KEYRING_SOCKET; Eu não sei porque, e eu não sei se o svn seria capaz de acessar o chaveiro. -
Você pode armazenar sua senha svn em um sistema de arquivos criptografado. Existem várias opções ; Acho que a maneira mais simples de começar é
encfs. Configuração inicial:sudo aptitude install encfs encfs ~/.passwords.encrypted ~/.passwords mv ~/.subversion/auth ~/.passwords/svn-auth ln -s ../.passwords/svn-auth ~/.subversion/authFluxo de trabalho normal:
encfs ~/.passwords.encrypted ~/.passwords ... work ... fusermount -u ~/.passwordsEsse método tem minha preferência por vários motivos:
- A configuração inicial e o fluxo de trabalho normal são muito simples.
- Não importa de onde você faz login, em particular você não precisa ter um servidor X local e usar o X forwarding sobre ssh.
- Um sistema de arquivos criptografado é mais versátil que um chaveiro (embora seja menos conveniente para uso de chaveiro, mas no caso do svn isso não importa).
- A única ferramenta não onipresente de que você precisa é o encfs (que requer o FUSE) e é empacotada para o Ubuntu.