企业级共享文件系统

第1章 企业级共享文件系统

1.1 vsftp

1.1.1VSFTP 概述

1.简介
  • FTP(File Transfer Protocol,文件传输协议) 是 TCP/IP 协议组中的协议之一。用于 Internet 上的文件的双向传输。使用 FTP 来传输时,是具有一定程度的危险性, 因为数据在因特网上面是完全没有受到保护的明文传输方式!FTP协议包括两个组成部分,其一为FTP服务器,其二为FTP客户端。其中FTP服务器用来存储文件,用户可以使用FTP客户端通过FTP协议访问位于FTP服务器上的资源。在开发网站的时候,通常利用FTP协议把网页或程序传到Web服务器上。此外,由于FTP传输效率非常高,在网络上传输大的文件时,一般也采用该协议。
  • 默认情况下FTP协议使用TCP端口中的 20和21这两个端口,其中20用于传输数据,21用于传输控制信息。但是,是否使用20作为传输数据的端口与FTP使用的传输模式有关,如果采用主动模式,那么数据传输端口就是20;如果采用被动模式,则具体最终使用哪个端口要服务器端和客户端协商决定。
  • vsftpd 是“very secure FTP daemon”的缩写,安全性是它的一个最大的特点。vsftpd 是一个 UNIX 类操作系统上运行的服务器的名字,它可以运行在诸如 Linux、BSD、Solaris、 HP-UNIX等系统上面,是一个完全免费的、开放源代码的ftp服务器软件,支持很多其他的 FTP 服务器所不支持的特征。比如:非常高的安全性需求、带宽限制、良好的可伸缩性、可创建虚拟用户、支持IPv6、速率高等。
2.安全特性
  • vsftp 程序的运行者一般是普通用户,降低了相对应进程的权限,提高了安全性。是一个安全、高速、稳定的FTP服务器
  • 可以做基于多个IP的虚拟FTP主机服务器
  • 任何需要执行较高权限的指令都需要上层程序许可。匿名服务设置十分方便。匿名FTP的根目录不需要任何特殊的目录结构,或系统程序或其它的系统文件
  • ftp 所需要使用的绝大多数命令都被整合到了 vsftp 中,基本不需要系统额外提供命令。不执行任何外部程序,从而减少了安全隐患
  • 拥有 chroot 功能,可以改变用户的根目录,限制用户只能在自己的家目录
  • VSFTP市场应用十分广泛,很多国际性的大公司和自由开源组织在使用,如:Red Hat, Suse,Debian,OpenBSD
3.vsftpd工作原理
VSFTP 连接类型
  • 控制连接(持续连接) → TCP 21(命令信道) → 用户收发FTP命令

  • 数据连接(按需连接) → TCP 20(数据信道) → 用于上传下载数据

  • vsftpd基于C/S模式,有两种传输模式,分别是主动模式、被动模式。vsftp默认工作模式为主动模式。

主动(port )模式
  • ftp client 端从一个任意的大于1024的端口P连接到ftp server 端的21端口。然后ftp client 端开始监听端口P+N,并发送FTP命令“port P+N”到ftp server 端。接着ftp server 端会从它自己的数据端口(20)连接到ftp client 端指定的数据端口P+N。
    1. ftp client端启用大于1024端口P连接ftp server端口21,通过tcp三次握手建立连接
    2. ftp client 端发送PORT请求告诉ftp server 端自己开启了P+N端口接收数据
    3. ftp server 端用20端口和ftp client 端的P+N端口通过tcp三次握手后开始传输数据

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-fPXtypoo-1632022854813)(G:\笔记\Linux运维\企业级共享文件系统.assets\image-20210917081853489.png)]

被动(Passive)模式
  • 在被动方式FTP中,命令连接和数据连接都由ftp client 端发起,这样就可以解决从服务器到ftp client 端的数据端口的入方向连接被防火墙过滤掉的问题。当开启一个FTP连接时,ftp client 端打开两个任意的本地端口P>1024连接服务器的21端口,但与主动方式的FTP不同,ftp client 端不会提交PORT命令并允许ftp server 端来回连它的数据端口,而是提交PASV命令。这样做的结果是ftp server 端会开启一个任意的非特权端口(端口号大于1024),并发送PORT S命令给客户端。然后ftp client 端发起从本地端口P+N到ftp server 端的端口S的连接用来传送数据。
    1. ftp client端启用大于1024端口P连接ftp server端口21,通过tcp三次握手建立连接
    2. ftp client 端发送PASV请求告诉ftp server 端自己处于被动模式
    3. ftp server 端监听端口S>1024,告知ftp client 端
    4. ftp client 端用P+N端口和ftp server 端的S端口通过tcp三次握手后开始传输数据

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Vdz4yBB6-1632022854814)(G:\笔记\Linux运维\企业级共享文件系统.assets\image-20210917081926608.png)]

