共享资源库系统

共享资源库系统案例目标(1)了解FTP工作原理,客户端工具,FTP状态码以及vsftp服务的安装。(2)了解FTP虚拟用户配置以及黑白名单规则使用限制。(3)FTP客户端安装以及使用FTP客户端测试。(4)熟悉NFS工作原理,服务部署安装,以及配置文件中参数的使用。(5)了解showmount命令的使用,熟练挂载共享目录以及永久挂载的操作。(6)了解crond命令使用,shell脚本备份资源库编写。FTP服务什么是FTPFTP(FileTransferProtocol)是一个非常古老并且
摘要由CSDN通过智能技术生成

共享资源库系统

案例目标
(1)了解FTP工作原理,客户端工具,FTP状态码以及vsftp服务的安装。
(2)了解FTP虚拟用户配置以及黑白名单规则使用限制。
(3)FTP客户端安装以及使用FTP客户端测试。
(4)熟悉NFS工作原理,服务部署安装,以及配置文件中参数的使用。
(5)了解showmount命令的使用,熟练挂载共享目录以及永久挂载的操作。
(6)了解crond命令使用,shell脚本备份资源库编写。

FTP服务

什么是FTP
FTP(FileTransferProtocol)是一个非常古老并且应用十分广泛的文件传输协
议,FTP协议是现今使用最为广泛的网络文件共享协议之一,我们现在也一直有
在用着FTP协议来进行各种文件的传输,FTP为我们提供了一种可靠的方式在
网络上进行文件的共享。

FTP原理
FTP是C/S架构的服务,拥有一个服务器端和一个客户端,FTP底层通过
TCP协议来作为传输协议,所以FTP协议是一种可靠的文件传输方式,FTP提
供了两个端口号,20和21号端口,20号是数据接口,提供数据之间的传输,21
号是命令接口,提供命令之间的传输。

FTP服务端与客户端连接一般有两种模式:主动模式和被动模式
主动模式
在主动模式下,FTP客户端随机开启一个大于1024的端口N向服务器的21
号端口发起连接,发送FTP用户名和密码,然后开放N+1号端口进行监听,并
向服务器发出PORTN+1命令,告诉服务端客户端采用主动模式并开放了端口。
FTP服务器接收到PORT命令后,会用其本地的FTP数据端口(通常是20)来
连接客户端指定的端口N+1,进行数据传输
被动模式
在被动模式下,FTP客户端随机开启一个大于1024的端口N向服务器的21
号端口发起连接,发送用户名和密码进行登陆,同时会开启N+1端口。然后向
服务器发送PASV命令,通知服务器自己处于被动模式。服务器收到命令后,会
开放一个大于1024的端口P(端口P的范围是可以设置的,后面会说到这个是
很重要的)进行监听,然后用PORTP命令通知客户端,自己的数据端口是P。
客户端收到命令后,会通过N+1号端口连接服务器的端口P,然后在两个端口之
间进行数据传输。

FTP客户端

ftp命令程序:是最简单的FTP客户端工具,Windows和Linux都拥有ftp
命令程序,可以连接到FTP服务器进行交互式的上传、下载通信。
配置主机名

# hostnamectl set-hostname ftp

vsftp部署安装
通过yum源安装vsftp:

# yum -y install vsftpd telnet
# systemctl start vsftpd    #启动服务
# netstat -ntpl |grep 21
# systemctl stop firewalld
# setenforce 0
# cd /etc/vsftpd/
# cp vsftpd.conf{,.bak}
# egrep -v '^#|^$' vsftpd.conf.bak
#egrep-v'^#|^$' vsftpd.conf.bak>vsftpd.conf
# cat vsftpd.conf

主配置文件:/etc/vsftpd/vsftpd.conf
主程序:/usr/sbin/vsftpd

虚拟用户配置

在vsftpd服务器中,使用虚拟用户的主要好处在与:可以将FTP登录的账
号与系统登录账号区分开,用户名、密码都不相同,从而进一步增强了FTP服
务器的安全性
创建账号数据
1创建文本格式的用户名、密码列表。
奇数行:账号名,偶数行:密码(即上一行中账号的密码)
2转化为BerkeleyDB格式的数据文件
需要db_load转换工具,默认已安装。
“-f”用于指定数据源文件
“-T”表示允许非BerkeleyDB的应用程序使用从文本格式转换的DB数据
文件
“-thash”用于指定读取数据文件的基本方法
3为了提高虚拟用户账号文件的安全性,应将文件权限设置为600,以免数据外泄。

# vi /etc/vsftpd/users.conf
zhangsan
1234
zhaogao
5678
# db_load -T -t hash-f/etc/vsftpd/users.conf/etc/vsftpd/users.db
#chmod600users.db

创建FTP根目录及虚拟用户映射的系统用户(此账号无需设置密码及
登录shell)

[root@ftp~]# useradd vsftpd -d /home/vsftpd-s /sbin/nologin
[root@ftp~]# mkdir -p /home/vsftpd/xmcsxy
[root@ftp~]# chmod -R 755 /home/vsftpd

