Samba与nfs与ftp

Samba服务

samba是一个网络服务器,用于Linux和Windows之间共享文件。

samba端口号

samba (启动时会预设多个端口)

数据传输的TCP端口 139、445

进行NetBIOS名称解析之类工作的UDP端口就 137、138

Samba的功能:

① 分享档案与打印机服务;

② 可以提供用户登入 SAMBA 主机时的身份认证,以提供不同身份者的个别数据;

③ 可以进行 Windows 网络上的主机名解析 (NetBIOS name)

④ 可以进行装置的分享 (例如 Zip, CDROM...)

Samba工作原理:

Samba服务功能强大,这与通信是基于SMB协议有大的关系。SMB协议不仅能够提供目录和打印机共享,还支持认证和权限设置等功能。在早期,SMB运行于NBT协议(NetBIOS over TCP/IP)上,使用UDP协议的137、138及TCP协议的139端口,但随着后期开发,它可以直接运行于TCP/IP协议上,没有额外的NBT层,使用TCP协议的445端口。

通过Samba服务,Windows用户可以通过【网上邻居】窗口查看到Linux服务器中共享的资源,同时Linux用户也能够查看到服务器上的共享资源。Samba服务的具体工作过程如图:

协议协商

客户端在访问Samba服务器时,首先由客户端发送一个SMB negprot请求数据报,并列出它所支持的所有SMB协议版本。服务器在接收到请求信息后开始响应请求,并列出希望使用的协议版本。如果没有可使用的协议版本则返回oXFFFFH信息,结束通信。

建立连接

当SMB协议版本确定后,客户端进程向服务器发起一个用户或共享的认证,这个过程是通过发送SesssetupX请求数据报实现的。客户端发送一对用户名和密码或一个简单密码到服务器,然后服务器通过发送一个SesssetupX请应答数据报来允许或拒绝本次连接。

访问共享资源

当客户端和服务器完成了协商和认证之后,它会发送一个Tcon或SMB TconX数据报并列出它想访问网络资源的名称,之后服务器会发送一个SMB TconX应答数据报以表示此次连接是否被接受或拒绝。

断开连接

连接到相应资源,SMB客户端能够open SMB打开一个文件,通过read SMB读取文件,通过write SMB写入文件,通过close SMB关闭文件。

配置文件详解参考教案。

FTP服务

FTP (File transfer protocol) 是传输协议之一,他最主要的功能是在服务器与客户端之间进行档案的传输。

vsftpd软件包:“very secure”的FTP服务器软件

ftp端口号

主动模式:消息端口21,数据端口20

被动模式:消息端口21,数据端口随机

ftp的工作原理

建立连接:

客户端发送连接请求,同时打开一个大于 1024 的端口,比如 1031 端口,若 FTP 服务器侦听到该请求,则会在 1031 端口和 FTP 的 21 端口之间建立起一个 FTP 会话连接。

传输数据:

当需要传输数据时,客户端再动态的打开一个大于 1024 的端口连接到 FTP 得 20 端口,并在这个两个端口之间进行数据传输。

FTP 协议中,控制连接均有客户端发起,而数据连接有两种工作方式:

PORT 主动方式和PASV 被动方式

主动

client              server

1024+ ---------------> 21

1024+N <-------------- 20

客户端使用1024 以上的端口连接服务器的21 号端口,并且会事先开启一个1024+N 的端口准备让服务器来连接,服务器得知客户端准备的端口后,用20 号端口与客户端连接,创建数据链路时server 端处于主动去连接客户端的状态固称为主动传输模式

被动

client               server

1024+ ---------------> 21 1024+M

1024+ <--------------

1024+N --------------->1024+M

客户端使用1024 以上的端口连接服务器的21 号端口,服务器接到连接请求后,开启一个1024+M 的端口等待客户端来连接,再通知客户端这个等待连接的端口号是1024+M,客户端接到服务器端的信息后,开启新的一个1024+N 的端口与1024+M 进行连接,创建数据连接时,server 端处于被客户端连接的状态,固称为被动传输模式.

