ssh + screen
こういうやり方も。
ssh -t HOSTNAME 'screen -D -RR || $SHELL -l -i'
screen が入っていない場合に command not found が出るけどな。それがいやなら
ssh -t HOSTNAME 'screen -D -RR 2> /dev/null || $SHELL -l -i'
まぁ、screen が異常終了した場合なんかに突然ログインシェルに切り替わるというメリットだかデメリットだか良くわからない現象になるけど。