当前位置:   article > 正文

Samba 服务器的安装和简单配置_samba配置

samba配置

Samba 服务的安装和简单配置


​ Samba是在Linux和UNIX系统上实现SMB协议的一个免费软件,由服务器及客户端程序构成。SMB(Server Messages Block,信息服务块)是一种在局域网上共享文件和打印机的一种通信协议,它为局域网内的不同计算机之间提供文件及打印机等资源的共享服务。SMB协议是客户机/服务器型协议,客户机通过该协议可以访问服务器上的共享文件系统、打印机及其他资源。通过设置“NetBIOS over TCP/IP”使得Samba不但能与局域网络主机分享资源,还能与全世界的电脑分享资源。

1 配置本地yum源

1.1 删除原有的repo文件

[root@samba ~]# cd /etc/yum.repos.d/
[root@samba yum.repos.d]# rm -rf *
  • 1
  • 2

1.2 编写新的repo文件

[root@samba yum.repos.d]# vi yum.repo
[localrepo]
name=localrepo
baseurl=file:///mnt
enabled=1
gpgcheck=0
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

1.3 挂载光盘并设置永久挂载

[root@samba yum.repos.d]# mount /dev/cdrom /mnt/
mount: /dev/sr0 写保护,将以只读方式挂载
[root@samba yum.repos.d]# vi /etc/fstab 
/dev/cdrom      /mnt    iso9660 defaults        0       0
[root@samba yum.repos.d]# mount -a
  • 1
  • 2
  • 3
  • 4
  • 5

1.4 验证本地yum源是否可用

[root@samba yum.repos.d]# yum makecache
已加载插件:fastestmirror
Loading mirror speeds from cached hostfile
localrepo                                               | 3.6 kB  00:00:00     
(1/4): localrepo/group_gz                               | 153 kB  00:00:00     
(2/4): localrepo/primary_db                             | 3.3 MB  00:00:00     
(3/4): localrepo/filelists_db                           | 3.3 MB  00:00:00     
(4/4): localrepo/other_db                               | 1.3 MB  00:00:00     
元数据缓存已建立
[root@samba yum.repos.d]# yum -y install vim net-tools bash-completion
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10

2 设置主机名映射

2.1 查看主机名

[root@samba yum.repos.d]# hostname
samba
  • 1
  • 2

2.2 查看ip地址

[root@samba yum.repos.d]# ip a s
2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 00:0c:29:34:8a:6b brd ff:ff:ff:ff:ff:ff
    inet 192.168.3.10/24 brd 192.168.3.255 scope global noprefixroute ens33
       valid_lft forever preferred_lft forever
    inet6 fe80::ad73:2b66:c628:688e/64 scope link noprefixroute 
       valid_lft forever preferred_lft forever
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

2.3 在/etc/hosts文件最后添加主机名映射

[root@samba yum.repos.d]# vim /etc/hosts
192.168.3.10    samba
  • 1
  • 2

3 设置selinux

3.1 修改selinux中默认运行模式为禁止

[root@samba yum.repos.d]# sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config
  • 1

3.2 设置临时运行模式宽松

[root@samba yum.repos.d]# setenforce 0
[root@samba yum.repos.d]# getenforce 
Permissive
  • 1
  • 2
  • 3

4 关闭防火墙

[root@samba yum.repos.d]# systemctl disable firewalld --now
Removed symlink /etc/systemd/system/multi-user.target.wants/firewalld.service.
Removed symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service.
[root@samba yum.repos.d]# systemctl status firewalld
● firewalld.service - firewalld - dynamic firewall daemon
   Loaded: loaded (/usr/lib/systemd/system/firewalld.service; disabled; vendor preset: enabled)
   Active: inactive (dead)
     Docs: man:firewalld(1)
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

5 安装samba

5.1 安装samba

[root@samba yum.repos.d]# yum -y install samba
  • 1

5.2 设置samba开机自启

[root@samba yum.repos.d]# systemctl enable smb --now
Created symlink from /etc/systemd/system/multi-user.target.wants/smb.service to /usr/lib/systemd/system/smb.service.
[root@samba yum.repos.d]# systemctl status smb
● smb.service - Samba SMB Daemon
   Loaded: loaded (/usr/lib/systemd/system/smb.service; enabled; vendor preset: disabled)
   Active: active (running) since 二 2024-01-30 23:31:36 CST; 54min ago
     Docs: man:smbd(8)
           man:samba(7)
           man:smb.conf(5)
 Main PID: 23270 (smbd)
   Status: "smbd: ready to serve connections..."
   CGroup: /system.slice/smb.service
           ├─23270 /usr/sbin/smbd --foreground --no-process-group
           ├─23272 /usr/sbin/smbd --foreground --no-process-group
           ├─23273 /usr/sbin/smbd --foreground --no-process-group
           └─23274 /usr/sbin/smbd --foreground --no-process-group
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16

5.3 查看samba服务所使用的端口为139和445

[root@samba yum.repos.d]# netstat -nplt | grep smb
tcp        0      0 0.0.0.0:139             0.0.0.0:*               LISTEN      23270/smbd          
tcp        0      0 0.0.0.0:445             0.0.0.0:*               LISTEN      23270/smbd          
tcp6       0      0 :::139                  :::*                    LISTEN      23270/smbd          
tcp6       0      0 :::445                  :::*                    LISTEN      23270/smbd 
  • 1
  • 2
  • 3
  • 4
  • 5

6 配置免账户密码的访客访问

6.1 在samba的配置文件smb.conf中添加下面的内容

[root@samba yum.repos.d]# vim /etc/samba/smb.conf
  9         map to guest = bad user
  • 1
  • 2

