samba基本应用24-4及示例
samba
smb:service message block(137/udp, 138/udp, 139/tcp, 445/tcp)
协议是:CIFS:Common Internet File System
CIFS监听的端口:
137/udp, 138/udp
这两个端口实现NetBIOS:Windows基于主机实现互相通信的机制;
想在Linux上实现CIFS协议,又能通过CIFS协议和Windows主机进行交互,前提是在samba中或Linux上既要实现
CIFS还要实现NetBIOS的功能。否可windows网上另据无法看到Linux,依然无法访问。
139/tcp, 445/tcp
跨平台工作文件系统:samba
samba可以实现3中服务应用:samba默认之启动前两个功能
nmbd:NetBIOS 在Linux中提供netbios协议
smbd:cifs 实现cifs或smb协议
winbindd: 实现在samba工作后,让Linux加入Windows的ad中去(即活动目录中去,如果Windows没有创建活动域,这项则不启动)
linux是客户端,windows是服务器端:
基于交互式数据访问
1、在windows上创建test用户,并创建文件,更改文件设置交互式数据访问:
2、UNC路径:\\SERVER\shared_name
#smbclient -L HOST -U USERNAME
#smbclient -L 192.168.108.135 -U test
3、获取共享信息之后:
smbclient //SERVER/shared_name -U USERNAME
# smbclient //192.168.108.135/tools -U test
基于挂载方式访问:
mount -t cifs //SERVER/shared_name /mount -o point username=USERNAME,password=PASSWORD
# mount -t cifs //192.168.108.135/tools /mnt -o username=test
smbclient //192.168.18.5/scan -U administrator:访问服务端共享文件夹。help查看使用命令。
客户端挂载Windows服务端共享目录:
mount -t cifs //192.168.108.135/scan /mnt -o username=administrator,password=123456
windows是客户端,Linux是服务器端
#yum -y install samba:安装服务端工具
#yum install samba-client:客户端工具
#rpm -ql samba | less
服务脚本:
/etc/rc.d/init.d/nmb
/etc/rc.d/init.d/smb
主配置文件
/etc/samba/smb.conf
启动文件 //两个守护进程
/usr/sbin/nmbd //在Linux中提供netbios协议
/usr/sbin/smbd //实现cifs或smb协议
samba如何认证用户:先创建系统用户账号,然后把用户加入到samba密码文件中来
账号:都为系统用户 /etc/passwd
密码:为samba自行维护密码
将系统用户添加为samba用户的命令:sambapasswd
启动服务:
# service nmb start; service smb start
#service nmb start
#service smb start
# netstat -tunl //查看端口
确定(137/udp, 138/udp, 139/tcp, 445/tcp)端口已处于监听状态
编辑(/etc/samba/smb.conf)主配置文件中的工作组
workgroup = WORKGROUP
重启服务:service smb restart && service nmb restart
添加系统用户为smb用户:smbpasswd -a xj
-a Sys_User:添加系统用户为smb用户
-d: 禁用指定用户
-e:启用指定用户
-x:删除用户
#useradd smbuser1 //添加系统账号
#smbpasswd -a smbuser1 //把系统账号添加samba用户加密码,输入两边密码
以上只能访问自己的家目录,自定义共享,编辑主配置文件
smb.conf
全局设定:所有文件系统所共用的系统设定
特定共享的设定
私有家目录家目录
打印机共享
自定义共享
自定义共享
[file]:共享文件名 [shared_name]
path =/opt/file:共享文件夹 path = /path/to/share_directory
comment = :说明信息
guest ok = {yes|no}:是否匿名访问
public = {yes|no}:是否公开
writable = {yes|no}:写权限
read only = {yes|no}:只读
write list = +GROUP_NAME:指定可访问用户或组
comment = All Printers
path = /var/spool/samba
browseable = no
guest ok = no
writable = no
printable = yes
测试配置文件是否有语法错误,以及显示最终生效的配置:
# testparm
注意:共享目录时确定登录用户对该目录有相应权限,如果没有用setfacl设定,不要修改原有属主和属组。
图形化配置(注:图形化修改后会修改之前的一切信息,需要谨慎)
# yum install samba-swat
# cd /etc/xinetd.d/
# service xinetd start
#ss -tnl //查看是否监听了901端口
http://192.168.108.160:901 //在浏览器中输入即可
示例:
建立samba共享,共享目录为/data,要求:
1) 共享名为shared,工作组为xiaoheshang;
2) 添加组develop,添加用户gentoo,centos和ubuntu,其中gentoo和centos以develop为附加组,ubuntu不属于develop组;密码均为123456;
3) 添加samba用户gentoo,centos和ubuntu,密码均为123456;
4) 此samba共享的shared仅允许develop组具有写权限,其他用户只能以只读方式访问;
5) 此samba共享服务仅允许来自192.168.0.0/24网络的主机访问;
samba服务器为192.168.1108.160,测试主机为192.168.108.128 , 192.168.108.129
1、创建共享目录
# mkdir /data
2、添加组和用户
# groupadd develop
# useradd -G develop gentoo
# useradd -G centos develop
# useradd ubuntu
3、添加密码
# echo 123456 | passwd --stdin gentoo
# echo 123456 | passwd --stdin centos
# echo 123456 | passwd --stdin ubuntu
4、把系统用户添加为samba用户,并添加samba密码
# smbpasswd -a gentoo
# smbpasswd -a centos
# smbpasswd -a ubuntu
5、设置共享目录权限
# setfacl -m g:develop:rwx /data
# setfacl -m u:ubuntu:rwx /data
# getfacl /data
6、 编辑配置文件/etc/samba/smb.conf;
设置工作组和访问权限
自定义共享
检测文件语法错误
#testparm
7、启动samba服务
# service nmb start; service smb start
# netstat -tuanp | grep '[s|n]mb' //查看启动端口
samba基本应用24-4及示例的更多相关文章
- JavaEE Tutorials (24) - 资源适配器示例
24.1trading示例369 24.1.1使用出站资源适配器370 24.1.2实现出站资源适配器372 24.1.3运行trading示例37324.2traffic示例374 24.2.1使用 ...
- 【网络流24题】 No.22~24
接下来几题就写写题解吧.不是很想打了. 22. 输入文件示例input.txt4 21 2 7 36 5 8 37 8 10 59 6 13 9 输出文件示例output.txt17 最长不相交路径. ...
- Excel VBA Range对象基本操作应用示例
[示例01] 赋值给某单元格[示例01-01] Sub test1()Worksheets("Sheet1").Range("A5").Value = 22Ms ...
- JSTL标签 参考手册
前言 ========================================================================= JSTL标签库,是日常开发经常使用的,也是众多 ...
- 深入理解SQL注入绕过WAF和过滤机制
知己知彼,百战不殆 --孙子兵法 [目录] 0x0 前言 0x1 WAF的常见特征 0x2 绕过WAF的方法 0x3 SQLi Filter的实现及Evasion 0x4 延伸及测试向量示例 0x5 ...
- jsp页面中jstl标签详解
JSLT标签库,是日常开发经常使用的,也是众多标签中性能最好的.把常用的内容,放在这里备份一份,随用随查.尽量做到不用查,就可以随手就可以写出来.这算是Java程序员的基本功吧,一定要扎实. JSTL ...
- jsp 页面标签 积累
http://www.cnblogs.com/xiadongqing/p/5232592.html <%@ taglib %>引入标签库 ========================= ...
- Python 装饰器学习
Python装饰器学习(九步入门) 这是在Python学习小组上介绍的内容,现学现卖.多练习是好的学习方式. 第一步:最简单的函数,准备附加额外功能 1 2 3 4 5 6 7 8 # -*- c ...
- 深入了解SQL注入绕过waf和过滤机制
知己知彼百战不殆 --孙子兵法 [目录] 0x00 前言 0x01 WAF的常见特征 0x02 绕过WAF的方法 0x03 SQLi Filter的实现及Evasion 0x04 延伸及测试向量示例 ...
- 『Golang』跨平台TUI(基于文字的用户界面)库Terbox-Go文档翻译
原文 package termbox import "github.com/nsf/termbox-go" termbox-go 是一个用于创建跨平台TUI(基于文本的用户界面)的 ...
随机推荐
- 十天精通CSS3(5)
background-origin 设置元素背景图片的原始起始位置. 语法: background-origin : border-box | padding-box | content-box; 参 ...
- (转)Linux Oracle服务启动&停止脚本与开机自启动
在CentOS 6.3下安装完Oracle 10g R2,重开机之后,你会发现Oracle没有自行启动,这是正常的,因为在Linux下安装Oracle的确不会自行启动,必须要自行设定相关参数,首先先介 ...
- Andrew Ng-ML-第十章-应用机器学习的建议
1.如何改进性能不好的学习算法 图1.运用到测试集上效果不佳 当进行一个正则化线性回归时,最小化了代价函数得到参数,但是运用到新的测试集上,发现效果不好,那么如何改进? 1).增加训练集.但是实际上花 ...
- JS的二维数组
今天,记录一下JS的二位数组,并附上例题. 一.二维数组的本质:数组中的元素又是数组. 其实,我们都见过这样的二维数组,只不过没在意罢了,例如: var arr = [[1,2,4,6],[2,4,7 ...
- python安装HTMLTestRunner
== https://pypi.org/project/html-testRunner/#files 下载 放在这路径下 cmd中进行安装
- SQL Expression Language Tutorial 学习笔记一
http://docs.sqlalchemy.org/en/latest/core/tutorial.html Google 翻译了一下 SQLAlchemy Expression Language, ...
- 如何在SQL Server查询语句(Select)中检索存储过程(Store Procedure)的结果集?
如何在SQL Server查询语句(Select)中检索存储过程(Store Procedure)的结果集?(2006-12-14 09:25:36) 与这个问题具有相同性质的其他描述还包括:如何 ...
- json 的相互 转换
using System.Runtime.Serialization.Json; //json 转化为List集合 public List<T> JSONStringToList<T ...
- 浅谈为什么一个java源文件中只能有一个public类?
声明,本篇文章为转载 转载 http://blog.csdn.net/bareheadzzq/article/details/6562211 最近在一个java文件中实现了几个类,其中一个声明为pub ...
- Linux服务器---ssh登录
Ssh登录 Ssh是建立在应用层和传输层的安全协议,专门为远程登录回话和其他网络服务提供安全性.利用ssh可以有效的防止远程管理中的信息泄露问题,同时ssh传输的数据是经过压缩的,可以加快传输 ...