25
2025
03
12:14:16

无SSH服务:离线环境中Ubuntu与Windows之间轻松实现文件传输

问题描述

Ubuntu默认情况下未安装ssh服务,且系统处于离线环境中并且身边又没有U盘,此时需要与Ubuntu传输文件该怎么做呢?

解决方法

当Ubuntu处于离线环境,且未安装ssh服务时,我们依然可以高效的与Windows传输文件。只需简单两步,即可实现文件互传。

1.首先在Windows中创建共享目录

图片

设置共享权限,确保当前登录用户有读写权限

图片

共享成功后如下图所示,会出现一个网络路径\\主机名\共享目录

图片

2.在Ubuntu中打开终端,创建一个目录用于挂载Windows共享目录

mkdir test

图片

使用mount命令,将Windows共享目录挂载至Ubuntu

#-t 指定要挂载的文件系统类型,-o指定共享目录用户名与密码
sudo mount -t cifs,smb3 //10.10.20.167/scripts test/ -o username=administrator,password=admin@123

图片

此时就可以在windows主机中将需要上传的文件拷贝进共享目录中,以此实现UbuntuWindows之间的文件互传

图片

Ubuntu的挂载目录查看

图片

PS:上述场景为内网直连互传文件,其他场景中不建议直接将密码暴露在shell中。

推荐方法

将密码写入临时文件中作为变量来调用,且变量仅对当前shell生效。同时设置定时任务每分钟执行一次用于检查是否存在该临时文件,如果存在则进行删除操作,避免忘记删除而造成密码泄露。

创建一个隐藏文件.smb,在其中写入用于连接smb的用户名和密码。文件保存后使用source .smb来加载使其立即生效。

nano .smb
USERNAME=administrator
PASSWORD=admin@123

使用chmod对该文件设置权限,仅允许root用户和test查看和修改,其他用户无权限。

chmod 700 .smb

修改后的文件权限如下

此时只有test用户和root能够访问该文件,其他用户无权限

图片

创建定时任务,每分钟检查并删除该临时文件(具体删除时间根据实际情况设置)

crontab -e
#在文件末尾写入以下内容
* * * * *  [ -f /home/test/.smb ] && rm -rf /home/test/.smb

图片

此时如果检查到用户目录下存在.smb文件,就会自动删除,以此来提高安全性

图片




推荐本站淘宝优惠价购买喜欢的宝贝:

image.png

本文链接:https://hqyman.cn/post/9720.html 非本站原创文章欢迎转载,原创文章需保留本站地址!

分享到:
打赏





休息一下~~


« 上一篇 下一篇 »

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

请先 登录 再评论,若不是会员请先 注册

您的IP地址是: