ForwardAgent が有効な状態で、ssh ログインしなおすと、環境変数SSH_AUTH_SOCK が新しいパスをさすようになる。ここで tmux attach すると、tmux セッション上のシェルは以前の SSH_AUTH_SOCK の値を保持し続けていて、別の所を指しているのでうまくいかない。 ~/.bashrc に agent="$HOME/.ssh/agent" if [ -S "$SSH_AUTH_SOCK" ]; then case $SSH_AUTH_SOCK in /tmp/*/agent.[0-9]*) ln -snf "$SSH_AUTH_SOCK" $agent && export SSH_AUTH_SOCK=$agent esac elif [ -S $agent ]; then export SSH_AUTH_SOCK=$agent else echo "