Linux服务器经常需要进行资料的下载和上传,每次都要使用scp指令,相当麻烦。为了简化操作,决定在Linux上设置SMB共享,以便通过SMB的方式管理数据。
「特别提醒」
在公网环境中使用SMB共享是相当危险的。在使用SMB之前,请确保当前环境的重要性和安全性。
「开前准备」
操作系统:Debian 12
「安装与部署」
首先需要安装SMB工具,直接使用cifs-utils协议工具包。其他用户也可以只安装SMB工具命令。为了方便起见,使用root用户进行登录操作。服务器是全新的,没有安装很多工具。如果你的环境已经准备就绪,可以直接安装cifs-utils协议工具包。
「安装cifs-utils」
首先,更新和升级系统中的软件包:
安装一些常用的工具:
准备就绪后,可以开始安装cifs-utils协议工具包。
「创建/设置SMB挂载」
接下来需要创建/设置一个SMB挂载的文件夹。使用命令sudo mkdir <路径/文件夹> 创建一个挂载文件夹。如果已经有文件夹,可以跳过这一步。
然后需要设置一个smb用户和密码。使用sudo smbpasswd -a
接下来需要为文件夹设置适当的权限。为了方便起见,直接设置为777权限。根据实际情况进行设置。
接下来编辑Samba conf 并添加一个目录:
sudo vim /etc/samba/smb.conf
在最后添加一下内容:
[share]
comment = Shared folder
path = /root/user/smb
browseable = no
guest ok = no
read only = no
create mask = 0777
directory mask = 0777
其中:
[share]是共享文件夹的名称,可以根据需要修改。
comment是注释,可以不修改。
path是共享文件夹的路径,应与第二步中创建的文件夹路径一致。
browseable设置为yes表示该共享文件夹可以在网络上被浏览。
guest ok设置为yes表示访问该共享文件夹不需要认证。
read only设置为no表示该共享文件夹可以被写入。
create mask和directory mask是文件和文件夹的权限掩码,设置为0777表示所有用户都具有最高权限。
完成后保存并退出。
「重启Samba服务」
使用以下命令重启Samba服务:
sudo service smbd restart
至此,服务器的smb共享设置完成。可以使用其他设备通过smb访问这台服务器。
输入用户名和密码即可成功登录。
选择刚刚创建的文件夹,即可成功访问服务器的文件夹。
到这里我们服务器的设置就完成了。
「扩展应用」
部署SMB后,可以方便地进行远程操作,大家也可以尝试更多的应用。以下可供参考:
首先,可以使用内网穿透,将具有公网IP的服务器与内网处于同一网络环境中。然后使用SMB让公网服务器挂载本地NAS。
挂载共享:使用命令 "sudo mount -t cifs //server/share /mnt/smb -o username=user,password=pass" 挂载共享,其中 "server" 是共享所在的服务器名称,"share" 是共享的名称,"user" 是登录共享所需的用户名,"pass" 是密码。
最后,在服务器上安装下载器,就可以实现公网服务器直接将东西下载到本地NAS中。
设置开机自动挂载:编辑 "/etc/fstab" 文件,在其中添加一行: "//server/share /mnt/smb cifs username=user,password=pass 0 0"
给权限:在username=user,password=pass后面添加,gid=id,uid=id 0 0 "//server/share /mnt/smb cifs username=user,password=pass,gid=id,uid=id 0 0"
完成以上步骤后,SMB共享将被挂载到 "/mnt/smb" 目录,并且每次启动系统时都会自动挂载。
注:参考资料来源于网络