创建简单的samba服务器
samba 很少用于互联网 /大部分用于局域网 网页更新/
首先看下你是否安装后了samba、 rpm -qa | grep samba
samba的简介 1)samba文件的位置 /etc/samba/smb.conf
2)samba的俩守护进程: ——smbd(主要的) 监听139tcp端口 进程的作用负责用户的验证和文件的共享
——nmbd监听137和138udp 进程的作用处理浏览器的共享和计算机的名称的解析
3)开启samba服务#/etc/rc.d/init.d/smb start
#对于一些比较重要的文件先备份在修改
4)samba的四个设置段: 【global】设置全局环境选项 【homes】设置用户宿主目录共享 【printers】设置打印共享 【sharefile】设置文件共享 samba有两个注释符“;”、“#”
#grep -v "^#" /etc/samba/smb.conf 不看#号开头的行
4.1 【global】段主要选项 workgroup=指定工作组或域 可以写域名或主机名、怎么写都行 service string=描述
security=指定的安全模式 1.share window访问linux不需要密码 无权限验证 2.user 缺省的 推荐的,由linux samba服务器验证 3.server 第三方主机验证
4.domain 第三方主机验证(第三方必须是window域控制器) hosts allow =限定主机访问
服务 基本限定 1、那些主机可以的访问 hosts allow =127. 192.168.9. <-格式 hosts deny 2、哪些用户可以访问
log file=指定日志文件存放的位置 max log size=指定日志的大小
【homes】
commend 描述
browseable=no 无权限访问的目录隐藏
writable=yes 可写 no 只读 每个用户对自己的的宿主目录都有写权限
samba的应用实例
如果安装启用了SELinux,需要执行; 可以看到自己的宿主但无访问权限,可以执行下面;
查看路径#gesebool -a| grep samba #stesebool -P samba_enable_home_dirs on
一般系统有两个防火墙 netfilter/iptables #ipyables -F SElinux 内核防火墙
要关闭永久SElinux功能编辑 # vi /etc/selinxu/connfig SELINUX=disabled 就ok了
URL地址:http://www.bianceng.cn/Servers/zs/201602/49628.htm
设置samba的密码 smbpasswd -a 用户名 修改密码 可以省略-a
#/etc/rc.d/init.d/smb start #ps -le | grep smb
#pgrep nmbd ~ ~ smbd 访问samba “开始”——“运行”
,输入\\samba服务器的地址 samba服务器端查看客户端信息 #smbstatus
第一次没进去,第二次注销or重启or 下 在本机运行里cmd输入net use * /delete /y 断开所有会话
查看连接 net use
删除samba用户
smbpasswd -x 用户名
扩展 #getsebool -a|grep samba #查看ftp相关写权限是否打开 #setsebool -P **** #使某选项生效
samba应用实列
samba共享目录/software,允许用户jack mary可以通过window客户端访问,并且具有读写的权限
1、 首先要创建software目录 #mkdir /software 再添加两用户jack mary #useradd jack #useradd mary #passwd jack #passwd mary
如果装了SELinux首先要将/software目录共享出去给其他用户,执行以下命令 #chcon -t samba_share_t /software
在samba文件的末尾配置服务
# vi /etc/samba/smb.conf
【software】共享名里千万不能有特殊符号
path=/software 共享目录 只能跟共享一个目录 valid users=jack mary
指定有效的访问用户 writable=yes 权限
设置用户jack mary的samba密码 启动samba服务 /etc/rc.d/init.d/smb restart
我们会发现 无法创建文件 明明我们已经授予samba写权限怎么还是写不了
1)samba是否授予写权限 2)用户在linux系统中是否对共享目录有写的权限 这两个取一个交集 才能实现写权限
# groupadd softadmin #gpasswd -a jack softadmin #gpasswd -a mary softadmin #ls -ld /software #chgrp softadmin /software #chmod g+w /software #grep softadmin /etc/group jack mary samba服务器检测命令
#testparm 检测samba的语法错误
samba案列三
建立一个公共的只读目录/public,所有人可以浏览目录的内容,但是不能随便删。
【public】 comment=Read Only Public path=/public writable=no
案列四 建立部门资料共享目录/hr.部门每个人都能读写。但不能删除别人的文件
【hr】 path=/hr valid users= zhangsan lisi wangwu writable=yes
#chmod 1777 /hr 说白了就是给该目录设置粘着位1
****************扩展内容***************************
5、samba //If you want to share files other than home directorie <如果你希望将目录共享给其他用户,你需要设置> chcon -t samba_share_t /directory
//If you want to share files with multiple domains 如果samba服务器共享目录给多个域,则需要: setsebool -P allow_smbd_anon_write=1
//If you are setting up this machine as a Samba server and wish to share the home directories samba服务器要共享家目录时: setsebool -P samba_enable_home_dirs 1
//If you want to use a remote Samba server for the home directories on this machine 如果你需在本机上使用远程samba服务器的家目录 setsebool -P use_samba_home_dirs 1
//You can disable SELinux protection for the samba daemon by executing 关闭selinux关于samba的进程守护的保护 setsebool -P smbd_disable_trans 1 service smb restart