您的位置:首页 > 运维架构 > Linux

centos中samba服务器的搭建与配置

2015-02-03 18:00 246 查看
提示:安装linux的服务的时候,最好对linux中的配置文件中的功能熟悉掌握。并不推荐照做。最好能够自己模拟一些功能自己按流程都走一遍。

主线:samba服务器的搭建

主干线:samba服务器的作用是能够让基于unix或者类unix以及linux中的主机能够共享给windows系列的主机使用

centos中可能默认会安装samba服务器,如果没有安装的话可以执行下面的命令进行安装

yum install samba samba-client -y(samba服务器的核心组件主要为samba samba-client samba-common)

可以通过rpm -qa|grep samba 查看samba服务器的目前安装包

samba服务器的配置文件默认是放在etc下面的samba文件夹下

具体命令为 cd /etc/samba 

samba的主配置文件就放在这个文件夹下。为smb.conf。

vim smb.conf

[global]

# ----------------------- Network Related Options -------------------------

        workgroup = MYGROUP                            工作组名称,一般填写windows主机中的工作组名称。

        server string = MY Samba Server Version %v     服务器描述,可随便写

;       netbios name = MYSERVER              设置出现在网上邻居中的主机名

;       interfaces = lo eth0 192.168.12.2/24 192.168.13.2/24    能够从linux中不同接口访问samba服务器

;       hosts allow = 127. 192.168.12. 192.168.13.       哪些网段可以访问samba服务器     

(;# 为linux中的两种注释方式)

# --------------------------- Logging Options -----------------------------

        log file = /var/log/samba/log.%m         samba的日志文件及命名格式

        # max 50KB per log file, then rotate

        max log size = 50                        最大日志存储量

# ----------------------- Standalone Server Options ------------------------

        security = user            samba用户的安全级别

security = user #这里指定samba的安全等级。关于安全等级有四种:

share:用户不需要账户及密码即可登录samba服务器

user:由提供服务的samba服务器负责检查账户及密码(默认)

server:检查账户及密码的工作由另一台windows或samba服务器负责

domain:指定windows域控制服务器来验证用户的账户及密码。

        passdb backend = tdbsam

security = user #这里指定samba的安全等级。关于安全等级有四种:

share:用户不需要账户及密码即可登录samba服务器

user:由提供服务的samba服务器负责检查账户及密码(默认)

server:检查账户及密码的工作由另一台windows或samba服务器负责

domain:指定windows域控制服务器来验证用户的账户及密码。

passdb backend = tdbsam # passdb backend(用户后台),samba有三种用户后台:smbpasswd, tdbsam和ldapsam.

smbpasswd:该方式是使用smb工具smbpasswd给系统用户(真实用户或者虚拟用户)设置一个Samba密码,客户端就用此密码访问Samba资源。smbpasswd在/etc/samba中,有时需要手工创建该文件。

tdbsam:使用数据库文件创建用户数据库。数据库文件叫passdb.tdb,在/etc/samba中。passdb.tdb用户数据库可使用
smbpasswd -a 创建Samba用户,要创建的Samba用户必须先是系统用户。也可使用pdbedit创建Samba账户。pdbedit -a username:新建Samba账户。

pdbedit -x username:删除Samba账户。

pdbedit -L:列出Samba用户列表,读取passdb.tdb数据库文件

ldapsam:基于LDAP账户管理方式验证用户。首先要建立LDAP服务,设置 “passdb backend = ldapsam:ldap://LDAP Server”

# --------------------------- Printing Options -----------------------------

        load printers =yes      是否启用打印机功能,默认为yes

        cups options = raw

 

;       printcap name = /etc/printcap

        #obtain list of printers automatically on SystemV

;       printcap name = lpstat

;       printing = cups

# ----------------------------Share Definitions  -------------------------

[first]                                服务器共享目录名称

        comment = user name

        path=/first                        实际的共享目录绝对路径

        browseable = yes           不在客户端显示自己的共享目录

        writable = yes                 可写

        read only= yes               只可读

        public= yes                     允许匿名用户访问

        write list=@wxwsmb       可以共享此目录的samba用户组

samba实践

共享一个目录,任何人都可以访问,即不用输入密码即可访问,要求只读

把:

MYGROUP改成:WORKGROUP


把:

security=user修改为:security=share

在文件的最末尾处加上

[linux]

       comment=for windows 

       path=/xiaoming

       writeable=no 

       public=yes 

:wq!

保存配置文件

重启服务

service smb restart

访问的时候会出现各种问题,应该学会怎样去解决,比如selinux没有关闭,iptables端口的未放行也会导致这个问题,如果只是测试学习的话,可以马虎一点使用setenfore 0临时关闭selinux,iptables -F 清除所有规则。如果是实际工作中的话,可以参考linux系统管理中的相关提示进行操作。

如果在配置文件中的public=yes没有加上或者说是为no的情况下。也是不能够访问的

共享一个目录,任何人都能够访问,要求可以读写
把:

MYGROUP改成:WORKGROUP

把:

security = user修改为:security = share

在文件的最末尾处加上

[linux]

       comment=for windows 

       path=/xiaoming

       writeable=yes

       public=yes 

:wq!

保存配置文件

重启服务

service smb restart

这个时候访问的时候会出现一些问题,比如说还是不能在这个目录下创建文件。主要的原因是该文件夹对匿名用户的写权限的限制,限制了匿名用户进行文件的创建

通过这个命令就可以查看匿名用户的权限

ls -ld /xiaoming 

更改其可写权限

chmod o+w /xiaoming/wanlei

如果还是不能够创建文件的话,就要考虑selinux中的布尔值问题了。这个在dns服务器的配置中也会说到。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: