我有这台安装了ssh服务器的linux机器,我可以使用username =“ ubuntu ”访问服务器。 ssh服务器阻止尝试使用“root
”用户名进行连接的客户端。
因此可以通过以下方式建立联系:
ssh -i mykey ubuntu@myserver
我可以使用以下方式获取属于“ubuntu”的文件:
scp -i mykey ubuntu@myserver:<file location> ./
但是,我真正想要的是获取属于“root”用户名的文件(注意:出于明显的安全原因,我无法使用用户名“root”访问服务器)。
那么有没有办法下载“root”用户名下的文件?
我想在服务器端做一些魔术让我能够做到这一点。(我不知道怎么样:))
如果有这个帮助:我有root访问权限,我也可以在服务器端创建文件。但我不允许在根目录下更改文件权限(如果有人抓住这些文件我会被解雇)
答案 0 :(得分:1)
你可以尝试像这样的怪物
ssh ubuntu@myhost 'sudo cat /path/to/file | uuencode' | uudecode > path/to/local
您应该在相应的主机上拥有uuencode
和uudecode
。
或者如果文件是文本,您可以跳过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/
我希望它有所帮助