建立支持虚拟用户的PAM认证文件

[root@ftp~]# vi /etc/pam.d/vsftpd
auth sufficient /lib64/security/pam_userdb.so db=/etc/vsftpd/users
account sufficient /lib64/security/pam_userdb.sodb=/etc/vsftpd/users

添加虚拟用户支持
在 vsftpd.conf 文件中添加虚拟用户支持配置

[root@ftp~]# vi/etc/vsftpd/vsftpd.conf
anonymous_enable=NO  #禁止匿名用户登录
增加下面配置参数:
chroot_local_user=YES  #禁止用户访问除主目录以外的目录
guest_enable=YES  #启用虚拟用户
allow_writeable_chroot=YES  #允许写入用户主目录

为不同的虚拟用户建立独立的配置文件

[root@ftp~]# vi /etc/vsftpd/vsftpd.conf
user_config_dir=/etc/vsftpd/vsftpd_user_conf

有了上述配置以后,就可以在/etc/vsftpd/vsftpd_user_conf目录中为每个
虚拟用户分别建立配置文件了

[root@ftp~]# mkdir -p /etc/vsftpd/vsftpd_user_conf
[root@ftp~]# cd /etc/vsftpd/vsftpd_user_conf/
[root@ftpvsftpd_user_conf]# vi zhangsan
local_root=/home/vsftpd/xmcsxy   #当本地用户登入时,将被更换到定义
的目录下。默认值为各用户的家目录。
anon_upload_enable=YES  #是否允许登陆用户有上传权限。
write_enable=YES   #是否允许登陆用户有写权限。
#vi zhaogao
local_root=/home/vsftpd/xmcsxy
anon_upload_enable=YES
write_enable=YES
# chmod -R 755*

**

重启服务并测试

重启服务生效配置文件:

[root@ftp~]# systemctl restart vsftpd
[root@ftp~]# systemctl enable vsftpd
Created symlink from /etc/systemd/system/multi-user.target.wants/vsftpd.service
to /usr/lib/systemd/system/vsftpd.service.

使用虚拟FTP账户访问测试:
zhangsan用户可以登录,并可以浏览、下载,也可以上传。
测试之前:关闭防火墙以及安全规则;

[root@ftpvsftpd_user_conf]# systemctl stop firewalld
[root@ftpvsftpd_user_conf]# systemctl disable firewalld
Removed symlink /etc/systemd/syst em/multi-user.target.wants/firewalld.service.
Removed symlink
/etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service.
[root@ftpvsftpd_user_conf]# setenforce 0

先往家目录写入一个文件

[root@ftp~]# cd /home/vsftpd/xmcsxy/
[root@ftpxmcsxy]# touch a.txt

使用lftp工具访问
NFS节点上部署lftp客户端:(命令行ftp客户端)

[root@nfs~]# yum -y install lftp
# lftp zhangsan@192.168.63.131

尝试下载

> get a.txt
[root@localhost~]# ll

执行一个上传的操作

# chmod -R 777 /home/vsftpd/xmcsxy/
[root@ftp~]# tail -f /var/log/secure
lftpzhangsan@192.168.63.131:/> get a.txt
lftpzhangsan@192.168.63.131:/> e
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
这些代码也是jQuery语法的最初雏形。当时John的想法很简单:他发现这种语法相对现有的JavaScript库更为简洁。但他没想到的是,这篇文章一经发布就引起了业界的关注。于是John开始认真思考着这件事情(编写语法更为简洁的JavaScript程序库),直到2006年1月14日,John正式宣布以jQuery的名称发布自己的程序库。随之而来的是jQuery的快速发展。 2006年1月John Resig等人创建了jQuery;8月,jQuery的第一个稳定版本,并且已经支持CSS选择符、事件处理和AJAX交互。 2007年7月,jQuery 1.1.3版发布,这次小版本的变化包含了对jQuery选择符引擎执行速度的显著提升。从这个版本开始,jQuery的性能达到了Prototype、Mootools以及Dojo等同类JavaScript库的水平。同年9月,jQuery 1.2版发布,它去掉了对XPath选择符的支持,原因是相对于CSS语法它已经变得多余了。这一版能够对效果进行更为灵活的定制,而且借助新增的命名空间事件,也使插件开发变得更容易。同时,jQuery UI项目也开始启动,这个新的套件是作为曾经流行但已过时的Interface插件的替代项目而发布的。jQuery UI中包含大量预定义好的部件(widget),以及一组用于构建高级元素(例如可拖放、拖拽、排序)的工具。 2008年5月,jQuery 1.2.6版发布,这版主要是将Brandon Aaron开发的流行的Dimensions插件的功能移植到了核心库中,同时也修改了许多BUG,而且有不少的性能得到提高。因此,如果以前的jQuery版本升级到1.2.6,那么完全可以从代码中排除Dimensions插件(一个获得元素尺寸、定位的插件)。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值