Dec 7, 2012 - linux    No Comments

CentOS install samba

samba的安装很简单

$ yum -y install samba

然后执行

$ vi /etc/samba/smb.conf

去配置一下samba的访问方式。

找到 [global], 做如下改动


找到最下面的 Share Definitions,添加如下配置

然后保存并退出编辑。

可以看出我把samba的共享目录指向了apache的文件存放目录,并允许用户ares通过密码访问。
首先创建samba用户的密码存放文件:

$ cd /etc/samba/
$ touch smbpasswd

然后改apache的文件存放目录的权限

$ chown -R .nobody /var/www/html/
$ chown 777 /var/www/html/

然后给用户ares设置密码,不过去失败了。如图

这是因为ares这个用户没有事先添加到系统用户中去。所以

$ useradd ares
$ passwd ares
$ smbpasswd -a ares

用户就添加成功了。

但这个时候samba共享目录还是无法连接,果断暂时关闭防火墙。

$ setup

果然samba可以连接,但是却无法写入文件。

修改selinux的配置

$ vi /etc/sysconfig/selinux

把 SELINUX=enforcing 修改为SELINUX=disable 保存并退出。

发现还是老样子,不能写文件。这个时候一定要reboot centos。SELINUX的修改不重启机器是不会生效的。
但是重启前记得先把samba加入到自启动列表。

$ chkconfig smb on

重启好后,samba共享目录就可以正常读写了。

====================安全的分割线====================
完全关闭防火墙,对我这样的虚拟机完全是没有问题的。但如果是正式的服务器,就显得有点不安全了。

$ setup

重新开启防火墙,这个时候samba是不能连的。编辑iptables,添加samba需要的端口

$ vi /etc/sysconfig/iptables

进去后发现,开关一次防火墙后以前添加的80端口不知道为什么没有了。好吧,再添加一次。然后添加samba需要开放的端口。
tcp:139,445
udp:137,138

重启iptables

$ service iptables restart

一切OK!

Got anything to say? Go ahead and leave a comment!