配置samba服务器-梁玉锋
- 格式:doc
- 大小:225.00 KB
- 文档页数:5
Samba服务器配置
1.安装samba服务器
、2.修改配置文件说smb.conf
1)打开smb.conf配置文件
2)在配置中输入如下内容:
3)利用testparm检测配置文件
3.修改配置文件后重启服务
4.创建一个samba用户,设置samba密码
5.查看服务器IP
6.客户端登录测试在windows里面选择开始菜单->运行:输入\\IP 地址即可(如果没有办法弹出这个输入密码的对话框,可以在cmd 命令里输入net use*/del,删除windows的连接)
7.Linux客服端登录测试
1)安装smbclient
2)连接服务器利用smbclient命令(注意IP后面是共享文件名)
备注:
1.samba用户必须是服务器本地已经存在的用户
2.Samba用户必须创建用户samba密码
3.用户是否能创建文件或者目录取决于服务器的权限同时受限于操作目录权限本身。
Samba服务器是我们常用文件资源共享服务器,Samba服务器配置多种多样,可以根据不同用户或用户组访问不同目录进行配置。
下面开始讲解配置流程1、安装Samba服务器# yum -y install samba samba-client samba-common//或者使用rpm安装#rpm -ivh samba-4.1.1-37.el7_0.src.rpm2、创建共享目录#mkdir /smb3、配置内核参数# ulimit -n 16384# vi /etc/security/limits.conf#在最后加入以下内容* - nofile 16384Tip: 这主要是避免在启动Samba时出现以下警告信息:rlimit_max: increasing rlimit_max (1024) tominimum Windows limit (16384) 4、配置Samba参数#cd /etc/samba#mv smb.conf smb.conf.bf#touch smb.conf#vi smb.conf将下面内容复制进去[global]workgroup=WORKGROUPnetbios name=Amapleserver string=Samba Server#security=sharesecurity=usermap to guest = Bad User[share]path = /smbpublic = nowritable = yeswrite list = @sambavalidusers = @samba如果需要根据不同用户进入不同目录用share参数修改为[Share]path = /smb/%upublic = nowritable = yeswrite list = @sambavalidusers = @samba如果需要开启公共区域可以在share后面追加,根据需要开启[Public]path=/smb/docsreadonly=yesbrowseable=yesguest ok=yes5、创建用户组# groupadd samba6、创建用户# useradd -g samba amapleuseradd -g samba samba7、创建SAMBA用户# smbpasswd -a amaple8、赋值目录权限# chown samba:samba /smb# chmod 770 /smb9、启动samba服务器sysctltem start samaba然后在windows测试下如果不行关闭下防火墙和selinux 如果选择的是根据不同用户进入不同目录用share参数修改为10、创建用户目录mkdir /smb/amaple# chown amaple:samba /smb# chmod 755 /smb/amaple如果会setfacl建议用该它进行设置权限更加妥当,还有可以搭配mount目录挂载使用更加方便。
linux下怎么配置smba服务器Linux下如何配置Samba服务器Samba服务器是一种用于构建文件共享和打印服务的软件,它允许Linux系统与Windows系统之间进行文件和资源的共享。
本文将详细介绍如何在Linux系统中配置Samba服务器。
1. 安装Samba服务器软件在终端中输入以下命令来安装Samba服务器软件:```sudo apt-get install samba```2. 配置Samba服务器2.1 创建共享文件夹首先,我们需要创建一个共享文件夹,它将包含允许其他计算机访问和共享的文件。
在终端中输入以下命令创建一个共享文件夹:```sudo mkdir /samba/share```然后,将共享文件夹的权限设置为可读写:sudo chmod 777 /samba/share```2.2 编辑Samba配置文件接下来,我们需要编辑Samba服务器的配置文件来定义共享。
在终端中输入以下命令来编辑Samba配置文件:```sudo nano /etc/samba/smb.conf```在配置文件的最后一行添加以下内容:```[share]comment = Shared Folderpath = /samba/sharebrowseable = yesguest ok = yesread only = nocreate mask = 0777directory mask = 0777解释一下上述内容:- `[share]`:共享文件夹的名称,您可以根据需要更改它。
- `comment`:对共享文件夹的简要描述。
- `path`:共享文件夹的路径。
- `browseable`:是否允许其他计算机在资源管理器中浏览共享文件夹。
- `guest ok`:是否允许匿名用户访问共享文件夹。
- `read only`:是否只读。
- `create mask`:新建文件的权限掩码。
- `directory mask`:新建目录的权限掩码。
1 samba服务器的简介在Windows中,我们都知道网络邻居,是Windows共享资源的方式。
Linux写Windows 互访与共享资源的方式是利用Samba服务,其实我觉得它更象一个软件。
Windows与Linux 通过Samba,可以相互共享资源,是互为服务器和客户端的关系。
比如当装有Windows操作系统的机器,向装有Linux系统的机器存取文件,那Windows应该是客户机,而Linux 则是服务器;如果Linux的机器向Windows访问和存限文件及使用Windows提供的打印服务,这时应该说Windows是服务器,而Linux是客户机。
2 建立windows与linux之间的通信2.1 查看当前windows的IP地址在运行下输入cmd,在dos模式下输入ipconfig则出现其中VMware network adapter vmnet1是我们主要用来进行虚拟机和windows进行通信的网络桥接。
记下当前的IPV4:192.168.137.1。
2.2 配置linux的ip地址(1)在虚拟机->设置—>选择host only。
(2)修改你linux的网络地址,要与windows的VMware network adapter vmnet1 的IP 处于同一个网络环境,即192.168.137.XX方式一:ifconfig eth0 192.168.1.18 netmask 255.255.255.0说明:该种方式可以使改变即时生效,重启后会恢复为原来的IP方式二:vi /etc/sysconfig/network-scripts/ifcfg-eth0说明:该种方式要重启后生效,且是永久的。
方法三:输入setup 第四项network configuration设置你的ip地址。
说明:该种方式要重启后生效,且是永久的。
(3)重启网络服务/etc/init.d/network restart(4)ping 192.168.137.1 检测你的linux与windows网络通信是否畅通。
4、安装Samba用户在主流的Linux版本(如Fedora和CentOS下)都可以采用如下命令进行安装:#yum -y install samba在创建配置文件以后(一般情况下,安装好Samba软件后,其配置文件为缺省状态),需要测试Samba 正确性。
首先确认客户和服务器之间可以互通。
如果网络不能工作,则Samba必然不能工作。
我们使用testparm程序。
testparm是一个简单的程序,用于检查/etc/smb.conf文件的内部正确性。
如果该文件报告没有问题,则可以确定smbd可以成功地加载该配置文件。
请注意:使用testparm并不能保证在配置文件中指定的服务可用或者工作正常。
这种测试只保证Samba可以读取和理解该配置文件。
testparm命令行如下:testparm [configfile [hostname hostip]]当smb.conf文件不在默认位置时,使用configfile可以(/etc/smb.conf)指明其位置。
可选参数hostnamehostip指示testparm查看该主机是否有权限访问smb.conf文件中提供的服务。
如果指定hostname,则必须还指定该主机的IP地址。
否则结果不可预知。
下面的例子演示了testparm运行的输出。
如果有某些错误,testparm程序会给出特定的错误消息报错://测试smb.conf文件配置是否正确//该测试只能测试smb.conf文件配置是否正确,并不能保证Samba服务器正常工作#testparm smb.conf gjspring 15.26.40.9Load smb config file from smb.confProcessing section “[home]”Processing section “[GONGsprn]”Load services OK .Allow connection from gjspring(15.26.40.9)to homes.Allow connection from gjspring(15.26.40.9)to GONGsprn.5、启动及关闭Samba服务器Samba服务器的启动有两种方式,一种是Linux终端命令行形式,一种是使用Linux提供的System Services方式。
samba服务器配置说明配置服务器密码:cnfoldcsamba相关命令grep -v '^#' smb.conf |grep -v '^;' |grep -v '^$' 确认是否把设定给批注了/etc/rc.d/init.d/smb restart 重启smb服务vi /etc/samba/smb.conf 修改samba配置文件smb.confifconfig eth0 169.254.235.182 netmask 255.255.0.0 up 临时修改IP地址和网关samba设定档:/etc/samba/smb.conf这个是samba最主要的设定档/etc/samba/lmhosts这个档案主要目的在对应NetBIOS name 与该主机名称的IP/etc/samba/smbpasswd 档案预设不存在是samba预设使用者密码对应表需要权限root且设定为600samba相关目录:/usr/share/doc/samba 这个目录包含了samba的所有相关技术手册/var/log/samba这个目录是samba预设的登录文件放置目录可以查看是否被入侵/usr/share/samba/codepages这个目录是放置各个语言的支持格式需要支持中文就靠codepage.950支持。
当然修改smb.conf是最直接的。
[global]workgroup : 工作群组:同一个局域网络内,要具有相同的workgroupnetbios name : 主机名称:这个主机名称就是netbios 的名字!请注意,如果你没有设定netbios 的话,预设的netbios 会以hostname 来替代!server string: 这个是主机的说明,随便写写没关系!security : 这个重要,是用来规定samba 主机的安全登入项目,有底下几种:share :不进行安全登入,亦即没有设定账号与密码user:设定主机的密码文件作为登入的验证档案,这与底下的smb passwd file有关domain :就是让您的samba 作为PDC 啰!log file : 登录文件放置的目录所在地[webpage]comment = my home page 这个是目录说明path =/var/www/htmlread only =no 是否只读public = yes 是否让所有可以登入的使用者看到这个项目writable =yes 是否可以写入读写权限值最后出现的那个设置值为主这里起作用的是 writable而不是read onlycreate mode =0664directory mode =0775 这两个mode都与权限有关samba变量%s :取代目前的设定项目值,所谓的『设定项目值』就是在里面的内容!举例来说:[homes]valid users=%s因为 validusers是允许的登入者,设定为%s 表示任何可登入的使用者都能够登入的意思~今天如果test 这个使用者登入之后,那个[homes] 就会自动的变成了[test]了!这样可以明白了吗?!%s 的用意就是在替换掉目前[] 里面的内容啦!%m :代表 client端的NetBIOS 主机名称喔!例如上面案例的登录档!%M :代表 client端的Internet 主机名称喔!就是HOSTNAME 。
SAMBA服务器实例讲解B Y F UN.SAMBA服务器¢Samba是一个网络服务器,Samba 即可以用于Windows和Linux之间的共享文件,也一样用于Linux和Linux之间的共享文件;不过对于Linux和Linux之间共享文件有更好的网络文件系统NFS,NFS也是需要架设服务器的。
¢在Windows 网络中的每台机器即可以是文件共享的服务器,也可以同样是客户机;Samba 也一样能行,比如一台Linux的机器,如果架设了Samba Server 后,它能充当共享服务器,同时也能做为客户机来访问其它网络中的Windows共享文件系统,或其它Linux的Sabmba服务器;我们在Windows网络中,看到共享文件功能知道,我们直接就可以把共享文件夹当做本地硬盘来使用。
在Linux中就是通过Samba 向网络中的机器提供共享文件系统,也可以把网络中其它机器的共享挂载在本地机上使用。
Samba的核心Samba的核心是两个守护进程smbd和nmbd,它们分别监听139 TCP端口并处理到来的SMB数据包和监听137和138 UDP端口,并使其他主机能够浏览Linux服务器。
Samba工作原理Samba服务器安装rpm –ivh samba-3.0.10-1.4E.i386.rpmSamba服务启动与停止命令行方式使用以下命令来启动Samba服务:#service smb start使用以下命令来停止Samba服务:#service smb stop输入以下命令来重启Samba服务:#service smb restartSamba服务主配置文件smb.conf文件是配置Samba的核心,主要设置Samba服务器的权限设置,以及共享的目录、打印机和机器所属的工作组等。
配置文件smb.conf 的语法比较明确。
该配置文件被分成许多个段,且每一个段的名字用一个方括号括([])起来。
配置samba服务器
用以下命令查看samba的安装情况。
[root@localhost linux-2.6.18_pro500]# rpm -qa |grep samba
samba-common-3.4.7-58.fc12.i686
samba-3.4.7-58.fc12.i686
samba-winbind-clients-3.4.2-47.fc12.i686
samba-client-3.4.7-58.fc12.i686
samba服务器安装完成后,几个重要的文件分布如下:
/etc/pam.d/samba:samba的PAM认证配置。
/etc/rc.d/init.d/smb:samba的启动脚本。
/etc/samba/smbusers:samba服务器用户与操作系统用户映射文件。
/usr/bin/mksmbpasswd.sh:创建samba用户的脚本。
/usr/bin/smbcontrol:控制samba服务器运行的工具。
/usr/bin/smbstatus:列出samba服务器的连接状态。
/usr/sbin/nmbd:samba服务器的nmbd进程的命令文件。
/usr/sbin/smbd:samba服务器的smbd进程的命令文件。
用以下命令启动samba服务器。
[root@localhost linux-2.6.18_pro500]# /etc/rc.d/init.d/smb start
启动SMB 服务:[确定]
[root@localhost linux-2.6.18_pro500]# /etc/rc.d/init.d/nmb start
启动NMB 服务:[确定]
[root@localhost linux-2.6.18_pro500]# ps -eaf |grep smbd
root 17528 1 0 20:51 ? 00:00:00 smbd -D
root 17530 17528 0 20:51 ? 00:00:00 smbd -D
root 17540 1925 0 20:51 pts/0 00:00:00 grep smbd
[root@localhost linux-2.6.18_pro500]# ps -eaf |grep nmbd
root 17537 1 0 20:51 ? 00:00:00 nmbd -D
root 17542 1925 0 20:52 pts/0 00:00:00 grep nmbd
默认时,samba服务器启动了两个smbd进程和一个bmbd进程,均以root用户的身份运行。
其中,smbd进程主要负责处理对文件和打印机的服务请求;而nmbd进程主要负责处理Netbios名称服务并提供网络浏览功能。
可以用一下命令查看以下这两个进程监听的网络端口。
[root@localhost linux-2.6.18_pro500]# netstat -anp|grep smbd
tcp 0 0 :::139 :::* LISTEN 17657/smbd tcp 0 0 :::445 :::* LISTEN 17657/smbd tcp 0 0 ::ffff:192.168.1.101:445 ::ffff:192.168.1.106:4429 ESTABLISHED 17693/smbd
unix 2 [ ] DGRAM 42228 17657/smbd
[root@localhost linux-2.6.18_pro500]# netstat -anp|grep nmbd
udp 0 0 192.168.1.101:137 0.0.0.0:* 17674/nmbd udp 0 0 0.0.0.0:137 0.0.0.0:* 17674/nmbd udp 0 0 192.168.1.101:138 0.0.0.0:* 17674/nmbd udp 0 0 0.0.0.0:138 0.0.0.0:* 17674/nmbd unix 2 [ ] DGRAM 42258 17674/nmbd
[root@localhost linux-2.6.18_pro500]#
以上过程完成后,可以在windows客户端测试一下samba服务器是否正常工作,具体方法是在ie浏览器的地址栏输入“\\192.168.1.101”。
其中,ip地址是服务器的ip地址。
正常情况下,将会出现如下图对话框。
注意:默认情况下,samba并不使用操作系统的账号进行认证,而是使用他自己创建的账号,具体创建方法如下。
使用图形界面配置samba服务器
[root@localhost linux-2.6.18_pro500]# rpm -qa|grep system-config-samba
[root@localhost linux-2.6.18_pro500]# yum install system-config-samba
->管理->samba
Windows下。