smb2协议.docx

上传人:b****9 文档编号:25378311 上传时间:2023-06-07 格式:DOCX 页数:10 大小:19.89KB
下载 相关 举报
smb2协议.docx_第1页
第1页 / 共10页
smb2协议.docx_第2页
第2页 / 共10页
smb2协议.docx_第3页
第3页 / 共10页
smb2协议.docx_第4页
第4页 / 共10页
smb2协议.docx_第5页
第5页 / 共10页
点击查看更多>>
下载资源
资源描述

smb2协议.docx

《smb2协议.docx》由会员分享,可在线阅读,更多相关《smb2协议.docx(10页珍藏版)》请在冰豆网上搜索。

smb2协议.docx

smb2协议

竭诚为您提供优质文档/双击可除

smb2协议

  篇一:

ciFs协议

  cifs

  ciFs(commoninternetFilesystem)

  通用internet文件系统

  在windows主机之间进行网络文件共享是通过使用微软公司自己的ciFs服务实现的。

ciFs是一个新提出的协议,它使程序可以访问远程internet计算机上的文件并要求此计算机的服务。

ciFs使用客户/服务器模式。

客户程序请求远在服务器上的服务器程序为它提供服务。

服务器获得请求并返回响应。

ciFs是公共的或开放的smb协议版本,并由microsoft使用。

smb协议现在是局域网上用于服务器文件访问和打印的协议。

象smb协议一样,ciFs在高层运行,而不象tcp/ip协议那样运行在底层。

ciFs可以看做是应用程序协议如文件传输协议和超文本传输协议的一个实现。

  ciFs可以使您达到以下功能:

  1.访问服务器本地文件并读写这些文件

  2.与其它用户一起共享一些文件块

  3.在断线时自动恢复与网络的连接

  4.使用西欧字符文件名

  一般来说,ciFs使用户得到比Ftp更好的对文件的控制。

它提供潜在的更直接地服务器程序接口,这比使用http协议的浏览器更好。

ciFs最典型的应用是windows用户能够从“网上邻居”中找到网络中的其他主机并访问其中的共享文件夹.

  ciFs是开放的标准而且已经被作为internet应用程序标准被提交到ietF。

  篇二:

smbclient用法

  smbclient用法:

  参数:

  [网络资源][网络资源]的格式为//服务器名称/资源分享名称。

  [密码]输入存取网络资源所需的密码。

  -b传送广播数据包时所用的ip地址。

  -d指定记录文件所记载事件的详细程度。

  -e将信息送到标准错误输出设备。

  -h显示帮助。

  -i设置netbios名称范围。

  -i指定服务器的ip地址。

  -l指定记录文件的名称。

  -l显示服务器端所分享出来的所有资源。

  -m可利用winpopup协议,将信息送给选项中所指定的主机。

-n指定用户端所要使用的netbios名称。

  -n不用询问密码。

  -o设置用户端tcp连接槽的选项。

  -p指定服务器端tcp连接端口编号。

  -R设置netbios名称解析的顺序。

  -s指定smb.conf所在的目录。

  -t设置用何种字符码来解析服务器端的文件名称。

  -t备份服务器端分享的全部文件,并打包成tar格式的文件。

-u指定用户名称。

  -w指定工作群组名称。

  smbclient//192.168.0.100/share-uadministrator回车后,会提示输入admin的密码.之后就可以通过get获取了192.168.0.100是我在windows主机的ip,share为共享名,-u后面是用户名

  命令说明

  或help[command]提供关于帮助或某个命令的帮助

  !

[shellcommand]执行所用的shell命令,或让用户进入shell提示符cd[目录]切换到服务器端的指定目录,如未指定,则smbclient返回当前本地目录lcd[目录]切换到客户端指定的目录;

  dir或ls列出当前目录下的文件;

  exit或quit退出smbclient

  getfile1file2从服务器上下载file1,并以文件名file2存在本地机上;如果不想改名,可以把file2省略

  mgetfile1file2file3filen从服务器上下载多个文件;

  md或mkdir目录在服务器上创建目录

  rd或rmdir目录删除服务器上的目录

  putfile1[file2]向服务器上传一个文件file1,传到服务器上改名为file2;

  mputfile1file2filen向服务器上传多个文件

  若windows中有一个共享文件夹share,windows用作服务器

  要设置可以写的权限.

  一):

与windows服务器建立连接收集谢绝转载.

  smbclient//192.168.0.100/share-uadministrator

  回车后,会提示输入admin的密码.

  通过密码验证之后,

  会出现:

  smb:

\>

  这样子状态等待输入.

  1.1列出文件状态

  smb:

\>ls

  通过ls就可以看出当前所有文件状态

  1.2从windows中取得文件

  若有文件bbb.log

  则输入:

  smb:

\>getbbb.log

  1.3若要所linux中的文件传输到windows之中

  则文件在根目录下文件名:

