用户RedHat7使用vsftpd架设FTP服务器教程文件

ftp服务器架设  时间:2021-01-10  阅读:()

Red Ha t 7使用v s f t p d架设FTP服务器

RedHat7使用vsftpd架设FTP服务器

实验要求

采用vsftpd搭建一台ftp服务器( 192.168.17.128) 。

实验准备

默认实验环境

已经安装好RedHat6操作系统和Redhat7操作系统配置完网卡配置完库。 yum 这个实验其实跟Redhat6还是Redhat7没有关系。服务器端使用vsftpd,使用lftp Redhat6安装vsftpd 客户端# yum instal l vsftpd

Redhat7安装lftp

# yum instal l lftp

实验过程

Redhat6主机启动vsftpd服务

# service vsftpd start

在Redhat7上做测试

测试一、上传下载

在Rathat7主机上使用lftp连接FTP主机

# lftp 192.168.17.128lftp 192.168.17.128:~>cd pub

出现cd ok,cwd=/pub表示匿名用户连接成功。可以进入pub目录。

执行命令lftp 192.168.17.128:/pub>getfi le1

匿名用户可以下载,下载的文件可以在本地家目录下找到。lftp 192.168.17.128:/pub>put putfile put:Access fai led:550 Permission denied. (putfi le)说明匿名用户无法上传文件lftp 192.168.17.128:/pub>mkdirabc mkdir:Access fai led:550 Permission denied. (abc)说明匿名用户无法创建目录测试二、

开通匿名用户权限

权限有4部分防火墙 sel inux,目录权限 ftp匿名用户权限

这里只谈FTP,因此不讨论防火墙和sel inux。将这两个软件关闭。开通目录权限Vsft p d默认匿名用户在/va r/ft p/p u b下因此要将此目录给ot h e r用户加rwx权限。特别注意这里不能给/va r/ft p/直接加o+rwx权限如果加了将报500权限失败的错误。# chmod o+rwx-R/var/ftp/pub

开通FTP匿名用户权限

编辑文件/etc/vsftpd/vsftpd.conf

# vim/etc/vsftpd/vsftpd.conf

确保以下配置正确anonymous_enable=YES //12行允许匿名访问anon_upload_enable=YES//27行允许匿名上传anon_mkdir_write_enable=YES//31行允许匿名创建目录

重启服务器上FTP服务

# service vsftpd restart

客户端匿名用户访问

# lftp 192.168.17.128

Iftp 192.168.17.128:/>cd pub

上传文件成功

Iftp 192.168.17.128:/pub>putgetfi le

创建目录成功

Iftp 192.168.17.128:/pub>mkdirabc mkdir ok, 'abc'created

显示目录下内容lftp 192.168.17.128:/pub>ls drwx---- 214 50 4096 Nov0205:51 abc

-rw------ 1 14 50 0 Nov 0205:51 getfi le

-rw-r--rw- 1 0 0 0 Nov0205:41 putfile

刚刚创建的文件和目录都已成功lftp 192.168.17.128:/pub>rm abc rm:Access fai led:550 Permissio n deni ed. (abc)

删除目录失败lftp 192.168.17.128:/pub>rm putfile rm:Access fai led:550 Permissio n deni ed. (putfi le)lftp 192.168.17.128:/pub>rm getfile rm:Access fai led:550 Permissio n deni ed. (getfi le)

删除文件失败lftp 192.168.17.128:/>cd/lftp 192.168.17.128:/>ls drwxr-xrwx20 0 4096 Nov0205:41 pub

希望进入系统根目录访问失败。匿名用户只能在 /va r/ft p目录下游荡。测试三、使用l inux下客户访问

客户端使用lftp访问

登录用户

#lftp Jiane@192.168.17.128

Password:lftp Jiane@192.168.17.128:~>

下载文件成功lftp Jiane@192.168.17.128:~>getJia ne

6 bytes tran sferred

上传文件成功lftp Jiane@192.168.17.128:~>put putJiane

6 bytes transferred

创建目录成功lftp Jiane@192.168.17.128:~>mkdirabc mkdir ok, 'abc'created

显示如下说明创建目录和上传文件成功lftp Jiane@192.168.17.128:~>ls

-rw-rw-r-- 1 500 500 6 Nov0207:16Jiane drwxr-xr-x 2500 500 4096 Nov 0207:18 abc

-rw-r--r--

删除文件成功lftp Jiane@192.168.17.128:~>rm Jiane rm ok, 'Jiane' removed lftp Jiane@192.168.17.128:~>rm putJiane rm ok, 'putJiane' removed

删除目录成功lftp Jiane@192.168.17.128:~>rm-fr abc rm ok, 'abc' removed

