您的位置:首页 > 运维架构 > Linux

LInux_samba文件共享

2016-08-21 12:13 363 查看

1.序

Windows文件共享
Windows主机之间使用SMB/CIFS网络协议实现文件和打印资源的共享
Windows无法与UNIX/Linux主机之间实现资源共享
Samba服务器
Samba服务器在UNIX系统中实现了SMB/CIFS协议
通过Samba服务可以实现UNIX/Linux主机与Windows主机之间的资源互访
特点:
必须是系统用户,但使用独立密码访问
默认安装samba并添加用户(smbpasswd -a 用户名),即可访问自己的宿主目录(可读写)。


2.安装

安装

yum -y install samba


启动服务

/etc/rc.d/init.d/smb start




service smb start


设置开机自启动

chkconfig smb on


3.用户管理

1.首先必须是系统用户,添加Linux系统用户

useradd 用户名 #添加用户

passwd 用户名 #设置密码

2.然后设置samba的密码(samba自带的用户管理工具)

smbpasswd -a 用户名 #加用户

smbpasswd 用户名 #改smb密码

root可以使用管理命令(系统自动的samba用户数据库管理工具)

pdbedit -a username:新建Samba账户。

pdbedit -x username:删除Samba账户。

pdbedit -L:列出Samba用户列表,读取/etc/samba/passdb.tdb数据库文件。

pdbedit -Lv:列出Samba用户列表的详细信息。

4.建立samba连接

为了安全,不要把root设为samba用户

重启服务

Service smb restart


Windows中如何连接:

\\服务器地址

\\192.168.88.88

可以映射网络驱动器

net use

net use * /del /y

net use \\192.168.88.88 “password” /user:your_user

查看有哪些客户端连接

smbstatus


查看日志

cat /var/log/samba


如果不能访问:

防火墙

iptables -L //查看
iptables -F //清空防火墙规则,拆除防火墙


即时生效,重启后复原

service iptables stop


永久性生效,重启后不会复原

chkconfig iptables off


SELinux

允许访问

setsebool -P samba_enable_home_dirs on


或完全禁用SELinux:

vi /etc/selinux/config 改为SELINUX=disabled


5.配置文件

如果查找配置文件在哪里

rpm -ql samba-common | grep smb.conf


编辑配置文件

vi /etc/samba/smb.conf


[global]    全局环境选项
workgroup   工作组或域
server string   描述信息
security    安全模式,有如下选项
share   不验证权限,直接共享
user    缺省,推荐,由Linux Samba服务器做验证
server  第三方主机验证
domain  第三方主机验证(必须是Windows 域控制器)
hosts allow 哪些主机可以访问(如果没有配置,全部主机都可以)
如果是ip直接写上,如果是ip段只写网段部份,多个用空格分隔 如: 192.168.1. 192.168.2.
哪些主机不允许访问,hosts deny 一般不和hosts allow同时使用
log file    日志文件(最好启用日志)
[homes]     只要有这个配置段,用户默认就可以通过自己的用户名,访问自己的宿主目录
comment     描述
browseable=no   无权限访问的目录,不显示出来
writable=yes    可写


6.samba实例

配置 /www 目录共享,允许samba用户完全访问

6.1 检查Samba安装状态

service smb status


如果没有安装请安装

6.2 关闭SElinux

查看状态

setenforce 0:


如果显示:setenforce: SELinux is disabled,说明已经关闭,否则

推荐直接完全禁用SELinux:

vi /etc/selinux/config


改为SELINUX=disabled

6.3 创建目录

mkdir /www


6.4 添加用户

useradd samba
passwd samba


6.5 添加samba密码

pdbedit -a samba


6.6 编辑配置文件

vi /etc/samba/smb.conf


建议写在配置文件尾

[www]           共享名,不能有特殊符号,一般是字母或数字组成
path = /www     共享目录,只能是一个目录
valid users = samba 多个用空格分开。如果没配置此项,所有用户都可以访问
writable = yes      写权限 yes  no


6.7 Samba服务器配置检测命令

testparm


如果配置文件写错,例valid users=user1 写成了valid user=user1 会有提示

6.8 重启服务

/etc/rc.d/init.d/smb restart




service smb restart


6.9 设置目录权限

直接改为777,但这样不安全。

chmod -R 777 /www


个人开发到此就可以了。

团队开发:

创建一个用户组,改变目录所属组,对组授权,然后重新连接就可以了

groupadd sambas

usermod -aG sambas samba

chgrp sambas /www

chmod g+w /www

推荐用acl

setfacl -R -m u:samba:rwx /www #让samba有rwx权限 (已有目录或文件)

setfacl -R -m d:u:samba:rwx /www #让以后新创建的文件或目录,samba也有rwx权限

提供一个共享目录,所有有户都能使用,却不能删除别人的文件

[test]
path = /test
wrieable=yes


然后,设置目录为 chmod 1777 /test
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  linux samba 文件共享