登录ssh时将agent sock链接到固定文件:
cat << EOF > ~/.ssh/rc
#!/bin/bash
if [ -S "\$SSH_AUTH_SOCK" ]; then
ln -sf \$SSH_AUTH_SOCK ~/.ssh/ssh_auth_sock
fi
EOF
chmod +x ~/.ssh/rc
tmux更新SSH_AUTH_SOCK变量:
cat << EOF >> ~/.tmux.conf
#先删除SSH_AUTH_SOCK变量,不然设置无效
set -g -u update-environment[3]
setenv -g 'SSH_AUTH_SOCK' ~/.ssh/ssh_auth_sock
EOF
dropbear可使用此方法:
alias ssh='[ -n "$TMUX" ] && [ -n $SSH_AUTH_SOCK ] && eval $(tmux showenv -s SSH_AUTH_SOCK); /usr/bin/ssh'
alias scp='[ -n "$TMUX" ] && [ -n $SSH_AUTH_SOCK ] && eval $(tmux showenv -s SSH_AUTH_SOCK); /usr/bin/scp'
标签:none