显示没有文件lftp Jiane@192.168.17.128:~>ls

可以在任意目录里面游荡lftp Jiane@192.168.17.128:~>cd/tmp cd ok,cwd=/tmp lftp Jiane@192.168.17.128:/tmp>ls drwxrwxrwt 20 0 4096 Nov 01 01:26 VMwareDnD drwx----- 242 42 4096 Nov 0204:37 orbit-gdm drwx----- 20 0 4096 Nov 01 00:45 pulse-dKiUJVHwp5gi drwx----- 242 42 4096 Nov 0204:37 pulse-jMfmTL64uZ9d -rw-r--r-- 1 0 0 5278 Nov 0204:37 vgauthsvclog.txt.0drwx----- 20 0 4096 Nov 0204:37 vmware-root

根据实验得知 l inux用户登录FTP是进入用户的家目录并且可以在任何目录里面游荡。

匿名用户登录只能在/va r/ft p目录下并且只能在该目录中工作

默认情况下所有l inux的用户都可以在任何目录下游荡这个不安全。因此需要限制。确保只

有部分用户可以其他用户不可以。chroot_local_user=YES

chroot_l ist_enable=YES chroot_l ist_fi le=/etc/vsftpd/chroot_l ist

#cat /etc/vsftpd/chroot_l ist

Jiane

以上命令确保了系统里只有Jiane这个用户可以用ftp方式登录服务器并且在

里面任意游荡其他用户不行。

登录用户Jiane

#lftp Jiane@192.168.17.128

Password:

切换到其他目录成功lftp Jiane@192.168.17.128:~>cd/tmp cd ok,cwd=/tmp lftp Jiane@192.168.17.128:/tmp>ls drwxrwxrwt 20 0 4096 Nov 01 01:26 VMwareDnD drwx----- 242 42 4096 Nov 0204:37 orbit-gdm drwx----- 20 0 4096 Nov 01 00:45 pulse-dKiUJVHwp5gi drwx----- 242 42 4096 Nov 0204:37 pulse-jMfmTL64uZ9d

-rw-r--r-- 1 0 0 5278 Nov 0204:37 vgauthsvclog.txt.0drwx----- 20 0 4096 Nov 0204:37 vmware-root lftp Jiane@192.168.17.128:/tmp>exit

登录用户abc

#lftp abc@192.168.17.128

Password:lftp abc@192.168.17.128:~>ls

切换到其他目录失败lftp abc@192.168.17.128:/>cd/tmp cd:Access fai led:550 Fai led to change directory. (/tmp)显示其他目录内容失败lftp abc@192.168.17.128:/>ls/tmp

测试四、白名单和黑名单

设置可以访问FTP的白名单和黑名单

首先/etc/vsftpd/ftpusers为一个黑名单它不受任何配置影响总是有效。

而/etc/vsftpd/user_l ist与/etc/vsftpd/vsftpd.conf中的userl ist_enable和userl ist_deny

密切相关。它可以有效也可以无效可以是黑名单也可以是白名单。useri n在/etc/vsftpd/user_l ist里面userout不在/etc/vsftpd/user_l ist里面

1 . userl ist_enable表示该表启用与否 yes表示启用user_l ist文件 no表示不启用user_l ist文件。

2. Userl ist_deny是在userl ist_enable启用的状态下表示 user_l ist中的用户是被允许还是被拒绝。测试四、创建虚拟用户访问

创建宿主用户名

# useradd vftp-s/bin/false

该用于将被写入/etc/vsftpd/vsftpd.conf作为虚拟用户登录的宿主用户

创建虚拟用户

# vim/etc/vsftpd/vftpuser

# cat /etc/vsftpd/vftpuser che n1che n1che n2chen2

# db_load-T-t hash-f/etc/vsftpd/vftpuser/etc/vsftpd/vftpuser.db

/etc/vsftpd/vsftpuser.db将被写入/etc/pam.d/vsftpd作为用户登录的凭证

修改/etc/pam.d/vsftpd文件

# cat /etc/pam.d/vsftpd

#%PAM-1.0

#sessi on opti onal pam_keyi nit.so force revoke

#auth required pam」 istfi le.so item=user sen se=de ny fi le=/etc/vsftpd/ftpusers on err=succeed

#auth required pam_shel ls.so

#auth include password-auth

#account include password-auth#session required pam_loginuid.so#session include password-auth auth sufficient /l ib64/security/pam_userdb.so db=/etc/vsftpd/vftpuser account sufficient /l ib64/security/pam_userdb.so db=/etc/vsftpd/vftpuser

在/etc/pam.d/vsftpd里面配置登录用户认证方式

为每一个用户创建一个目录

#mkd ir -p/ftproot/chen{1 . .2}