6.2 并且在配置文件最后添加如下内容

 [guest]							#共享文件名称(也就是客户端访问时可以看到的那个名字)
         comment = this is guest		#共享文件夹的描述
         path = /share/guest			#共享文件夹路径
         public = yes					#是否允许guest账户访问
         writable = yes					#是否允许guest账户访问
         directory mask = 0777			#默认创建目录权限
         create mask = 0777				#默认创建文件权限 
         browseable = yes				#该指定共享目录可浏览
         available = yes				#该指定共享资源可使用
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9

6.3 创建共享文件夹及测试文件

[root@samba yum.repos.d]# mkdir /guest
[root@samba yum.repos.d]# cd /guest
[root@samba guest]# echo 'hello\n' > 1.txt
[root@samba guest]# mkdir 2
[root@samba /]# cd ..
[root@samba /]# chmod -R 777 /guest
[root@samba /]# ll /guest/
总用量 4
-rwxrwxrwx 1 root root 8 131 16:26 1.txt
drwxrwxrwx 2 root root 6 131 16:26 2
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10

6.4 重启samba服务

[root@samba yum.repos.d]# systemctl restart smb.service 
  • 1

6.5 在物理机中使用 win+R 调出运行窗口,按照图片输入samba服务器ip地址和共享文件夹名

在这里插入图片描述
在这里插入图片描述

7 配置samba账户密码登录访问

7.1 创建登录samba服务的用户组

[root@samba /]# groupadd lisi
  • 1

7.2 创建临时用户,设置不允许登录,并将用户加入刚刚创建的组

[root@samba /]# useradd -M lisi -s /sbin/nologin -g lisi
[root@samba /]# id lisi
uid=1001(lisi) gid=1001(lisi)=1001(lisi)
  • 1
  • 2
  • 3

7.3 创建samba用户并设置密码

[root@samba /]# smbpasswd -a lisi
New SMB password:
Retype new SMB password:
Added user lisi.
  • 1
  • 2
  • 3
  • 4

7.4 将用户添加到samba数据库中

pdbedit 参数说明

-a, --create 新建samba用户
-r, --modify 修改samba用户
-x, --delete 删除samba用户
-L, --list 列出全部samba用户,读取passdb.tdb数据库文件
-v, --verbose 显示详细信息
-c, --account-control=STRING 账户控制值
-w, --smbpasswd-style 以smbpasswd格式输出
-u, --user=USER 使用的用户
-N, --account-desc=STRING 设置账户描述
-f, --fullname=STRING 设置全名
-h, --homedir=STRING 设置家目录
-D, --drive=STRING 设置家设备
-S, --script=STRING 设置登陆脚本
-p, --profile=STRING 设置配置文件路径
-I, --domain=STRING 设置用户域名
-U, --user SID=STRING 设置用户SID或RID
-M, --machine SID=STRING 设置设备SID或RID
-m, --machine 账户是一个设备账户
-b, --backend=STRING 使用不同的passdb作为默认后端
-i, --import=STRING 指定后段导入用户账户
-e, --export=STRING 导出用户账户到指定后端
–policies-reset 恢复默认策略
-P, --account-policy=STRING 帐户策略的值(如最大密码有效期)
-C, --value=LONG 设置账号策略值
–force-initialized-passwords 强制初始化passdb后端
-z, --bad-password-count-reset 重置错误密码
-Z, --logon-hours-reset 重置登陆时间
–time-format=STRING 时间参数的格式
-t, --password-from-stdin 从标准输入获取密码
-K, --kickoff-time=STRING 设置开始时间
–set-nt-hash=STRING 从nt-hash设置密码
-d, --debuglevel=DEBUGLEVEL 设置debug级别
-s, --configfile=CONFIGFILE 使用备用配置文件
-l, --log-basename=LOGFILEBASE 设置日志文件的基本名称
-V, --version 输出版本号
–option=name=value 从命令行设置smb.conf选项
-?, --help 显示帮助信息
–usage 显示简要的使用信息

[root@samba /]# pdbedit -a -u lisi
new password:
retype new password:
[root@samba /]# pdbedit -L
lisi:1001:
  • 1
  • 2
  • 3
  • 4
  • 5

7.5 在samba配置文件smb.conf最后添加如下配置

[root@samba /]# vim /etc/samba/smb.conf
[lisi]
        comment = this is lisi
        path = /share/lisi
        public = yes
        writable = yes
        directory mask = 0777
        create mask = 0777
        browseable = yes
        available = yes
        valid users = @lisi,root                
        write list = @lisi,root
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12

7.6 创建共享文件夹及测试文件

[root@samba /]# mkdir -p /share/lisi
[root@samba /]# echo 'hello\n' > /share/lisi/1.txt
[root@samba /]# mkdir /share/lisi/2
[root@samba /]# cd /share/
[root@samba share]# chmod -R 777 lisi/
[root@samba share]# ll
总用量 0
drwxrwxrwx. 3 root root 28 131 01:02 guest
drwxrwxrwx. 3 root root 28 131 02:02 lisi
[root@samba share]# systemctl restart smb.service 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10

7.7 在物理机中使用 win+R 调出运行窗口,按照图片输入samba服务器ip地址和共享文件夹名

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

8 在物理机命令行窗口输入 net use 可以查看当前的网络连接内容

在这里插入图片描述

9 在物理机命令行窗口输入 net use * /del 可以删除当前的网络连接内容

在这里插入图片描述

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/weixin_40725706/article/detail/766466
推荐阅读
相关标签
  

闽ICP备14008679号