当前位置: 技术问答>linux和unix
linux下的切换用户
来源: 互联网 发布时间:2016-08-28
本文导语: 当前用户是user1,想切换用户到user2,然后做一些动作以后返回到user1. 切换时不要输入密码,或者在程序中将密码写死都行,只要不提示输入密码就行。 如何实现上面的功能? 顺便说一下,sudo和telnet先不考虑。尽...
当前用户是user1,想切换用户到user2,然后做一些动作以后返回到user1.
切换时不要输入密码,或者在程序中将密码写死都行,只要不提示输入密码就行。
如何实现上面的功能?
顺便说一下,sudo和telnet先不考虑。尽量不要改系统配置。除了这两个以外有什么方法?
刚接触linux编程,很迷茫,希望各位多给意见,只要有启发就给分。
在线等。。。
切换时不要输入密码,或者在程序中将密码写死都行,只要不提示输入密码就行。
如何实现上面的功能?
顺便说一下,sudo和telnet先不考虑。尽量不要改系统配置。除了这两个以外有什么方法?
刚接触linux编程,很迷茫,希望各位多给意见,只要有启发就给分。
在线等。。。
|
是要用root配置sshd 并重启服务
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys
然后在切换到user2 执行如下命令
$ssh-keygen -t rsa 在提示输入密码的时候直接回车
$cd ~/.ssh
$mv id_rsa.pub authorized_keys
$chmod 600 authorized_keys
然后需要把私有键copy到user1的~/.ssh下
$copy id_rsa /tmp/
$chown user1:user1 /tmp/id_rsa
然后退回到user1 把私有键mv到user1的~/.ssh下
$mv /tmp/id_rsa ~/.ssh/
$chmod 600 ~/.ssh/id_rsa
接下来就可以用ssh user2@localhost "cmd"的方式了
我已经测试过了 此方法好用
你的服务器现在是如何配置的? 你不会现在只知道user2的密码吧?