# touch/ftproot/chen1/chen1

# touch/ftproot/chen2/chen2为每一个用户创建一个目录。

修改/etc/vsftpd/vsftpd.conf文件

#cat /etc/vsftpd/vsftpd.co nf|grep"八[八#]"anonymous_enable=NO //禁止匿名用户访问local_enable=YES

write_enable=YES

local_umask=022

dirmessage_enable=YES xferlog_enable=YES con n ect_from_port_20=YES xferlog_std_format=YES chroot_local_user=YES //禁止用户访问其他目录l isten=YES guest_enable=yes /启/用客户访问guest_username=vftp //客户放我采用vftp用户user_config_dir=/etc/vsftpd/vftp.conf//客户访问配置文件放在/etc/vsftpd/vftp.conf 文件夹下virtual_use_local_privs=yes //虚拟用户认证机制pam_service_name=vsftpd userl ist_enable=YES

tcp_wrappers=YES

创建每个用户的配置文件

#mkdir/etc/vsftpd/vftp.conf

#cat /etc/vsftpd/vftp.conf/chen 1 local_root=/ftproot/chen 1

#cat/etc/vsftpd/vftp.conf/chen2 local_root=/ftproot/chen2这些文件在启动服务的时候会被读入在客户登录的时候就会直接执行相应

用户名相对的脚本。

启动vsftpd服务

#service vsftpd start

Starting vsftpd for vsftpd: [OK]

Starting vsftpd for vftp.conf: :500 OOPS:cannot read config fi le: /etc/vsftpd/vftp.conf: [FAILED]Starting vsftpd for chen1:500 OOPS:cannot read config fi le:chen1

[FAILED]

Starting vsftpd for chen2:500 OOPS:cannot read config fi le:chen2[FAILED]

RackNerd :美国大硬盘服务器促销/洛杉矶multacom数据中心/双路e5-2640v2/64G内存/256G SSD+160T SAS/$389/月

大硬盘服务器、存储服务器、Chia矿机。RackNerd,2019年末成立的商家,主要提供各类KVM VPS主机、独立服务器和站群服务器等。当前RackNerd正在促销旗下几款美国大硬盘服务器,位于洛杉矶multacom数据中心,亚洲优化线路,非常适合存储、数据备份等应用场景,双路e5-2640v2,64G内存,56G SSD系统盘,160T SAS数据盘,流量是每月200T,1Gbps带宽,配5...

Sharktech云服务器35折年付33美元起,2G内存/40G硬盘/4TB流量/多机房可选

Sharktech又称SK或者鲨鱼机房,是一家主打高防产品的国外商家,成立于2003年,提供的产品包括独立服务器租用、VPS云服务器等,自营机房在美国洛杉矶、丹佛、芝加哥和荷兰阿姆斯特丹等。之前我们经常分享商家提供的独立服务器产品,近期主机商针对云虚拟服务器(CVS)提供优惠码,优惠后XS套餐年付最低仅33.39美元起,支持使用支付宝、PayPal、信用卡等付款方式。下面以XS套餐为例,分享产品配...

ATCLOUD-KVM架构的VPS产品$4.5,杜绝DDoS攻击

ATCLOUD.NET怎么样?ATCLOUD.NET主要提供KVM架构的VPS产品、LXC容器化产品、权威DNS智能解析、域名注册、SSL证书等海外网站建设服务。 其大部分数据中心是由OVH机房提供,其节点包括美国(俄勒冈、弗吉尼亚)、加拿大、英国、法国、德国以及新加坡。 提供超过480Gbps的DDoS高防保护,杜绝DDoS攻击骚扰,比较适合海外建站等业务。官方网站:点击访问ATCLOUD官网活...

ftp服务器架设为你推荐
yuming域名的含义服务器租用服务器租用是什么?服务器托管是什么?两者有什么优点和缺点?网站服务器租用网站的服务器买哪里的最好,还有租用一年大概多少钱???急!!!天津虚拟主机在天津哪个地方能买到较好的价格又实惠还可以送货上门的虚拟主机!深圳虚拟主机深圳鼎峰网络科技 虚拟主机空间怎么样美国虚拟主机推荐美国独立ip虚拟主机哪儿有,推荐下?万网域名查询如何查询万网域名解析成功已备案域名什么是微信已备案域名com域名.com域名年费多少?域名大全有哪些网址之家
广州服务器租用 域名解析服务器 草根过期域名 圣迭戈 紫田 日志分析软件 创宇云 mysql主机 eq2 一元域名 java空间 申请个人网站 谁的qq空间最好看 web服务器安全 上海服务器 网站在线扫描 创建邮箱 我的世界服务器ip 摩尔庄园注册 云服务是什么意思 更多