Samba服务安装及配置

服务器环境:CentOS6.9 Linux 2.6.32-696.10.1.el6.x86_64

安装Samba服务

过程中会安装3个服务smb(文件、打印共享服务,使用139、445端口)、nmb(netBIOS名称解析,使用137/138端口)、winbind(win域相关服务)

# yum -y install samba

设置开机自启动

# chkconfig nmb on
# chkconfig smb on
# echo "/etc/init.d/nmb start" >> /etc/rc.local
# echo "/etc/init.d/smb start" >> /etc/rc.local

smb常用参数配置

#全局配置#

[global]
workgroup = MYGROUP #工作组名称
server string = Samba Server Version #服务描述
netbios = samba-server    #netbios名称,客户端可通过此名称访问服务,需启动nmb服务,并开放udp137/138端口
interfaces = lo eth0 192.168.100.110/24    #设置所使用的网卡接口、地址
hosts allow = 127. 192.168.100. #允许连接的客户端范围
security = user #认证模式,默认是user,即用户密码认证。share(只使用密码或匿名共享)
encrypt passwords = yes    #设置是否对samba的密码进行加密,现在windows操作系统都是使用加密密码,所以一般要开启此项
passdb backend = tdsam    #当使用加密密码时,指定所使用的密码数据库类型。tdsam可使用smbpasswd或pdbedit命令来创建samba用户密码
username map = /etc/samba/smbusers    #设置用户映射,比如可以将root换成administrator、admin等

#用户家目录配置#

[homes]
comment = Home Directories #共享描述
browseable = no #客户端homes是否可见(不影响直接输入名称homes访问)
writable = yes    #是否可写
#valid users = %S    #允许的用户
#valid users = MYDOMAIN\%S    #允许的域用户

#自定义目录配置#

[sharing]
comment = sharing
path = /var/samba/shared    #自定义目录
valid users = sute_jun,@GROUP    #允许的用户,或组GROUP下的用户
write list = @GROUP,USER    #在writable = no的情况下,只允许GROUP组下的用户可写
public = no    #是否公开,如需创建公开共享,需设置成yes,并注释valid users。在[global]中配置security=share,在[sharing]中增加guest ok = yes
browseable = yes    #客户端sharing是否可见(不影响直接输入名称sharing访问)
writable = yes    #配置公开共享时,可选择性使用read only = yes或者writable = yes
printable = no
create mask = 0664    #默认创建文件的权限值
directory mask = 0755    #默认创建目录的权限值
force group = GROUP    #设置默认创建的文件的属组
force user = USER    #设置默认创建的文件的所有者
hosts allow = 127. 192.168.100. #允许连接的客户端范围

创建Samba用户密码

使用Samba共享时需为用户单独创建smb密码,而不是用户登陆密码

# smbpasswd -a sute_jun

配置共享目录权限

不给共享根目录过多权限,而在共享根目录下创建一个目录并给777权限

# mkdir -p /var/samba/shared/pub
# chown root:root /var/samba/shared
# chown -R sute_jun:sute_jun /var/samba/shared/pub
# chmod 777 /var/samba/shared/pub

检测Samba配置是否正确

# testparm

配置防火墙和SELINUX

selinux没有配置的前提下,客户端将无法在共享目录中创建文件

# vim /etc/sysconfig/iptables
-A INPUT -p tcp -m tcp --dport 139 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 445 -j ACCEPT
-A INPUT -p udp -m udp --dport 137:138 -j ACCEPT
# setsebool -P samba_domain_controller on
# setsebool -P samba_enable_home_dirs on
# chcon -t samba_share_t /var/samba/shared
# setsebool -P samba_export_all_rw on

重启服务和防火墙

# service smb restart
# service iptables restart

Linux客户端连接Samba共享目录

# yum -y install samba-client    #smbclient命令需安装samba-client包
# smbclient -L 192.168.100.110 -U sute_jun    #查看服务器在sute_jun用户开放了哪些共享,不加-U参数只能查看部分共享
# smbclient //192.168.100.110/sharing -U sute_jun    #登陆共享目录
# mount -t cifs //192.168.100.110/sharing /mnt -o username=sute_jun,password='111111'    #挂载Samba共享目录

Windows客户端挂载Samba共享目录

C:\>net use Z: \\samba-server\sharing 111111 /user:sharing    #密码111111,用户sharing
C:\>net use Z: /del    #删除挂载

 参考

CentOS7下的Samba使用方法参考如下:

http://www.361way.com/rhce-samba-theory/4712.html

http://www.361way.com/samba-action/4714.html

https://www.server-world.info/en/note?os=CentOS_7&p=samba&f=2

posted on 2017-10-27 15:04  行走的日志  阅读(2993)  评论(0编辑  收藏  举报

导航