linuxso.log

  则输入:

  smb:

\.>put/linuxso.loglinuxso.log

  常用功能:

资料由收集

  1,列出某个ip地址所提供的共享文件夹

  smbclient-l198.168.0.1-uusername%password

  2,像Ftp客户端一样使用smbclient

  smbclient//192.168.0.1/tmp-uusername%password

  执行smbclient命令成功后,进入smbclient环境,出现提示符:

smb:

\>

  这里有许多命令和ftp命令相似,如cd、lcd、get、megt、put、mput等。

通过这些命令,我们可以访问远程主机的共享资源。

  3,直接一次性使用smbclient命令

  smbclient-c"ls"//192.168.0.1/tmp-uusername%password

  和

  smbclient//192.168.0.1/tmp-uusername%password

  smb:

\>ls

  功能一样的

  例,创建一个共享文件夹

  smbclient-c"mkdirshare1"//192.168.0.1/tmp-uusername%password

  如果用户共享//192.168.0.1/tmp的方式是只读的,会提示

  nt_status_access_deniedmakingremotedirectory\share1

  推荐阅读一:

linux系统上使用smbclient访问windows共享资源

  在linux下,可以通过smbclient命令来实现相似的功能,访问windows的某个共享目录。

  使用平台:

  Redhatenterpriselinuxasrelease  

4

  ip:

192.168.1.197

  windowsxpprofessionalsp2

  ip:

192.168.1.198

  windows下的共享文件夹hello里面有个1.txt的文本文件

  前提条件:

  1、windows和linux共处于同一个局域网中,可以互相ping通,都未设置防火墙

  2、linux上安装有samba-client的Rpm包,它是samba客户端工具

  在linux下输入

  #smbclient-l192.168.1.198-uadministrator

  password:

(输入windows系统所需要的密码)

  列举出windows系统192.168.1.198上的所有共享目录

  #smbclient//192.168.1.198/hello-uadministrator

  password:

(输入windows系统所需要的密码)

  访问hello目录

  #ls列举出hello目录下的所有文件

  #get1.txt/opt/share/1.txt

  将得到的文件复制到linux系统的/opt/share/路径下。

  将所有的文件获取完成后

  #q退出。

  下面是Rhce考试题目中一道关于samba配置的题目

  通过配置smb共享/common目录:

  1)必须是staFF工作组的一员

  2)共享名是common

  3)common只对可用

  4)用户harry可在域内访问

  5)用户harry的password为123abc

  #yuminstallsamba*

  #chkconfigsambaon

  #servicesambastart

  #smbpasswd-aharry

  #setsebool-psamba_enable_home_dirson(要不是共享家目录的话就不会影响)

  #getsebool–l

  #chcon-tsamba_share_t/common

  #vim/etc/samba/smb.conf

  workgroup=staFF

  [common]

  comment=thisisatestsmb

  path=/common

  public=no

  writelist=harry

  browseable=yes

  篇三:

ppi协议

  西门子ppi协议分析:

  西门子s7-200plc之间或者plc与pc之间通信有很多种方式:

自由口,ppi方式,mpi方式,profibus方式。

使用自由口方式进行编程时,在上位机和plc中都要编写数据通信程序。

使用ppi协议进行通信时,plc可以不用编程,而且可读写所有数据区,快捷方便。

但是西门子公司没有公布ppi协议的格式。

用户如果想使用ppi协议监控,必须购买其监控产品或第三方厂家的组态软件。

这样给用户自主开发带来一定困难,特别是自行开发的现场设备就不能通过ppi协议接入plc。

其它通讯方式编程也存在编程复杂,需要购买软件和授权等局限性

(1)。

通过数据监视、分析的方法,我们找出了ppi协议的关键报文格式,可用于上位机、现场设备与s7-200cpu之间通讯。

  pc与plc采用主从方式通讯,pc按如下的格式发读写指令,plc作出接收正确的响应(返回应答数据e5h或F9h见下文分析),上位机接到此响应则发出确认命令(10025c5e16),plc再返回给上位机相应数据。

  一般上位机要连接plc就要先发送如下数据10020xx94b16你可以理解为我们常用的对讲机通话模式:

00呼叫02,听到请回答10起始符02是之上位机要联系的下位级的地址站号00就是上位级本本身自己的站号49寻呼指令16终止符其中4b为校验码,是这样得来的:

02+00+49的最后两位就是校验码,这就是所说的偶校验或称和校验。

计算器在16进制计算时公式(02+00+49)mod100得出的数就是校验码,你计算一下是不是等于4b啊!

其他的所有ppi协议校验都是如此。

假如02站号的plc收到寻呼信号那么会回答:

100002000216意思是:

报告00,02收到,请指示这样的解释是不是有意思啊!

