Linux下samba的安装与配置
physique
- 博客园
- 首页
- 新随笔
- 联系
- 管理
- 订阅
随笔- 203 文章- 0 评论- 33
Linux下samba的安装与配置
转载来源:http://blog.chinaunix.net/uid-28622942-id-3487141.html
一、简介
Samba,是在Unix上实现SMB(Server Message Block)的一个工具套件。而SMB通常是windows用来实现共享的,包括文件和打印机等。而Unix上装上SMB,则使得Unix能够和windows连接在一起,实现两者的资源互通。
二、安装
$rpm -qa | grep samba #查看系统是否已安装samba
$yum install samba #使用yum软件包管理工具安装samba
三、常用命令
1.service smb status #查看smd服务的状态
2.service smb start #运行smb服务
3.service smb stop #停止服务
4.service smb restart #重启服务,但在实际中一般不采用
5.service smb reload #重载服务,在实际中较常用,不用停止服务
四、配置
4.1.基本配置
samba的主要配置文件放在/etc/samba/smb.conf文件夹下。文件可以分为两大部分,第一部分是全局配置,第二部分是局部配置。下面是一个配置文件及相关注释:
[global] #全局配置,配置文件以[segname]分段,除了global影响全部段之外,各段之间互不影响
workgroup = MYGROUP #samba的工作组
server string = Samba Server Version %v #samba的说明信息
netbios name =Aric #简单的说就是计算机名称
log file = /var/log/samba/%m.log #日志文件存放位置
max log size = 10 #日志文件大小,以M为单位
security = share #安全选项,可以是share,user,server,domain安全级别递增
encrypt passwords = yes #密码是否加密
smb passwd file = /etc/samba/smbpasswd #密码文件存放位置
username map = /etc/samba/smbusers #用户文件存放位置
[share] #局部配置,[]里面是段名,也就是我们的共享名
comment = This is my shared folder. #该共享的说明
path = /home/share #共享路径
writeable = yes #共享文件夹是否可写
browseable = yes #是否可浏览
guest ok = yes #跟public一样,是否允许guest用户
create mode =0664 #创建文件权限定制
directory mode=0775 #创建文件夹权限
valid users=允许访问该共享的用户
invalid usrs=禁止访问的用户,root,@group,@表示组
admin users=该共享的管理者
write list=有写权限的用户
display charset=UTF-8
unix charset=UTF-8
dos charset=UTF-8 #这三个是避免乱码的,dispaly是显示目录时的编码,另外两个跟名字对应。若dos下为zh_CN.GB2312.GBK。则3个全部设为cp936
4.2 配置文件中的详细解释
4.2.1 samba的安全级别
Linux下samba有四种安全级别,即Share、User、Server、Domain,它们的安全级别由低到高,在配置文件中具体由security参数指定。其中,Share级是指用户不需要账户和口令即可登录服务器;User级是Samba服务器默认的安全级别,是指服务器负责检查登陆者的账户和口令;Server级是指账户和口令的检查由另外的Samba或Windows服务器负责;Domain级是指由一台Windows NT/2000域服务器负责检查账户和口令。用户在配置Samba服务器时,可以根据所需要的不同安全等级来具体配置
4.2.2 samba的密码存放方式
passdb backend = tdbsam | passdb | smbpasswd
backend即用户后台。有三种后台:smbpasswd、tdbsam和ldapsam。Sam即security account manager。
(1).smbpasswd:该方式是使用smb工具smbpasswd给系统用户(真实用户或者虚拟用户)设置一个Samba 密码,客户端就用此密码访问Samba资源。也就是说用这种方法创建的永和可以是虚拟的,也就是Linux系统中不存在该用户也可以。smbpasswd存放在/etc/samba中,有时需要手工创建该文件。
(2).tdbsam:使用数据库文件创建用户数据库。数据库文件叫passdb.tdb,在/etc/samba中。passdb.tdb用户数据库可使用smbpasswd –a创建Samba用户,要创建的Samba用户必须先是系统用户。也可使用pdbedit创建Samba账户。pdbedit参数很多,列出几个主要的:
pdbedit –a username:新建Samba账户,必须先存在该系统用户
pdbedit –x username:删除Samba账户。
pdbedit –L:列出Samba用户列表,读取passdb.tdb数据库文件。
pdbedit –Lv:列出Samba用户列表详细信息。
pdbedit –c “[D]” –u username:暂停该Samba用户账号。
pdbedit –c “[]” –u username:恢复该Samba用户账号。
一般叫常用的用法是:
$useradd user1
$smbpasswd -a user1 #这里可以改为pdbedit -a user1
$输入user1的共享密码
$确认user1的共享密码
(3).ldapsam:基于LDAP账户管理方式验证用户。首先要建立LDAP服务,设置“passdb backend = ldapsam:ldap://LDAP Server”这个我也不太清楚,就不说了。
4.3.用户映射
由于我们在创建samba用户时必须和系统用户同名,这就意味着不安全(当然某些人很乐意看到这样),但是,samba已经解决了这个问题,提供了用户映射,这个文件在/etc/samba/smbusers,
root=administrator
nobody=guest pcguest
test=prefer you
这样就Ok了,钱两行是为了方便windows用户使用,最后一行则是遮盖用户信息,也就是为了安全。
4.4. 常用的共享
[homes]共享默认会将用户的主目录共享,这是不安全的,所以我们要将其注释,当然还有[netlogon]
五、常见问题
5.1.提示没有权限访问
前提是我们将security=share,即不要求账号密码,这样还是不能访问,总是说没有权限访问。这有以下几种原因:
5.1.1 防火墙的问题
samba使用的端口在防火墙里没有添加例外,导致samba服务不能够使用,解决方法可以是
$iptables -F #清除防火墙的规则
也可以通过setup,将samba使用的端口添加例外,最好用第二中方法,毕竟防火墙还要保证系统的安全。
(2)seLinux的问题
这是系统本身的原因,我们安装系统的时候安装了selinux,而selinux禁止网络上其他计算机对samba上的共享目录进行写操作,即使在smb.conf中允许了这项操作,解决方法是:
$setenforce 0
我在这上面可吃了不少苦头。
(3)共享文件夹权限的问题
我们共享的路径本身权限不正确,就是说我们在smb.conf分配的权限是可读可写,但是在Linux文件系统下,该共享文件夹却是只读的,所以就出现了问题,我们一般讲共享的文件夹在Linux下降权限全部开放。
$chmod 777 /share
5.2.提示用户名或则密码不正确
当我们将安全级别为user时,就需要输入用户名和密码,但是用户名密码都是正确的,但是总是提示错误。这是因为我们在windos下输入用户名时,默认是在windows域中,二我们的账户是在Linux建立的,所以是不对的,只要将我们Linux主机的域名加载前面就行了。比如Linux下面的user2,我们直接输入user2可能就不对,我们必须将我们Linux主机的名字加在前面,如
hostname/user2
5.3.NT_STATUS_WRONG_PASSWORD
当我们在Linux使用
$smbclient //192.168.102.133/share
Enter root's password:此处回车
Domain=[groupname] os=[Unix] Server=[Samba 3.5.10-125.el6]
Server not using user level security and no password supplied
tree connect failed:NT_STATUS_WRONG_PASSWORD
下面是配置文件
[share]
comment= user share
path = /home/share
browseable = yes
writable = yes
security = yes
应该不会出错的,但是就是报错啊,后来才知道,少了一行
public =yes
因为,samba默认是不允许匿名用户访问的
5.4.挂载windows共享文件夹,smbmount不存在,smbfs无效的选项
这里简单的提一下,我们可以再一挂载windows下的共享文件夹,做法是先在windows下右击文件夹,选择共享选项,然后共享给特定用户。到Linux下
$ smbmount //windowsIP地址/共享名 挂载点 -o 选项1,选项2
但是提示smbmount不存在,yum也找不到,其实smbmount这个包太老了,已经淘汰了,所以肯定找不到的,及时找到了也不能用。可以用mount代替,
smbmount == mount -t smbfs ???
其实,这也是不等的,因为smbfs也淘汰了,现在时代进步太快了,呵呵,smbfs即smb file system 已经由cifs(common internet file system)代替了,所以我们要用mount -t cifs代替。
最后命令式:
mount -t cifs -o username=xxx password=xxx //windowsIP地址/共享名 /mnt/挂载点
A thousand journey is started by taking the first step.
分类: Linux
好文要顶 关注我 收藏该文
physique
关注 - 20
粉丝 - 121
+加关注
0
0
« 上一篇: Python与其他语言时间戳
» 下一篇: Shell 环境中的输入输出重定向
posted @ 2017-11-27 23:28 physique 阅读(11148) 评论(0) 编辑 收藏
注册用户登录后才能发表评论,请 登录 或 注册, 访问 网站首页。
相关博文:
· Linux下samba的安装与配置
· linux samba
· Samba
· 服务管理之samba
· Linux下Samba详解及安装配置
昵称: physique
园龄: 1年9个月
粉丝: 121
关注: 20
|
|||||||||
日 | 一 | 二 | 三 | 四 | 五 | 六 | |||
---|---|---|---|---|---|---|---|---|---|
28 | 29 | 30 | 31 | 1 | 2 | 3 | |||
4 | 5 | 6 | 7 | 8 | 9 | 10 | |||
11 | 12 | 13 | 14 | 15 | 16 | 17 | |||
18 | 19 | 20 | 21 | 22 | 23 | 24 | |||
25 | 26 | 27 | 28 | 29 | 30 | 31 | |||
1 | 2 | 3 | 4 | 5 | 6 | 7 |
搜索
常用链接
随笔分类
- Ant(2)
- C/C++(7)
- Code_Ide(18)
- Code_Manger(5)
- DOS(2)
- Java(4)
- JavaScript(6)
- Linux(26)
- Linux_Base(6)
- Linux_Service(15)
- Linux_Shell(31)
- Mysql(10)
- Python_Base(39)
- Python_Data_Reptile(4)
- Python_Game(4)
- Python_Tools(2)
- Python_Web(3)
- Ruby(1)
- 技术哲文鉴赏(5)
- 科技前沿(6)
- 生活(3)
- 系统管理(3)
- 云计算&虚拟化(3)
随笔档案
- 2019年7月(1)
- 2019年6月(1)
- 2019年5月(8)
- 2019年4月(2)
- 2019年3月(3)
- 2019年2月(2)
- 2019年1月(4)
- 2018年12月(6)
- 2018年11月(3)
- 2018年10月(9)
- 2018年9月(7)
- 2018年8月(9)
- 2018年7月(7)
- 2018年6月(6)
- 2018年5月(6)
- 2018年4月(19)
- 2018年3月(11)
- 2018年2月(5)
- 2018年1月(18)
- 2017年12月(35)
- 2017年11月(41)
相册
最新评论
- 1. Re:自学前端学习路线图
- 进群送一套前端教程】618522268专注于Web前端、HTML5技术学习交流
- --悟空前端
- 2. Re:笔记软件:三强篇EverNote、Mybase、Surfulater
- 谢谢
- --杨帆-起杭
- 3. Re:自学前端学习路线图
- 你好,这些都失效了能再重发一下吗,都是从上到下按顺序列出来的:前端与移动开发基础视频JavaScript基础视频教程附上CSS梅兰商城项目实战移动web移动教程【web前端全套】链接HTML5+CSS...
- --Da1sy
- 4. Re:自学前端学习路线图
- vue呢???
- --小僧和前端
- 5. Re:linxu安装方式
- @ xslwm不一定非要虚拟机,物理机本来就可以直接装linux操作系统...
- --physique
阅读排行榜
- 1. 自学前端学习路线图(50420)
- 2. C/C++学习路线(27829)
- 3. MobaXterm使用(15013)
- 4. Linux下samba的安装与配置(11148)
- 5. python和shell对比(9156)
评论排行榜
- 1. 自学前端学习路线图(26)
- 2. python学习路线图(3)
- 3. linxu安装方式(2)
- 4. 笔记软件:三强篇EverNote、Mybase、Surfulater(1)
- 5. C/C++学习路线(1)
推荐排行榜
- 1. 自学前端学习路线图(27)
- 2. C/C++学习路线(8)
- 3. Java之Jenkins工具【转】(1)
- 4. linux之expr命令(1)
- 5. 看得懂的区块链,看不清的ICO人心【转】(1)
Powered by .NET Core 3.0 Preview 8 on Linux
Linux下samba的安装与配置相关推荐
- Linux下Nagios的安装与配置
Linux下Nagios的安装与配置 2017-03-23 17:40:20 来源: 点击:0 Nagios是企业普遍使用的最具影响力的网络信息监视系统之一,它可以动态监视指定的网络状态 ...
- linux下jdk的安装与配置jdk-6u45-linux-i586.bin
linux下jdk的安装与配置 一.安装JDK从sun网站上直接下载JDK:http://download.oracle.com/otn-pub/java/jdk/6u45-b06/jdk-6u45- ...
- linux 安装cvs,linux下cvs详细安装和配置.docx
Linux 下cvs详细安装和配置 2009-03-18 14:37:12 标签:[推送到技术圈] 版权声明:原创作品,允许转载,转载时请务必以超链接形式标明文章原始岀处 作者信息和本声明.否则将追究 ...
- linux mrtg 安装,17.1.2 Linux下MRTG的安装与配置
17.1.2 Linux下MRTG的安装与配置 MRTG通过SNMP从设备中得到使用设备(如交换机)的网络流量信息,并把PNG格式图形以HTML方式显示出来,便于网络管理员对所监控设备(交换机)进行 ...
- Linux下Tomcat的安装与配置
本篇文章主要对如何在Linux下安装与配置Tomcat进行介绍. 如果想要了解Windows下Tomcat的安装与配置,请参考文章: https://blog.csdn.net ...
- Linux下EPICS的安装与配置——CSS安装与配置
本文继"Linux系统下EPICS的安装与配置"文章后,给出了客户端CSS新版本Phoebus的安装与配置. Phoebus是一个框架和一系列工具,用于监视和操作大型控制系统,例如 ...
- linux下Mysql 的安装、配置、数据导入导出
为什么80%的码农都做不了架构师?>>> <p><span>MySQL</span><span>是一种</span> ...
- CentOS7下Samba的安装与配置
一.Samba简介 Samba是在Linux和UNIX系统上实现SMB协议的一个免费软件,由服务器及客户端程序构成.SMB(Server Messages Block,信息服务块)是一种在局域网上共享 ...
- linux下postgresql服务,Linux下PostgreSQL数据库安装、配置与日常服务管理
1. 数据库安装与配置步骤 安装环境准备 操作系统: Oracle Linux Server 6.5 IP 地址: 192.168.6.177 版本信息: MySQL Community Server ...
最新文章
- 高并发系统设计的 2 个要点,一定要看!
- 图像锐化算法(Image sharpening):拉普拉斯增强和Unsharp Masking(附代码)
- thinkphp3 php jwt,thinkphp框架使用JWTtoken的方法详解
- 解决设置了display:none的元素,会先展示再隐藏
- Git 存在多个漏洞,开发人员应及时更新
- 如何让应用程序托盘化
- 21计算机考研上岸经验分享(一战成硕,普通双非逆袭顶级211)
- 凸优化第六章逼近与拟合 6.2最小范数问题
- mysql安装包如何使用_关于MySQL安装包如何使用的详细介绍
- Android 7.1 32位apk导致的系统库找不到问题
- 初用vue遇到的一些问题
- [4G/5G/6G专题基础-157]: 无线数据承载DRB与无线信令承载SRB
- openjudge 4978 宠物小精灵之收服
- 【基础算法训练】—— 栈
- vue配置开发、测试、生产环境(proxy中获取process.env.NODE_ENV)
- 学上位机迎来最好的时代
- vivonex3s和vivvo x50pro+哪个好
- 微信多图上传,解决android多图上传失败问题
- 管理信息系统期末复习资料
- java中判断是不是数字
热门文章
- android照片涂抹功能,android:照片涂画功能实现过程及原理详解
- Python零基础详解--商品详情、关键词搜索api
- 【DPDK】dpdk样例源码解析之二:dpdk-helloworld
- 适合创业起步看的书推荐
- JavaDoc文档生成
- NoSuchBeanDefinitionException: No bean named 'tDubboServiceImpl' is defined 的解决办法
- java 根据excel模板格式导出指定格式的excel
- 【通讯术语】VoLTE
- oracle如何写不等于号,Oracle中不等于号问题-Oracle
- 微信小程序 java校园二手物品交易系统uniapp