标签归档:fedora samba

fedora 15 Samba 服务器的安装配置方法

原文来自:寻梦的感觉-百度空间

一、安装samba服务器
通过yum安装(需要网络支持)
在终端键入命令:yum -y install samba 自动完成安装:
# yum install samba
二、配置samba服务器(两种方法)
方法一:直接修改配置文件(smb.conf)

1. 编辑/etc/samba/smb.conf,需要root权限
# cd/etc/samba/
# vim smb.conf
需要修改:
workgroup =WORKGROUP //设置工作组
security= share //安全级别,user需要用户名和密码,share级别则不要
需要添加:
[samba-share] //建立一个共享名为samba-share的共享,名字随意最好将共享名就设置成目录名。
comment = Samba //描述信息,同样随意
path = /home/share //共享路径,需要有访问权限(根据实际要求设置其读写权限)
public = yes //是否允许guest用户访问(相当于guest ok = yes/no)
writable = yes //是否可写(可写的前提是共享目录本身就具有所有用户“可写”的权限)
2.创建共享目录/home/share(这就是smb.conf中那个共享目录哈)
设置共享目录权限为可读可写chmod 777 /home/share
说明:上例仅仅将samba配置成匿名访问的方式。
如果需要账户认证则做以下修改即可:
(1)修改安全模式,将share改为user:
security = user
#passdb backend = smbpasswd
passdb backend = tdbsam //使用tdbsam数据库做账户后端存储文件,改数据库为passdb.tbd,默认情况下放在/etc/samba/目录下,需要使用smbpasswd -a username 来手动添加账户及密码进密码数据库,并且要求该账户是系统账户(能访问操作系统的账户)。
(2)共享目录字段配置将public注释掉,并设定允许访问的用户,如下:
[samba-share]
comment = Samba //描述信息,同样随意
path = /home/share //共享路径,需要有访问权限(根据实际要求设置其读写权限)
;public = yes //使用”;”将之注释掉
writable = yes //是否可写(可写的前提是共享目录本身就具有所有用户“可写”的权限)
valid users = xiaoli //允许访问samba-share 的用户为xiaoli
(3)添加账户及其密码到密码数据库中
smbpasswd -a xiaoli
New SMB password://第一次输入账户密码,最好与系统密码一致,难得记
Retype new SMB password://再次输入密码,确认。
(4)重启samba服务器即可
service smb restart
这样以后登陆时就需输入账号及密码了。

3.一份简单的samba配置文件:/etc/samba/smb.com
[global]
netbios name = sambashare
workgroup = WORKGROUP
server string = sambashare’s host
security = share
max protocol = SMB2
guest account = ftp
map to guest = Never
local master = Yes
large readwrite = yes
wins server =
time server = Yes
; doscharset = CP437a
; unixcharset = ASCII
log level = 1
encrypt passwords = yes
smb passwd file = /etc/samba/smbpasswd
[share]
path = /home/share/
public = yes
guest ok = yes
writeable = yes
[liqiyuan]
path = /home/liqiyuan/
public = yes
writeable = no
create mask = 0765
方法二:图形化界面配置
如果安装了system-config-samba软件包(若有网络可以马上安装这个软件包,命令行输入yum install system-config-samba 安装即可),则可在终端中直接输入system-config-samba 接着就会出现下图界面:

图1
输入root 密码,之后会出现如下界面:

图2
在此可以对samba服务器进行相关配置,如共享文件夹,共享文件夹权限等相关设置。设置好后关闭即可。
(若在此过程中设置的文件夹不能使得服务器工作——出现“服务器建立失败”提示,则要到相关位置创建供共享的文件夹,再在上图所示界面中将新创建的文件夹添加成共享文件夹。想嘛,要是我们欲提供给用户访问的文件夹在我们的服务器上都不存在,那这个服务器还有意义吗?)
如,欲将共享路径设成为: /home/share,则可以先进入根目录下的home文件夹:
# cd /home
在home目录下再创建一个share文件夹:
# mkdir share
再使用命令:# system-config-samba 打开图形设置界面,添加刚刚新建的文件夹(/home/share)作为共享文件夹。
三、启动samba服务
#/etc/rc.d/init.d/smb start(或者service smb start) ←启动 Fedora Samba 服务
#/etc/rc.d/init.d/nmb start(或者service nmb start) ←启动 nmb 服务
接下来设置开机自启动,免得每次重启系统后都得手动启动samba进程:
# chkconfig smbon ←设置 Fedora Samba 自启动
# chkconfig–list smb ←确认 Fedora Samba 启动标签,确认 2-5 为 on 的状态//其实无关紧要
# chkconfig nmbon ←设置 nmb 自启动
# chkconfig–list nmb ←确认 nmb 启动标签,确认 2-5 为 on 的状态//其实无关紧要
四 关于防火墙:
一般情况下直接将防火墙关闭即可,执行命令:service iptables stop
出于系统安全性的考虑还是配置一下防火墙,打开samba服务端口。
配置方法也有两种:
(1)图形界面配置:
命令行输入:system-config-firewall,在打开的Trusted Services配置页面中选中Samba和Samba Client,并应用即可。
(2)直接修改防火墙配置文件:
修改配置文件(centos 6.4 /etc/sysconfig/iptables)在22端口行下面添加以下内容开放137、138、139、445端口,并保存退出,重启防火墙即可(service iptables restart).
-A INPUT -m state –state NEW -m udp -p udp –dport 137 -j ACCEPT
-A INPUT -m state –state NEW -m udp -p udp –dport 138 -j ACCEPT
-A INPUT -m state –state NEW -m udp -p udp –dport 137 -j ACCEPT
-A INPUT -m state –state NEW -m udp -p udp –dport 138 -j ACCEPT
-A INPUT -m state –state NEW -m tcp -p tcp –dport 139 -j ACCEPT
-A INPUT -m state –state NEW -m tcp -p tcp –dport 445 -j ACCEPT

五、关闭selinux
打开windows运行的ip地址)\(smb.conf中添加的共享名) 注意!!!!反斜杠“\\”别反了!!!!
可能会提示没有权限或者无法访问,如下图

图5
这是因为selinux对samba共享做了限制,所以简单解决办法就是采取关闭selinux的方式.
关闭selinux方法:打开/etc/selinux/config 修改:SELINUX=disable
vim /etc/selinux/config
进入config文件,如下:

图6
3 将SELINUX=enforcing修改为:SELINUX=disabled
4 重启linux生效(因selinux会对系统中所有文件的上下文信息进行更新,而selinux是内核模块,在系统启动加载时才执行上下文信息更新的操作)
再在windows下登录samba服务器就可以了。

注意:如果需要开启selinux,那么可以参考/etc/samba/smb.conf文件中SELINUX NOTE:字段介绍进行设置,大概过程是:
(1)命令行中执行:setsebool -P samba_enable_home_dirs on #开启home目录共享
(2)chcon -t samba_share_t /home/share #将/home/share 上下文类型设置成samba_share_t ,如果不是这个类型,那么访问samba共享目录时,selinux会检查到非此类型就阻止访问。

六、在windows下登录该服务器(ip为linux系统的ip)
开始–>打开–>输入”\\samba-server-IP”,如图:

即可访问,如果发现“无法连接网络”的错误那么多半是LINUX系统防火墙设置的问题,请参考第四部检查防火墙设置,然后重试。