VSFTP 传输模式
  • Binary模式:不对数据进行任何处理,适合进行可执行文件、压缩文件、图片等
  • ASCII模式:进行文本传输时,自动适应目标操作系统的结束符,如回车符等
  • 切换方式:在ftp>提示符下输入ascii即转换到ACSII方式,输入bin,即转换到Binary方式。
  • Linux的红帽默认模式:Linux的红帽发行版中VSFTP默认采用的是Binary模式,这样能保证绝大多数文件传输后能正常使用

1.1.2vsftp搭建ftp服务

1.安装
1.1服务器端
关闭selinux
sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/sysconfig/selinux
setenforce 0

查询是否系统已经自带了vsftpd
rpm -q vsftpd

使用 yum 安装vsftpd
yum -y install vsftpd

启动
systemctl start vsftpd

停止
systemctl stop vsftpd

查看状态
systemctl status vsftpd

重启
systemctl restart vsftpd

开机启动vsftpd
systemctl enable vsftpd

检查vsftpd是否开启:
ps -e|grep vsftpd
1.2vsftpd配置目录详解
  • /etc/vsftpd/vsftpd.conf:主配置文件
  • /usr/sbin/vsftpd:vsftpd的主程序
  • /etc/rc.d/init.d/vsftpd:启动脚本
  • /etc/pam.d/vsftpd:PAM认证文件(此文件中file=/etc/vsftpd/ftpusers字段,指明阻止访问的用户来自/etc/vsftpd/ftpusers文件中的用户)
  • /etc/vsftpd/ftpusers:禁止使用vsftpd的用户列表文件。记录不允许访问FTP服务器的用户名单,管理员可以把一些对系统安全有威胁的用户账号记录在此文件中,以免用户从FTP登录后获得大于上传下载操作的权利,而对系统造成损坏。(注意:linux-4中此文件在/etc/目录下)
  • /etc/vsftpd/user_list:禁止或允许使用vsftpd的用户列表文件。这个文件中指定的用户缺省情况(即在/etc/vsftpd/vsftpd.conf中设置userlist_deny=YES)下也不能访问FTP服务器,在设置了userlist_deny=NO时,仅允许user_list中指定的用户访问FTP服务器。(注意:linux-4中此文件在/etc/目录下)
  • /var/ftp:匿名用户主目录;本地用户主目录为:/home/用户主目录,即登录后进入自己家目录
  • /var/ftp/pub:匿名用户的下载目录,此目录需赋权根chmod 1777 pub(1为特殊权限,使上载后无法删除)
  • /etc/logrotate.d/vsftpd.log:Vsftpd的日志文件
1.3客户端
yum install -y ftp

1.1.3匿名用户验证

VSFTP 软件信息:
  • 服务端软件名:vsftpd,需要安装
  • 客户端软件名:ftp,不需要安装
  • 服务名:vsftpd
  • 端口号:20、21、指定范围内随机端口
  • 配置文件:/etc/vsftpd/vsftpd.conf
匿名用户验证:
  • 用户账号名称:ftp或anonymous
  • 用户账号密码:无密码
  • 工作目录:/var/ftp
  • 默认权限:默认可下载不可上传,上传权限由两部分组成(主配置文件和文件系统)
linux-90:
服务器端创建一个测试文件
touch lagouedu.txt

linux-91:
准备工作:
cd /data
touch test.txt

1.客户端匿名登录
ftp 192.168.198.90
用户名:ftp
密码:空,直接回车

2.查看ftp内置命令:?
常见命令: ls cd put get delete

3.测试上传文件:
put /data/test.txt

4.下载服务器文件:
get lagouedu.txt

5.退出ftp:
quit

1.1.4FTP命令详解

1.汇总
FTP的命令行格式为:ftp -v -d -i -n -g [主机名],其中
-v显示远程服务器的所有响应信息;
-n限制ftp的自动登录,即不使用;
.n etrc文件;
-d使用调试方式;
-g取消全局文件名。
ftp使用的内部命令如下(中括号表示可选项):

