欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Linux服务部署-2构建samba时间服务器

程序员文章站 2022-03-24 20:06:21
...

一、安装Samba服务

yum -y install samba # 查看yum源中Samba版本
 yum list | grep samba # 查看samba的安装情况 
 rpm -qa | grep samba

Samba服务器安装完之后, 会生成配置文件目录/etc/samba, /etc/samba/smb.conf是samba的核心配置文件.
二、启动Samba服务

Samba服务安装完成之后有两种方法启动:
service smb start/stop/restart/status# 
或者systemctl start/stop/restart/status smb.service 
 # 设置smb服务开机启动 
systemctl enable smb.service

三、开放Samba服务使用到的端口号
Samba服务会用到如下的一些端口号:
 137(UDP): NetBIOS名字服务
 138(UDP): NetBIOS数据报服务
 139(TCP): 文件和打印共享
 389(TCP): 用于LDAP
 445(TCP): NetBIOS服务在windows 2000及以后使用此端口
 901(TCP): 用于SWAT, 网页管理Samba
如果不想关闭防火墙的话, 就要在CentOS中放开Samba使用到的TCP端口号

firewall-cmd --zone=public -add-port=139/tcp --permanent firewall-cmd --zone=public -add-port=389/tcp --permanent firewall-cmd --zone=public -add-port=445/tcp --permanent firewall-cmd --zone=public -add-port=901/tcp --permanent  firewall-cmd --reload  # 查看已经放开的端口号 firewall-cmd --list-all

四、配置Samba服务
1、配置匿名访问, 任何人都可以访问的共享目录

  1. 创建共享目录

mkdir /opt/shares # 因为需要设置匿名用户可以上传下载文件, 所以需要给shares目录授予nobody权限 chown -R nobody:nobody /opt/shares

  1. 修改/etc/samba/smb.conf文件
    cp /etc/samba/smb.conf /etc/samba/smb.conf.bak vi /etc/samba/smb.conf
修改配置如下:
# See smb.conf.example for a more detailed config file or # read the smb.conf manpage. # Run 'testparm' to verify the config is correct after # you modified it.  [global]         workgroup = SAMBA         security = user         map to guest = Bad User         log file = /var/log/samba/log.%m   [public]         comment = Public Stuff         path = /opt/shares         public = yes         read only = No

其中 path就是上边设置的共享目录, read only 表示是否有写权限

  1. 修改完配置文件之后重启samba服务
    systemctl restart smb.service
  2. 测试smb.conf配置是否正确

使用testparm命令 testparm

  1. 至此就配置完成, 可以从Windows下访问samba的共享目录.

2、配置指定用户可以访问的共享目录
设置共享目录, 只允许指定用户组的用户访问
1) 添加工作组Linus和用户Linus1
[[email protected] ~]# groupadd linus# useradd -g 组名 用户名[[email protected] ~]# useradd -g linus linus1# 设置用户Linus1的密码 [[email protected] ~]# passwd linus1 #删除用户 userdel -r 用户名

  1. 把要访问的账户添加到samba的账户中
    光添加系统账户还不够, 需要把已经存在的系统账户添加到samba中才可以访问共享目录
# smbpasswd 参数: -a: 添加 -x: 删除 -d: 禁用 -e: 启用 [[email protected] ~]# smbpasswd -a linus1
3) 创建共享目录
[[email protected] ~]# mkdir /opt/shares1
# chown -R 用户名:组名 目录
[[email protected] ~]# chown -R linus1:linus /opt/shares1
  1. 设置samba服务
    修改配置文件/etc/samba/smb.conf如下
# See smb.conf.example for a more detailed config file or
# read the smb.conf manpage.
# Run 'testparm' to verify the config is correct after
# you modified it.[global]        workgroup = SAMBA        security = user        map to guest = Bad User        log file = /var/log/samba/log.%m[public]        comment = Public Stuff        path = /opt/shares        public = yes        read only = No[shares]        comment = LINUS        path = /opt/shares1       
 # 表示用户组        valid users = @LINUS        read only = No
5) 重启smb服务
systemctl restart smb.service # 检查smb.conf文件是否配置正确 testparm
  1. 至此配置完成, 可以在Windows平台下通过用户名share/share来访问共享目录了.