vsftp 默认是根据客户端不同而使用不同模式,windows 客户端则使用主动,linux 客户端则使用被动

可以用 pasv_enable=NO 来强制使用主动

NFS服务

NFS即网络文件系统(NetWork File System),是使不同的计算机之间能通过网络进行文件和目录共享的一种网络协议,多用于类UNIX系统中的网络中。

windows网络共享服务或samba服务用于办公居于网共享,而护粮网中小型网站集群架构后端常用NFS进行数据共享,如果是大型网站,那么有可能还会用到更复杂的分布式文件系统(mfs,GlusterFS,FastDFS)。

RPC服务(使用的是固定端口111)最主要的功能就是记录每个NFS功能所对应的端口号,并且在NFS客户端请求时将该端口和功能对应的信息传递给请求数据的NFS客户端,从而确保客户端可以链接到正确的NFS端口上去,达到实现数据传输交互数据目的。

NFS端口号

NFS的功能所对应的端口无法固定,它会随机取用一些未被使用的端口来作为传输只用。

一般nfs为udp 2049和其他挂载端口等,rpc为111端口。

NFS 服务配置过程中,其中 mountd, statd 和 lockd 进程可以使用固定端口号。

修改 /etc/sysconfig/nfs 文件

MOUNTD_PORT="4002"

STATD_PORT="4003"

LOCKD_TCPPORT="4004"

LOCKD_UDPPORT="4004"

NFS的工作原理

当访问程序通过NFS客户端向NFS服务器端存取文件时,其请求数据流程大致如下:

1)首先用户访问网站程序,由程序在NFS客户端上发出存取NFS文件的请求,这时NFS客户端(即执行程序的服务器)的RPC服务(rpcbind 服务)就会通过网络向NFS服务器端的RPC服务(rpcbind 服务)的111端口发出NFS文件存取功能的询问请求。

2)NFS服务器端的RPC服务(rpcbind服务)找到对应的已注册的NFS端口后,通知NFS客户端的RPC服务(rpcbind 服务)。

3)此时NFS客户端获取到正确的端口,并与NFS daemon联机存取数据。

4)NFS客户端把数据存取成功后,返回给前端访问程序,告知用户存取结果,作为网站用户,就完成了一次存取操作。

因为NFS的各项功能都需要向RPC服务( rpcbind服务)注册,所以只有RPC服务才能获取到NFS服务的各项功能对应的端口号(portnumber)、PID、NFS在主机所监听的IP等信息,而NFS客户端也只能通过向RPC服务询问才能找到正确的端口。也就是说,NFS需要有RPC服务的协助才能成功对外提供服务。从上面的描述,我们不难推断,无论是NFS客户端还是NFS服务器端,当要使用NFS时,都需要首先启动RPC服务,NFS服务必须在RPC服务启动之后启动,客户端无需启动NFS服务,但需要启动RPC服务。

原文地址:https://www.cnblogs.com/lhj2/p/11178401.html

时间: 2024-10-08 20:27:38

Samba与nfs与ftp的相关文章

第12章 使用Samba或NFS实现文件共享

章节简述: 本章节为读者讲述文件共享系统的作用,了解Samba与NFS服务程序的开发背景以及用法. 详细逐条讲解Samba服务配置参数,演示安全共享文件的配置策方法,并使用autofs服务程序自动挂载设备, 学会后即可实现Linux系统之间或与Windows系统之间的文件共享,以及在共享文件时如何配置防火墙与SELinux策略规则. 本章目录结构 12.1 了解文件共享服务 12.2 Samba服务 12.2.1 安装服务程序 12.2.2 安全共享文件 12.3 NFS网络文件系统 12.4

[转载]SELinux 环境下网络服务设置,配置 Apache 、Samba、NFS

