su成别的用户后仍以原来私钥访问远程机器

背景:ssh

同步机和游戏服两台机都有我的用户帐号和游戏帐号xy1,游戏服设了xy1的ssh强制命令来受同步机的xy1控制。如今须要在同步机上用xy1进行一个控制游戏服的操做,该操做须要在同步机远程tail -f游戏服上的一个输出文件,因为强制命令的存在,不能直接用xy1去远程tail -f,而要用游戏服的我的用户帐号去tail -f(前提是游戏服的我的帐号有访问那个输出文件的权限)游戏

 

作法:同步

本地使用ssh -A登录同步机时,会在同步机的/tmp目录下放一个保存私钥的目录,变量$SSH_AUTH_SOCK记录了该目录的位置,只要在.cshrc文件将$SSH_AUTH_SOCK记录的目录权限设为777,就能够su成xy1后也以原来的用户私钥去连游戏服。变量

1.修改同步机我的用户帐号的.cshrc文件,结尾增长:权限

if ($?SSH_AUTH_SOCK) then
  chmod -R 777 `dirname $SSH_AUTH_SOCK`
endifdi

2.登录同步机后,su成root,再su成xy1(要su xy1,不能 su - xy1)文件

3.在su成xy1身份后,以原来我的用户帐号登录游戏服:远程

xy1% ssh -l andrew $GAMESERVER

相关文章
相关标签/搜索