1. 首先确认一下自己的Linux是否安装了Samba,使用命令:
root@ann ~]# rpm -qa | grep samba
samba-client-libs-4.10.16-15.el7_9.x86_64
samba-common-4.10.16-15.el7_9.noarch
samba-common-libs-4.10.16-15.el7_9.x86_64
samba-libs-4.10.16-15.el7_9.x86_64
samba-4.10.16-15.el7_9.x86_64
samba-common-tools-4.10.16-15.el7_9.x86_64
samba-client-4.10.16-15.el7_9.x86_64

如果没有安装,有两种方式可以安装:

yum install -y samba
  1. 创建用户:
    创建linux用户
useradd test1

创建 Smb 用户,此用户必须是 Linux 上已经建立的,输入密码,完成即可。

[root@ann ~]# smbpasswd -a test1
New SMB password:
Retype new SMB password:
Added user test1.

可用pdbedit命令查看是否创建成功

[root@ECS-N4 ~]# pdbedit -L
test1:1003:

*拓展:
修改samba用户的密码
$sudo smbpasswd 用户名
禁用samba用户
$sudo smbpasswd -d 用户名
启用samba用户
sudo smbpasswd -e 用户名
删除samba用户
$sudo smbpasswd -x 用户名
也可用pdbedit的相关命令*


  1. 关闭setlinux
setenforce 0
[root@localhost ~]# 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
  1. 修改配置文件
    samba服务器最主要的配置文件其实只有一个,就是/etc/samba/samba.conf。
[global]
        workgroup = SAMBA
        security = user
        passdb backend = tdbsam
        printing = cups
        printcap name = cups
        load printers = yes
        cups options = raw
        smb ports = 4455
[share]
        comment = share web site code
        path = /www/wwwroot
        browseable = yes
        writeable = yes
        public = yes
        guest ok = yes

由于阿里云可能对samba端口号445给封掉,因此将端口号重定向到4455

  1. 开放防火墙端口:
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 --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

  1. 在阿里云的安全组配置端口(出入网都需要配置)
    [备注(139和445是默认的端口,但是似乎被运营商屏蔽了,所以我在这里添加了修改后的端口号4455]
    在这里插入图片描述
    在这里插入图片描述
    7.重启samba服务
service smbd restart

8.可现在linux上测试一下是否成功
8.本地Windows端修改端口号
通过第三方工具,进行端口映射(来源https://github.com/Arno0x/DivertTCPconn

可以直接在网盘下载

链接:https://pan.baidu.com/s/1O7UHotdXDYgHr\_WzNqvkRg
提取码:uhfq

下载完成后,利用管理员权限运行cmd,cd至文件夹目录下,运行命令

divertTCPconn.exe 445 4455
如图,则运行成功:会一直卡着,不能关掉,关掉映射就不成功了

divertTCPconn 445 4455
Usage: divertTCPconn original_dstport new_dstport [disablechecksum] [debug]
Usage: divertTCPconn original_dstport new_dstport [disablechecksum] [debug]

9.映射网络驱动器
右键“此电脑” --> “映射网络驱动器” --> 输入“\你的服务器ip\share” --> 点击完成: 注意:share和/etc/samba/samba.conf中的[share]对应,可以起别的名字

10.弹出登陆界面:
输入samba用户名和密码,登陆成功

11.在Windows上可能涉及SMB服务和防火墙等权限问题,需要进行一下设置
安装SMB服务
在这里插入图片描述
在这里插入图片描述

原文链接:https://blog.csdn.net/Di\_Wong/article/details/103841718

标签: 服务器, centos7, cmd, yes, firewall, samba, public

相关文章推荐

添加新评论,含*的栏目为必填