1.![cmd[args]]:在本地机中执行交互shell,exit回到ftp环境,如:!ls*.zip.
2.$ macro-ame[args]:执行宏定义macro-name.
3.account[password]:提供登录远程系统成功后访问系统资源所需的补充口令。
4.append local-file[remote-file]:将本地文件追加到远程系统主机,若未指定远程系统文件名,则使用本地文件名。
5.ascii:使用ascii类型传输方式。
6.bell:每个命令执行完毕后计算机响铃一次。
7.bin:使用二进制文件传输方式。
8.bye:退出ftp会话过程。
9.case:在使用mget时,将远程主机文件名中的大写转为小写字母。
10.cd remote-dir:进入远程主机目录。
11.cdup:进入远程主机目录的父目录。
12.chmod mode file-name:将远程主机文件file-name的存取方式设置为mode,如:chmod 777 a.out。
13.close:中断与远程服务器的ftp会话(与open对应)14.cr:使用asscii方式传输文件时,将回车换行转换为回行。
15.delete remote-file:删除远程主机文件。
16.debug[debug-value]:设置调试方式,显示发送至远程主机的每条命令,如:deb up 3,若设为0,表示取消debug。
17.dir[remote-dir][local-file]:显示远程主机目录,并将结果存入本地文件local-file。
18.disconnection:同close。
19.form format:将文件传输方式设置为format,缺省为file方式。
20.get remote-file[local-file]:将远程主机的文件remote-file传至本地硬盘的localfile。
21.glob:设置mdelete,mget,mput的文件名扩展,缺省时不扩展文件名,同命令行的-g参数。
22.hash:每传输1024字节,显示一个hash符号(#)。
23.help[cmd]:显示ftp内部命令cmd的帮助信息,如:help get。
24.idle[seconds]:将远程服务器的休眠计时器设为[seconds]秒。
25.image:设置二进制传输方式(同binary)26.lcd[dir]:将本地工作目录切换至dir。
27.ls[remote-dir][local-file]:显示远程目录remote-dir,并存入本地文件local-file。
28.macdef macro-name:定义一个宏,遇到macdef下的空行时,宏定义结束。
29.mdelete[remote-file]:删除远程主机文件。
30.mdir remote-files local-file:与dir类似,但可指定多个远程文件,如:mdir *.o.*.zipoutfile
31.mget remote-files:传输多个远程文件。
32.mkdir dir-name:在远程主机中建一目录。
33.mls remote-file local-file:同nlist,但可指定多个文件名。
34.mode[modename]:将文件传输方式设置为modename,缺省为stream方式。
35.modtime file-name:显示远程主机文件的最后修改时间。
36.mput local-file:将多个文件传输至远程主机。
37.newer file-name:如果远程机中file-name的修改时间比本地硬盘同名文件的时间更近,则重传该文件。
38.nlist[remote-dir][local-file]:显示远程主机目录的文件清单,并存入本地硬盘的localfile。
39.nmap[inpattern outpattern]:设置文件名映射机制,使得文件传输时,文件中的某些字符相互转换,如:nmap $1.$2.$3[$1$2].[$2$3],则传输文件a1.a2.a3时,文件名变为a1,a2。该命令特别适用于远程主机为非UNIX机的情况。
40.ntrans[inchars[outchars]]:设置文件名字符的翻译机制,如ntrans 1R,则文件名LLL将变为RRR。
41.open host[port]:建立指定ftp服务器连接,可指定连接端口。
42.passive:进入被动传输方式。
43.prompt:设置多个文件传输时的交互提示。
44.proxy ftp-cmd:在次要控制连接中,执行一条ftp命令,该命令允许连接两个ftp服务器,以在两个服务器间传输文件。第一条ftp命令必须为open,以首先建立两个服务器间的连接。
45.put local-file[remote-file]:将本地文件local-file传送至远程主机。
46.pwd:显示远程主机的当前工作目录。
47.quit:同bye,退出ftp会话。
48.quote arg1,arg2...:将参数逐字发至远程ftp服务器,如:quote syst.
49.recv remote-file[local-file]:同get。
50.reget remote-file[local-file]:类似于get,但若local-file存在,则从上次传输中断处续传。
51.rhelp[cmd-name]:请求获得远程主机的帮助。
52.rstatus[file-name]:若未指定文件名,则显示远程主机的状态,否则显示文件状态。
53.rename[from][to]:更改远程主机文件名。
54.reset:清除回答队列。
55.restart marker:从指定的标志marker处,重新开始get或put,如:restart 13056.rmdir dir-name:删除远程主机目录。
57.runique:设置文件名唯一性存储,若文件存在,则在原文件后加后缀..1,.2等。
58.send local-file[remote-file]:同put。
59.sendport:设置PORT命令的使用。
60.site arg1,arg2...:将参数作为SITE命令逐字发送至远程ftp主机。
61.size file-name:显示远程主机文件大小,如:site idle 720062.status:显示当前ftp状态。
63.struct[struct-name]:将文件传输结构设置为struct-name,缺省时使用stream结构。
64.sunique:将远程主机文件名存储设置为唯一(与runique对应)65.system:显示远程主机的操作系统类型。
66.tenex:将文件传输类型设置为TENEX机的所需的类型。
67.tick:设置传输时的字节计数器。
68.trace:设置包跟踪。
69.type[type-name]:设置文件传输类型为type-name,缺省为ascii,如:type binary,设置二进制传输方式。
70.umask[newmask]:将远程服务器的缺省umask设置为newmask,如:umask 371.user user-name[password][account]:向远程主机表明自己的身份,需要口令时,必须输入口令,如:user anonymous my@email。
72.verbose:同命令行的-v参数,即设置详尽报告方式,ftp服务器的所有响应都将显示给用户,缺省为on.
73.?[cmd]:同help。

1.2 samba

1.2.1samba 概述

  • samba是一套使用SMB(Server Message Block)默认在局域网上共享文件和打印机的一种通信协议, 通过支持这个协议, samba允许Linux服务器与Windows系统之间进行通信,使跨平台的互访成为可能。samba采用C/S模式, 其工作机制是让NetBIOS( Windows 网上邻居的通信协议)和SMB两个协议运行于TCP/IP通信协议之上,并且用NetBEUI协议让Windows在“网上邻居”中能浏览Linux服务器。

  • samba服务器包括两个后台应用程序: Smbd 和 Nmbd。Smbd 是samba的核心, 主要负责建立 LinuxSamba服务器与Samba客户机之间的对话, 验证用户身份并提供对文件和打印系统的访问; Nmbd主要负责对外发布Linux Samba服务器可以提供的NetBIOS名称和浏览服务,使Windows用户可以在“网上邻居”中浏览Linux Samba服务器中共享的资源。另外Samba还包括一些管理工具, 如 smb-client,smbmount, testparm, Smbpasswd 等程序。

  • Samba服务器可实现如下功能:WINS和DNS服务; 网络浏览服务; Linux和Windows域之间的认证和授权;

  • UNICODE字符集和域名映射;满足CIFS协议的UNIX共享等。

samba的主要应用:
  • samba的主要目的就是用来沟通Windows与Unix这两种不同的作业平台。
  • 共享档案与打印机服务;
  • 提供身份认证;
  • 提供Windows网络上的主机名称解析(NetBIOS name)。
1.samba与ftp对比
ftp 的优缺点
  • 优点:文件传输、应用层协议、可跨平台
  • 缺点:只能实现文件传输,无法实现文件系统挂载;无法直接修改服务器端文件
Samba 的特性
  • 使用 smb/cifs 协议
  • 可跨平台
  • 可实现文件系统挂载
  • 可实现服务器端修改文件
2.smb协议和cifs之间的关系
  • 随着互联网的飞速发展,Microsoft 希望将SMB协议扩展到 Internet 上去,成为 Internet 上计算机之间相互共享数据的一种标准。因此它将原有的几乎没有多少技术文档的SMB协议进行整理,重新命名为CIFS(Common Internet File System),它使程序可以访问远程 Internet 计算机上的文件并要求此计算机提供服务。客户程序请求远在服务器上的服务器程序为它提供服务。服务器获得请求并返回响应。CIFS 是公共的或开放的 SMB 协议版本,并由 Microsoft 使用。 SMB 协议在局域网上用于服务器文件访问和打印的协议。

1.2.2samba安装

yum install -y samba

启动samba
systemctl start smb

设置开机启动
systemctl enable smb

查看samba服务状态
systemctl status smb

1.2.3配置samba

1.添加用户并设置密码
  • 设置账号用于登录samba服务器,同时并samba用户登录设置密码。具体命令:

  • 本地用户验证(Samba服务器默认的安全级别,用户在访问共享资源之前必须提供用户名和密码进行验证)该方式是使用一个数据库文件来验证。数据库文件叫passdb.tdb。可以通过pdbedit -a 向数据库中添加新用户,不过要建立的Samba用户必须先是系统用户。也可以理解为我们使用pdbedit -a 将系统用户转化为了samba用户

语法:
pdbedit [参数] 用户名
参数:
  • -a:新建Samba账户(将系统用户转化为samba用户,并设置密码)
  • -x:删除Samba账户
  • -L:列出Samba用户列表,读取passdb.tdb数据库文件。
useradd sambauser

设置samba账户密码:
pdbedit -a sambauser

查看samba用户
pdbedit -L sambauser

授权
chmod 777 /home/sambauser/

关闭seliunx
sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/sysconfig/selinux
setenforce 0

开放共享目录权限
iptables -F
2.重启samba服务器
systemctl restart smb
3.windows客户端测试
  • 安装samba服务:需要重新启动windows
  • 通过配置文件资源管理器方式登录samba服务器进行测试
  • 通过配置网络映射方式登录samba服务器进行测试

1.3企业级共享文件系统

背景介绍

  • 在网络中,多台计算机或同一计算机中的多个用户,同时使用硬件和软件资源。通常多用户同时需要的资源总是超过系统实际物理资源的数量,但采用逻辑(或虚拟)资源分配的方式,实现资源共享,可较好地处理这个矛盾,从而提高计算机的使用效率。但必须由操作系统进行协调管理,才能避免混乱。方法主要有两种:由操作系统统一管理分配,适用于同一计算机系统中的多用户;用户互相通告,适用于网络系统。

  • 文件共享是指主动地在网络上共享自己的计算机文件。一般文件共享使用P2P模式,文件本身存在用户本人的个人电脑上。大多数参加文件共享的人也同时下载其他用户提供的共享文件。有时这两个行动是连在一起的。

  • 网络给我们带来了许多方便,我们可以用文件共享轻轻松松的与其他人分享文件,文件共享是指主动地在网络上(互联网或小的网络)共享自己的计算机文件。一般文件共享使用P2P模式,文件本身存在用户本人的个人电脑上。大多数参加文件共享的人也同时下载其他用户提供的共享文件。有时这两个行动是连在一起的。

  • 文件共享有多个重要的问题,其中两个最重要,第一个问题是中央集中制还是分网络结构用户的隐私权和匿名性。后者在版权拥有者对一些文件共享用户起诉后成为了一个重要问题。第二个问题是使用所谓的“间谍软件”收集和出卖用户数据。早年的客户端程序只接受一种协议,因此一个客户端程序要么只接受Napster要么只接受Gnutella。当时有一种在客户端建立一个使用多种协议的软件的运动。这个运动最主要的目的是一个用户没有必要使用不同的程序来做同一件事。有时有的人共享的文件非常受人欢迎,这样许多人会想从他那里获得这个文件,这有可能导致这个人的系统无法满足所有的需要。分散制是减轻这个问题的一个办法,尤其是假如有许多人在共享这个文件的话,那么这个文件可以从不同的地方来获取。分散制也被用来解决对中央集中制的威胁,这个威胁即可以来自法律控告,也可能来自敌对的用户。一个分散的网络无法被整个地攻击,攻击者只能对其个别成员进行攻击,而整个网络的剩余部分依然工作。为了防止有人只收藏别人提供的文件而不肯共享它们,后来有的系统引入了交换和评分的功能。在这样的系统中,一个用户只在他能够期望获得报酬的情况下才共享。KaZaA使用一种非常简单的评分系统。客户端程序计算用户的优先权并告诉提供文件的一段该用户的优先权是多少。但这个系统被发明后不久就有人改变了客户端程序使得客户端用户总是拥有最高的优先权。另一个使用评分系统的客户端程序是eMule。eMule的客户端程序适用多重来源文件传输协定,它监视用户向另一个用户下载或上传多少文件。有时这个评分系统似乎不影响下载的速度。假如用户有一个空闲的上传隧道的话,那么它接受对方,向对方上传8MB数据,然后将对方放到它的排队的最后。假如对方的评分为x2的话,那么对方比起评分为x1的用户只要等半数的时间就又排到了,用户再上传8MB数据。假如双方互相传送数据的话,那么它们相互之间的评分就会不断上升,传递的速度也提高。BitTorrent协议也有非常好的评分系统。假如一个用户只下载而不上传的话,那么他的下载速度就非常低。今天的系统在上传和下载的功能上和在防止侵犯法律方面的功能上都比较有效。

共享分类

  1. 数据和应用程序的共享。
    1.1 打印共享局域网内建立一台打印服务器,可以为局域网所有用户提供打印服务。
    1.2 邮件功能邮件服务器可以为企业内部所有员工提供基于用户名的邮件转发、分发、抄送等服务,并且可以在服务器上完成方便的管理、备 份、删除、收回、恢复等工作。
    1.3网络聊天最常见的便是qq,微信,等应用程序,可以实时、快速的实现位于不同物理位置的用户之间的语音、视频交流。
    1.4 实时消息例如Yahoo IM、MSN等应用程序,可以实现局域网、互联网范围内的消息转发。
    1.5 数据库数据库服务器是企业局域网内部重要的组成部分,可以实现数据共享、减少冗余度、集中存储和管理、可维护性和安全性等功能。
  2. 网络存储常见的便是文件共享服务,采用FTP和TFTP服务,使用户能够在工作组计算机上方便而安全的访问共享服务器上的资源,而且ftp资源大多是免费的。
  3. 资源备份随着网络攻击和病毒的发展,资源备份也成为了资源共享当中不可或缺的一部分,现代企业大都采取实时高效的资源备份方式,以便在网络崩溃的时候能够最大限度的保护公司信息,以及在灾难恢复的时候起到最大的作用。
  4. 人脉关系:包括客户资源、能力资源等一些可以相互应用的到的。
  5. 设备。

局域网中资源共享

打印机的共享
  • 安装打印服务器。局域网内任意一台计算机上安装本地打印机,包括打印机硬件连接、软件安装,使计算机本身能打印。这台计算机对网络而言称打印服务器,将它“属性”设置共享。此时记住这台计算机的标识。
  • 工作站安装网络打印机。在工作站安装网络打印机,双击“添加打印机”,选“网络打印机”下一步,再下一步,在共享打印机窗口中“浏览”,找上面安装共享打印机的标识,选定“下一步”。其它要共享打印机的工作站都要这样安装一下,就可以共享网络打印机。
文件夹或驱动器共享
  • 在网络中,一个工作站上的文件夹或驱动器都可以让其它工作站共享,使用方法如下。文件夹或驱动器共享的设置。在“计算机”窗口中,右击文件夹或驱动器图标,选“属性”,点“共享”就可以了。硬盘驱动器共享时,选“新建共享”按扭,在“新建共享”对话框中“共享名”写入名,确定后即可。这里注意不要用“默认共享”。工作站的使用。双击“网上邻居”图标,再双击“整个网络”图标,再双击“Microsoftwindows网络”,再双击Workgroup图标,会看到局域网络各计算机图标;双击共享文件夹或驱动器的那台计算机图标,文件夹或驱动器图标就会出现,这时可将其当作自己的文件夹或驱动器使用。

1.3.1rsync

  • rsync 是类 unix 系统下的数据镜像备份工具。一款支持快速完全备份和增量备份的工具,支持本地复制,远程同步等,类似于 scp 命令;rsync 命令在同步文件之前要先登录目标主机进行用户身份认证,认证过后才能进行数据同步,身份认证方式取决于所使用的协议类型,rsync 一般使用两种协议进行数据同步:ssh 协议和 rsync 协议。
官网地址
https://rsync.samba.org/
下载地址
https://rsync.samba.org/download.html
rsync 优点
  • rsync具有安全性高、备份迅速、支持增量备份等优点,通过rsync可以解决对实时性要求不高的数据备份需求,例如定期地备份文件服务器数据到远程服务器上,对本地磁盘定期进行数据镜像等。
rsync 不足

随着应用系统规模的不断扩大,对数据的安全性和可靠性提出了更高的要求,rsync便暴露出了很多不足之处。首先,rsync同步数据时,需要扫描所有文件后进行比对,然后进行差量传输。如果文件数量达到了百万量级及以上时,扫描文件就非常耗费时间,有时还会出现只是很少一部分数据发生了变化,因此rsync就变得非常低效了。其次,rsync不能够实时监测、同步数据,虽然它可以通过Linux守护进程的方式触发同步,但是两次触发动作一定会出现时间差,可能导致服务器端和客户端的数据出现不一致,后期无法在出现故障时完全恢复数据。

实验环境
  • 服务器端:linux-90 192.168.198.90
  • 客户端:linux-91 192.168.198.91

1.安装rsync

客户端和服务器都需要安装

yum install -y rsync

2.修改配置文件

  • 有些版本的系统上可能该文件默认不存在。
address = 192.168.198.90 #rsync 服务绑定 IP
port 873 #默认服务端口 873
log file = /var/log/rsyncd.log #日志文件位置
pid file = /var/run/rsyncd.pid #进程号文件位置
[lagou] #共享名:用来连接是写在 url 上的,切记
    comment = lagou directory backup #共享描述话语
    path = /lagouedu #实际共享目录
    read only = no #是否仅允许读取
    dont compress = *.gz *.bz2 #哪些文件类型不进行压缩
    auth users = zhangsan #登录用户名(非系统用户,需要自行创建)
    secrets file = /etc/rsyncd_users.db #认证所需账户密码文件(需自行创建-同上)
  • linux-90:
vi /etc/rsyncd.conf
address=192.168.198.90
port 873
log file=/var/log/rsyncd.log
pid file=/var/run/rsyncd.pid
[lagou]
    comment=lagou directory backup
    path=/lagouedu
    read only=no
    dont compress =*.gz *.bz2
    auth users=zhangsan
    secrets file=/etc/rsyncd_users.db

3.创建认证所需账户密码文件

linux-90:
vi /etc/rsyncd_users.db
文件内容如下:
zhangsan:123456
必须修改权限,否则客户端登录报错
chmod 600 /etc/rsyncd_users.db
创建共享目录:
mkdir -p /lagouedu
cd /lagouedu
创建文件:
touch {1..5}.txt
ls

4.启动服务

linux-90:
rsync --daemon
netstat -antp | grep :873

5.设置映射用户对共享目录有权限

linux-90:
setfacl -m u:nobody:rwx /lagouedu

6.下载测试

语法规则:
  • rsync -avz rsync://用户名@服务器地址/共享模块名 /本地目录
linux-91:
rsync -avz rsync://zhangsan@192.168.198.90/lagou /data
cd /data
ls

7.上传测试

语法规则:
  • rsync -avz /本地目录/* rsync://用户名@服务器地址/共享模块名
linux-90:
rm -rf *
linux-91:
rsync -avz /data/* rsync://zhangsan@192.168.198.90/lagou

8.删除测试

–delete:
  • 删除本地比服务器多出来的文件(源地址没有,目标地址有的删掉)
linux-91:
touch 7.txt
rsync -avz --delete rsync://zhangsan@192.168.198.90/lagou /data
ls

9.免密登录测试

  • rsync 协议的免密码可以借助一个环境变量实现。在客户端生成。
语法规则:
  • export RSYNC_PASSWORD=虚拟用户密码(客户端生成)
linux-91:
export RSYNC_PASSWORD=123456
touch 7.txt
rsync -avz --delete rsync://zhangsan@192.168.198.90/lagou /data
ls
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
一、应用背景 当前国内企事业单位纷纷组建了自己的内部局域网,并且纷纷在局域网内部架设各种服务器,用于共享单位内部的一些重要文件、商业机密等,用于本单位内部员工的访问、修改、信息交换、协同工作等,极大地提升了办公、工作效率。但是,由于缺乏对员工访问服务器共享文件的审计、约束等网络管理工作,使得单位重要的共享文件常常被员工私自拷贝、修改、删除等,并且由于对外来电脑缺乏控制,导致外来人员通过携带笔记本、U盘、移动存储设备等接入到单位内部的局域网中,非法访问、拷贝重要的共享文件,给单位的信息安全和商业机密的保护带来巨大的风险和危害,严重影响了单位正常的生产、经营活动。为此,必须对员工访问共享文件的行为加以约束、记录和审计,从而便于更好地管理、保护共享文件,并为某系情况下的调查取证提供详实的记录。 二、解决方案 鉴于对共享文件进行审计和保护对企事业单位来说具有至关重要的作用,同时国内网络安全厂商没有专门的共享文件审计工具供用户选用。大势至研发团队顺应用户的这一需求,并通过艰苦的研发终于推出了“大势至共享文件审计系统”。“大势至共享文件审计系统”是大势至(北京)软件工程有限公司推出的一款专门用来监视和记录局域网内部用户访问局域网内部服务器、其他主机共享资源的内网共享文件安全审计系统。通过大势至共享文件审计系统你可以详细审计局域网电脑访问服务器共享资源的情况,包括新建、拷贝、修改、删除、重命名等操作,也即:某个电脑访问共享文件后的一切操作、访问日志都被详细地记录下来(并且通过一定的设置还可以防止员工私自修改、删除共享文件,或者对其修改、删除的共享文件进行还原、恢复等风险应对举措),同时用户对共享文件的所有操作记录都将存储到服务器的数据库中,并可以导出成word、excel等格式,便于提供给相关人员进行审计。 三、功能介绍 1、记录服务器共享文件夹或共享文件的访问情况,包括读取、拷贝、修改、删除、重命名、打印等情况,可以记录访问者采用的登录账户、IP地址、MAC地址、时间、访问时长、具体操作情况等。 2、根据共享文件夹或共享文件来查询局域网电脑访问共享文件的具体操作情况。 3、根据IP或MAC地址来查询局域网主机对那些共享文件做了那些具体操作。 4、根据访问权限来显示对应的共享文件,没有访问权限的共享文件将予以隐藏。 5、对重要共享文件进行实时备份功能,可以在一定条件下进行实时还原。 6、对重要共享文件进行防删除操作,一旦蓄意或误操作删除共享文件可以恢复。 7、通过账户、IP和MAC地址三重绑定来限定客户端的电脑访问共享文件情况,一旦不符合绑定规则,禁止其访问共享文件。 8、限制外来电脑或未经授权的电脑访问共享文件,也即必须加入到许可访问共享文件的白名单电脑才可以访问共享文件。 9、支持在公司外部或外地访问单位局域网共享文件服务器并提供监控功能。 10、访问共享文件的日志情况可以导出为其他格式,如word、excel等,便于第三方审计。 11、集成开放的功能扩展接口,可以与我公司的商用安全计算机、外来电脑控制系统相互配合,强化对共享文件的保护。 四、领先优势 大势至共享文件审计系统与国内同类系统相比,主要优势如下: 1、大势至共享文件审计系统还可以与大势至商用安全计算机进行整合,从而有效地防止了通过访问共享文件服务器的USB接口,使用U盘、移动硬盘、蓝牙、手机等外接存储设备来复制、拷贝共享文件的行为。 2、大势至共享文件审计系统同时支持Linux操作系统和Windows操作系统,从而具有更好的适应性,满足各个系统平台用户的监控共享文件的需求。 3、大势至共享文件审计系统支持主流的各种数据库,如ACCESS、MySql、SQL、DB2、Oracle数据库等,从而可以充分利用客户服务器的数据库模块,避免了客户购买新的数据库或安装操作特定数据库。 4、大势至共享文件审计系统只需要安装在提供共享文件的服务器上即可监控局域网内所有用户访问服务器文件的各种操作,不需要在客户端安装,不需要调整现有的网络结构,也不需要额外其他设备,从而一方面极大地节省了部署服务器共享文件监控系统的复杂性和工作量,又大幅度节省了购买其他硬件的投资支出。 5、大势至共享文件审计系统可以对重要共享文件的修改、删除操作进行实时备份和实时还原,从而有效地防止了共享文件被误操作、恶意修改而丢失、损坏的情况。 6、大势至共享文件审计系统通过基于用户、IP地址、MAC地址的三重认证和识别机制,从而可以确保用户识别的唯一性和精准性,防止了借用他人账户而在本机登录,或利用他人电脑使用本地账户登录的混乱状态,确保了共享文件访问操作责任到人;同时,也可以有效防止外来电脑私自接入局域网而访问共享文件的情况。 7、大势至共享文件审计系统还可以与大势至商用安全计算机进行整合,从而有效地防止了通过访问共享文件服务器的USB接口,使用U盘、移动硬盘、蓝牙、手机等外接存储设备来复制、拷贝共享文件的行为。 大势至共享文件审计系统不对监控文件进行加密、解密操作,从而可以防止重要文件被加密后无法打开,造成重要文件无法还原、丢失的情况,从而可以更安全地保护共享文件。 五、系统架构 大势至共享文件审计系统分为软件版本和硬件版本:其中,硬件版本基于全面优化的高性能文件服务器专用平台,比同类配置的普通服务器性能提升至少30%(详情见下文硬件参数)。 平台架构 2U工业设计,高强度钢外壳 CPU型号 至强中高端CPU CPU个数 2颗 内存 4G-16G,DDR3/1333MHZ 硬盘 1TB-2TB 网卡 双千兆网卡 Raid 支持 预装 大势至共享文件审计系统 图2:大势至共享文件服务器简要参数 操作系统:同时支持Windows操作系统(XP、Win2003、Win7、Win2008)或Linux操作系统,适应性更强。 数据库:同时支持MySql和SQL数据库系统,便于进行大量日志的存储,并可以导出为Word、Excel等格式。 安装部署方式:可以直接购买基于硬件架构的共享文件审计系统,亦可利用单位现有的硬件服务器设备单独部署大势至文件审计系统,无论何种安装方式,均不影响用户现有的网络结构。 六、系统截图 操作使用:本系统基于图形界面,操作极为简单,同时查询页面基于窗口方式,可以随意在局域网客户端电脑打开、登录、查询,极为方便。 通过大势至共享文件审计系统,可以详细记录局域网电脑访问服务器重要共享文件访问、使用情况,从而可以更好地保护企业商业机密和重要信息。同时,也可以便于网管分析服务器共享文件的访问情况并采取措施加强网络管理,为事后审计提供凭据。
大势至局域网文件共享管理系统可以详细审计局域网电脑访问服务器共享文件的行为,包括新建、拷贝、修改、删除、剪切、重命名等操作,从而便于对员工访问共享文件的行为进行全程的记录和查证,便于网管员进行事后审计和调查取证。同时,通过对共享文件进行保护设置,还可以防止局域网用户有意或不小心删除共享文件的情况。 功能介绍: 1、记录服务器共享文件夹或共享文件的访问情况,包括读取、拷贝、修改、删除、重命名、打印等情况,可以记录访问者采用的登录账户、IP地址、MAC地址、时间、访问时长、具体操作情况等。 2、根据共享文件夹或共享文件来查询局域网电脑访问共享文件的具体操作情况。 3、根据IP或MAC地址来查询局域网主机对那些共享文件做了那些具体操作。 4、根据访问权限来显示对应的共享文件,没有访问权限的共享文件将予以隐藏。 5、对重要共享文件进行实时备份功能,可以在一定条件下进行实时还原。 6、对重要共享文件进行防删除操作,一旦蓄意或误操作删除共享文件可以恢复。 7、通过账户、IP和MAC地址三重绑定来限定客户端的电脑访问共享文件情况,一旦不符合绑定规则,禁止其访问共享文件。 8、限制外来电脑或未经授权的电脑访问共享文件,也即必须加入到许可访问共享文件的白名单电脑才可以访问共享文件。 9、支持在公司外部或外地访问单位局域网共享文件服务器并提供监控功能。 10、访问共享文件的日志情况可以导出为其他格式,如word、excel等,便于第三方审计。 11、集成开放的功能扩展接口,可以与我公司的商用安全计算机、外来电脑控制系统相互配合,强化对共享文件的保护。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值