Centos配置samba文件共享服务器
1、安装samba。
yum install samba
如果安装源没有samba,则需要自己从网上下载一个samba的源文件samba-4.14.5.tar.gz。上传至centos服务器。可以复制到/opt目录下。
cd opt
tar -zxvf samba-4.10.6.tar.gz
mv samba-4.10.6 samba #修改文件夹名称
cd samba
./configure
执行完毕后,在运行yum install samba 就可以完成安装了。
2、打开服务
systemctl start smb
查看smb状态
systemctl status smb
设置开机自启
systemctl enable smb
3,创建用户,这时候的用户是centos系统的用户。可以创建多个用户,本次测试只创建一个用户。
useradd xiaoming
4,将用户转变为smb用户,输入密码。
smbpasswd -a xiaoming
5、创建共享文件夹
mkdir /home/xiaoming/pub
6,给共享文件夹权限,由于是测试,给的是最高读写权限,一般这种操作不安全,不建议最高
chmod -R 777 /home/xiaoming/
chmod -R 777 /home/xiaoming/pub
7,配置smb
vi /etc/smaba/smb.conf
[global]
security = user
[gongxiang] #显示在共享文件夹的名称
path = /home/xiaoming/pub #实际文件夹地址,注意:需要给该目录赋权限,上一级目录也需要。
create mask=0744
directory mask=0755
available=yes
valid users = xiaoming #用户名,访问共享文件夹需要的用户名,密码是将用户转换为smb用户时输入的命名。
readonly=no
browseable=yes
writeable = yes
public=yes
guest ok =yes
8,重启smb服务
systemctl restart smb
9、关闭防火墙
systemctl stop firewalld.service
10,用windows连接进行测试,保证Windows和centos之间可以互相通讯。
win+r \\ip地址。连接后让输入用户名和密码。直接输入转变的smb用户,密码就是转变用户时设置的密码。
问题:samba文件共享服务器拒绝访问
注意以下几个方面:
1、修改目录权限
chmod 777 /home/wind ;
chmod 777 /home/wind/smbShare;
特别是前面一个做为上层目录权限也需要修改!!!!
2、开放端口445
systemctl start firewalld.service
firewall-cmd –zone=public –permanent –add-port=445/tcp
firewall-cmd –reload
3、SELinux作怪
修改/etc/sysconfig/selinux 把enforcing改成disabled;然后命令行setenforce 0;
4、共享文件给Samba
在CentOS中,系统处于安全的考虑,即使拥有着或者权限合法的情况下,也会拒绝某些进程对文件的访问,这时就需要使用chcon这个命令了。于是在我指定了一个目录后,使用下面的语句即可:
chcon -R -t public_content_t /mydata/
上面这条命令就是将mydata这个文件夹共享给匿名使用,这其中自然也包含Samba了,或者,也可以使用下面的语句:
chcon -t samba_share_t /mydata/