原文地址:http://www.ibm.com/developerworks/cn/linux/l-cn-selinux-services1/index.html?ca=drs- 引言 SELinux 的安全防护措施主要集中在各种网络服务的访问控制.对于像 Apache .Samba.NFS.vsftp .MySQL.Bind dns 等服务来说,SELinux 仅仅开放了最基本的运行需求.至于连接外部网络.运行脚本.访问用户目录.共享文件等,必须经过一定的 SELinux 策略调整才能充分发挥

Linux中Samba与NFS的共享示例

在这里面所有的服务器为CentOS 6.9,samba客户端和NFS客户端均为CentOS 7.2要完成以下操作需要安装的软件包:yum install httpd mariadb-server(CentOS6.9是mysql-server)nfs-utils samba php php-fpm php-mysql nginx安装完成即可进行操作:使用samba和NFS分别共享/data目录:首先使用NFS共享/data目录:创建共享目录:~]# mkdir /data在centos6中编辑文件

Samba和NFS的实现

MariaDB项目实践            (1) 使用samba和NFS分别共享/data目录:            (2) 让samba客户端和NFS客户端分别挂载samba服务器上共享的/data/至本地的/mydata目录:本地的mysqld或mariadb服务的数据目录设置为/mydata,要求服务能正常启动,且可正常存储数据: samba共享/data目录 (本机ip172.16.0.149) 编辑/etc/samba/smb.conf,写入配置段 [global]       

NFS、FTP、SAMBA服务搭建

一.NFS配置 NFS服务:即是共享存储,如有A.B.C三台服务器,那么文件存放在A上,B.C可通过NFS服务即可访问A共享的文件. 1.服务端安装过程 yum install -y nfs-utils vim /etc/exports 写入以下内容: /proc/ 14.120.0.0/24(rw,sync,all_squash,anonuid=501,anongid=501) ##rw:表示可读可写,若为ro表示只读 ##sync表示同步模式,内存中数据无时无刻写入磁盘:若为async表示非

日志管理与ftp。samba,nfs

1.描述rsyslog日志服务,并提供带web展示的日志服务器 rsyslog日志服务简介 ? 日志的概念好理解,日志作用可用于排障和追溯审计的等 ? 1.rsyslog是一个C/S架构的服务,可监听于某套接字,帮其它主机记录日志信息,在linux系统中可以分类两个日志: ? klogd:kernel,记录内核相关的日志 ? syslogd:service,记录应用程序的日志 rsyslog:是CentOS 6以后的系统使用的日志系统,与之前的syslog日志系统相比,具有以下优点: ? 支持多

samba,nfs

1 nfs Yum install nfs-utils   -y /etc/init.d/rpcbind   start /etc/init.d/nfs  start Showmout  -e Vi /etc/exports /mnt               192.168.0.0/24(ro) Exportfs  -rv Exportfs  -v Mount  192.168.0.250:/mnt   /mnt/ 2          cifs yum install samba   sa

&lt;实训|第五天&gt;通过搭建NFS,FTP实现共享文件附Vim脚本游戏

先说个事情:我周末是不更新这个系列教程的,不过其他内容的会更新,我周末就整理这一周的各种内容到我的微信公众号中,提供给大家! 期待已久的linux运维.oracle"培训班"终于开班了,小编从已经开始长期四个半月的linux运维.oracle培训,每天白天我会好好学习,晚上回来我会努力更新教程,包括今天学到了什么知识点,用了什么方法,使用了什么工具,工具在哪里共享着等等,努力做到让每一位感兴趣的老司机都能在自己闲暇的时光学到一点额外的知识,指不定那一天你就用上了少许呢! 感谢大家的支持

NFS,FTP

一. NFS1. NFS简介NFS全称是network file systemNFS允许一个系统在网络上与他人共享目录和文件.通过使用NFS,用户和程序可以像访问本地文件一样访问远端系统上的文件. 假如有三台机器A, B, C,它们需要访问同一个目录,目录中都是图片,传统的做法是把这些图片分别放到A, B, C. 但是使用NFS只需要放到A上,然后A共享给B和C即可.访问的时候,B和C是通过网络的方式去访问A上的那个目录的. 2. 安装.配置NFS服务需要安装两个包(nfs-utils和rpcb