samba服务器搭建和配置

配置samba服务器前提:
samba服务器和你客户机在同一个网段,同一个工作组
samba服务器的配置文件是/etc/samba/smb.conf

一、创建一个系统用户用来访问samba服务器
# useradd admin


二、配置共享模式的samba服务器
1、修改用户组
修改smb.conf文件中的workgroup为
引用
workgroup     = WORKGROUPNAME

这里的工作组名字和你本机(可能是window)里的工作组一致

2、设置访问模式
修改smb.conf文件,把其中的
引用
security = user

修改成
引用
security = share


3、设置共享文件
在smb.conf文件里面添加这样的内容
引用
[public]
        comment = Public Stuff
        path = /tmp
        public = yes
        writable = yes
        guest ok = yes


4、测试
输入以下命令测试smb.conf的正确性
# testparm


三、安全设置
1、iptables
在/ete/sysconfig/iptables里开放samba的端口
引用

-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 139 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 445 -j ACCEPT


四、本地调试
1、smbclient调试
# smbclient -L //127.0.0.1/public

有反应后即表示测试成功

2、挂载
# mount -t cifs //127.0.0.1/public /mnt

挂载完后去mnt底下看是否有public的文件,如果有部分文件不能显示出来,说明这是权限问题。
在linux中,最终文件是否可读取,根本是可访问性。需要把public文件设为
# chmod 2770 public

2770中的2代表了setuid/gid,当文件被执行时,根据who参数指定的用户类型设置文件的setuid或者setgid权限

五、增加密码
1、修改访问模式
在smb.conf当中,修改security = share为
引用
security = user


2、配置目录
引用
[public]
        comment = Public Stuff
        path = /tmp
        public = yes
        writable = yes
        write list = +admin

其中,admin既代表方才添加的组admin

3、设置密码
查看所有可访问samba的账户
# pdbedit -L

设置admin的samba密码
# pdbedit -a -u admin

samba密码和linux密码不一样,但是samba用户必须是linux用户

4、修改密码
# smbpasswd admin


六、读取home目录
# mount -t cifs //127.0.0.1/public /mnt -o username=admin

挂载之后发现,除了public目录以外,还有一个admin目录
这个目录对应着linux系统内的/home/admin
但是,却看不到admin中的任何文件
原因只可能是selinux
# setsebool -P samba_enable_home_dirs=1


备注:
要是还看不到文件,请查看被共享文件夹的权限,应该设为2770;
其次,看系统日志,8成是selinux把它禁了

比如你明明把/tmp文件夹和/share文件夹同样的设置然后列出,但是/share不停地弹出对话框,要求输guest的密码,结果死活都进不去,那是因为:
引用
drwxrwxrwx  root root system_u:object_r:default_t      share
drwxr-xr-x  root root system_u:object_r:var_t          srv
drwxr-xr-x  root root system_u:object_r:sysfs_t        sys
drwxrwxrwt  root root system_u:object_r:tmp_t          tmp

所以把share的type改成tmp_t就可以访问了
# chocon -R -t tmp_t share


另外,如果弹出的是警告框,那说明目录权限不对
文件权限设为664
文件夹权限设为775
群组文件夹设为2770






你可能感兴趣的:(linux,samba)