你有更好的解释吗?

  我们先来看看西门子老型号的plc的读密码指令:

  请用串口软件以16进制发送,端口设置9600;e;8;1

  发送:

681b1b68020xxc320xx0000000000e00000401120a100200080000030005e0d216意思:

要求传送系统存储区05e0位开始的8个字符。

  如果通讯无误,plc会返回e5,意思:

已经收到

  那么这时上位机再次发送指令10020xxc5e16意思:

请执行命令。

那么这时plc就真的执行命令了返回如下字符:

681d1d680002083203000000000002000c00000401FF0400409b9802069d9a00767d16

  好了,说到这里就此停止,大家看看密码是多少啊!

你多做实验一定能得出结果的。

  cnplc中鲜为人知的二次加密:

  上面是plc所返回的密码,但是已经加密了,你如果不懂解码,还是算不出密码来。

其实新版的plc不光cn一种,所有02版的plc在加密的时候都改动了密码,密码在传输的过程中进行了再加密!

这就是鲜为人知的二次加密!

看下面我做的通过串口监视截获的数据:

  我下载程序,当软件要求我输入下载密码的时候,我输入密码:

22222222,可是截获的竟然是一组这样的数据:

68212168020xxc3207000000190008000c0001120411450100FF0900086767000067670000Fe16

  提示:

6767000067670000其实就是我刚才输入的8个2的密码,在这里加密了。

  下面呢我公布一下二次加密的代码。

大家来算一下,这个数据是怎么得来的。

  密码代码:

无大小写区分

  0=651=642=673=664=615=606=637=628=6d9=6ca=14b=17c=16d=11e=10F=13g=12h=1di=1cj=1Fk=1el=19m=18n=1bo=1ap=05q=04R=07s=06t=01x=0dy=0cz=0F

  怎样读取plc的版本号:

  我们在解密中首先要确定的是plc的版本号。

就是要看看是老版本还是02版的,也好做出加解密方案。

他的通讯源码是这样的:

681b1b68020xxc320xx0000000000e00000401120a10020xx40000030000000916

  发送完上面数据plc返回e5.再次发送确认指令:

10020xxc5e16这时plc的版本号就返回来了。

看下面:

  6829296800020832030000000000020xx800000401FF0400a04350552032323620434e20202020202030323031d716

  你看这一段:

4350552032323620434e20202020202030323031就是plc版本号的ascii码。

用asc方式显示就会看的更明白上面数据是:

cpusp226spcn0201(sp就是空格)

  读取密码保护位(保护等级)指令

  681b1b68020xxc320xx0000000000e00000401120a100200010000030005d8c316

  全部清空plc指令:

  68212168020xxc3207000000240008000c0001120411450100FF0900081619060d0108181eee16

  读命令分析:

一次读一条数据

  sdleleRsddasaFcdaspssapduFcsed

  sdstartdelimiter)开始定界符(68h)

  le:

(length)报文数据长度

  leR:

(Repeatedlength)重复数据长度

  sd:

(startdelimiter)开始定界符(68h)

  sa:

(sourceaddress)目标地址,指该地址的值,就是plc的地址

  da:

(destinationaddress)本地地址,指该地址的指针,就是上位机自己的地址

  Fc:

(Functioncode)功能码,5ch为交替周期触发,6ch为首次信息周期触发,7ch为交替周期触发。

dsap:

(destinationserviceaccesspoint)目的服务存取点

  ssap:

(sourceserviceaccesspoint)源服务存取点

  du:

(dataunit)数据单元

  Fcs:

(Framechecksequence)校验码

  ed:

(enddelimiter)结束分界符(16h)

  报文数据长度和重复数据长度为自da至du的数据长度,校验码为da至du数据的和校验,只取其中的末字节值关于这个校验码的计算方法同上面说明。

  在读写plc的变量数据中,读数据的功能码为6ch,写数据的功能码为7ch。

  对于一次读取一个数据,读命令都是33个字节。

前面的0—21字节是相同的,为0

  1

  2

  3

  4

  5

  6

  7

  8

  9

  10

  11

  12

  13

  14

  15

  16

  17

  18

  19

  20

  21

  sd

  le

  leR

  sd

  da

  sa

  Fc

  开始符

  长度

  长度

  开始符

  站号

  源地址

  功能码

  协议识别

  远程控制

  冗余识别

  冗余识别

  协议数据

  单元参考

  参数长度

  参数长度

  数据长度

  数据长度

  04读05写

  变量地址数

  68

  1b

  1b

  68

  02

  00

  6c

  32

  01

  00

  00

  00

  00

  00

  0e

  00

  00

  04

  01

  12

  0a

  10

  下面我们列表分析读取plc密码的指令:

681b1b68020xxc320xx0000000000e00000401120a100200080000030005e0d216

  22

  23

  24

  2526272829303132duFcsde

  读取长度

  数据个数

  存储器类型

  偏移量

符020*********

  

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 医学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1