介绍
通过Window11系统上的映射网络驱动器,将阿里云服务器中Centos系统开发目录映射到本地系统上,这样就可以随时在本地上进行查看和编写内容,从而就不用通过服务器远程控制或者进入宝塔面板,极大的提高编写代码的方便性!
准备内容
首先需要远程ssh连接服务器,这里通过Xshell进行连接到阿里服务器,具体连接方法网上有很多资料,这里就不在赘述了,这里主要讲如何通过samba服务映射阿里服务器为网络驱动器。
笔者的系统环境:
阿里云:CentOS 7.6
本地: Win11 64位
操作方法
1. 服务器安装samba服务
首先在终端输入安装指令,安装完成后查看是否安装成功
服务器安装指令:yum install -y samba*
查看是否安装成功:rpm -qa samba
2. 修改配置文件
编辑smb.conf配置文件,在末尾添加以下内容,在global中放行端口号
vim /etc/samba/smb.conf
[share]
comment = share web site code
path = /www/wwwroot
browseable = yes
writeable = yes
public = yes
guest ok = yes
[global]
smb ports = 4455
3. 创建sam用户
sudo useradd sam
sudo smbpasswd -a sam
输入“sudo smbpasswd -a sam” 命令后会提示配置密码,自行配置
阿里服务器sam配置
用户名 sam
密码 123456
创建完成后可以使用pdbedit命令查看是否创建成功
[root@VM-4-6-centos ~]# pdbedit -L
test1:1003:
其他相关命令
修改samba用户的密码
$sudo smbpasswd 用户名
禁用samba用户
$sudo smbpasswd -d 用户名
启用samba用户
sudo smbpasswd -e 用户名
删除samba用户
$sudo smbpasswd -x 用户名
4. 关闭setlinux
setenforce 0
[root@VM-4-6-centos ~]# cat /etc/selinux/config
# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
# enforcing - SELinux security policy is enforced.
# permissive - SELinux prints warnings instead of enforcing.
# disabled - No SELinux policy is loaded.
# SELINUX=enforcing
SELINUX=disabled
# SELINUXTYPE= can take one of three two values:
# targeted - Targeted processes are protected,
# minimum - Modification of targeted policy. Only selected processes are protected.
# mls - Multi Level Security protection.
SELINUXTYPE=targeted
5. 阿里云服务器放行端口
我们进入到阿里云服务器控制台进行配置防火墙,配置如下所示即可。139和445是默认的端口,但是似乎被运营商屏蔽了,所以我在这里添加了修改后的端口号4455
6. 开放防火墙端口
centos开放samba需要用到的端口,逐条复制命令,别全部一起复制输入进去
systemctl start firewalld.service
firewall-cmd --zone=public --add-port=139/tcp --permanent
firewall-cmd --zone=public --add-port=445/tcp --permanent
firewall-cmd --zone=public --add-port=137/udp --permanent
firewall-cmd --zone=public --add-port=138/udp --permanent
firewall-cmd --zone=public --add-port=4455/udp --permanent
firewall-cmd --reload
systemctl restart firewalld.service
验证新增加端口是否生效(实际测试中4455并没开)
[root@ann ~]# firewall-cmd --zone=public --query-port=139/tcp
yes
[root@ann ~]# firewall-cmd --zone=public --query-port=445/tcp
yes
[root@ann ~]# firewall-cmd --zone=public --query-port=4455/tcp
no
7. 重启sam服务
重启sam服务,然后再次验证4455端口是否生效
systemctl restart smb.service //重启Samba服务
firewall-cmd --zone=public --query-port=4455/tcp
这里看到端口是已经生效的了,这样就算配置成功了
拓展:其他samba服务指令
systemctl start smb.service //启动Samba服务
systemctl stop smb.service //停止Samba服务
systemctl restart smb.service //重启Samba服务
systemctl reload smb.service //重新加载Samba服务
systemctl status smb.service //查看Samba服务的状态
systemctl enable smb nmb //加入开机自启动
8. 修改文件权限、重启samba服务
修改共享文件权限
mkdir /home/sam
mkdir /home/sam/share
cd /home/sam
chmod 777 -R share
重启服务
sudo service smbd restart
9. 本地Windows端修改端口号
通过第三方工具divertTCPconn,进行端口映射
下载链接:(https://github.com/Arno0x/DivertTCPconn)
下载完成后,利用管理员权限运行cmd,cd至文件夹目录下,运行命令
divertTCPconn.exe 445 4455
如图,则运行成功。注意:需要一直运行着,关掉映射就不成功了,这里可以通过将divertTCPconn设置为windows服务
由于本次文章篇幅太长了,关于如何将exe设为windows服务,将在之后的文章中讲解。
10. 映射网络驱动器
右键“此电脑” --> “映射网络驱动器” --> 输入“\你的服务器ip\share” --> 点击完成
一般情况下,输入正确用户名和密码后就能够添加成功了
避坑
若出现连接不成功,一般都是由于防火墙引起的,关闭本地电脑的防火墙即可。
本地安装SMB服务
找到window功能,勾选上如下内容即可
Comments | NOTHING