使用具有不同用户名的ssh客户端从Linux服务器复制文件

时间:2014-08-22 13:31:19

标签: linux ubuntu ssh

我有这台安装了ssh服务器的linux机器,我可以使用username =“ ubuntu ”访问服务器。 ssh服务器阻止尝试使用“root”用户名进行连接的客户端。

因此可以通过以下方式建立联系:

ssh -i mykey ubuntu@myserver

我可以使用以下方式获取属于“ubuntu”的文件:

scp -i mykey ubuntu@myserver:<file location> ./

但是,我真正想要的是获取属于“root”用户名的文件(注意:出于明显的安全原因,我无法使用用户名“root”访问服务器)。

那么有没有办法下载“root”用户名下的文件?

我想在服务器端做一些魔术让我能够做到这一点。(我不知道怎么样:))

如果有这个帮助:我有root访问权限,我也可以在服务器端创建文件。但我不允许在根目录下更改文件权限(如果有人抓住这些文件我会被解雇)

3 个答案:

答案 0 :(得分:1)

你可以尝试像这样的怪物

ssh ubuntu@myhost 'sudo cat /path/to/file | uuencode' | uudecode > path/to/local

您应该在相应的主机上拥有uuencodeuudecode

或者如果文件是文本,您可以跳过uuencode部分

ps:见相关的topic

答案 1 :(得分:0)

你可以反过来做。

使用您想要的文件

登录电脑
ssh ubuntu@myserver

然后获得超级用户权限

sudu su

然后复制所需的文件

scp /the_file_you_want ubuntu@myhost:/the_location_and_filename_you_want

您可以在此处找到其他一些方法 https://unix.stackexchange.com/questions/106480/how-to-copy-files-from-one-machine-to-another-using-ssh

答案 2 :(得分:0)

在您的计算机上启用ssh (如果是fedora)(对于ubuntu,你可以轻松地在google上找到命令)

 service sshd on

从本地计算机

 ssh -i ubuntu@myserver

更改为root

su

输入密码

并使用scp

复制文件
scp somefile.extension randomuser@localmachine:/some/path/

我希望它有所帮助