阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

vsftp部署和优化

443次阅读
没有评论

共计 5900 个字符,预计需要花费 15 分钟才能阅读完成。

除了 pureftp 之外,常见的还有系统自带的 ftp 工具:vsftp。本节介绍 vsftp 的安装使用。

服务端 IP:192.168.147.139 客户端 IP:192.168.147.140
服务端 192.168.147.139:

安装 vsftpd:
[root@cp3 ~]# yum install -y vsftpd

安装完成后就可以使用默认配置启动服务:
[root@cp3 ~]# /etc/init.d/vsftpd start

为 vsftpd 启动 vsftpd:[确定]

查看进程:
[root@cp3 ~]# ps aux |grep vsftpd
root      1229  0.0  0.0  7180  660 ?        Ss  21:40  0:00 /usr/sbin/vsftpd /etc/vsftpd/vsftpd.conf
root      1232  0.0  0.0  5980  748 pts/0    S+  21:43  0:00 grep vsftpd

查看端口:
[root@cp3 ~]# netstat -lnp |grep vsftpd
tcp        0      0 0.0.0.0:21                  0.0.0.0:*                  LISTEN      1229/vsftpd

默认的配置允许使用系统用户登录 ftp 服务器:
[root@cp3 ~]# useradd rachy
[root@cp3 ~]# passwd rachy
更改用户 rachy 的密码。
新的 密码:
重新输入新的 密码:
passwd:所有的身份验证令牌已经成功更新。

在 rachy 的家目录下写点东西:
[root@cp3 ~]# cd /home/rachy
[root@cp3 rachy]# echo “11111”>1.txt
[root@cp3 rachy]# mkdir test
[root@cp3 rachy]# ls
1.txt  test
客户端 192.168.147.140:

安装 lftp 命令:
[root@cp4 ~]# yum install -y lftp
登陆 ftp 服务器:
[root@cp4 ~]# lftp rachy@192.168.147.139
口令:
lftp rachy@192.168.147.139:~> ls
-rw-r–r–    1 0        0              6 Mar 10 13:51 1.txt
drwxr-xr-x    2 0        0            4096 Mar 10 13:51 test
lftp rachy@192.168.147.139:~>?
输入?查看 ftp 支持的命令
默认的配置允许客户端用户切换到任意其他非 /root 目录下,进行一些操作,很不安全:
lftp rachy@192.168.147.139:~> cd /
cd 成功, 当前目录 =/
lftp rachy@192.168.147.139:/> ls
dr-xr-xr-x    2 0        0            4096 Feb 22 12:55 bin
dr-xr-xr-x    5 0        0            1024 Feb 22 12:57 boot
drwxr-xr-x  18 0        0            3720 Mar 10 13:38 dev
drwxr-xr-x  75 0        0            4096 Mar 10 13:45 etc
drwxr-xr-x    3 0        0            4096 Mar 10 13:45 home
dr-xr-xr-x  15 0        0          12288 Feb 22 12:55 lib
drwx——    2 0        0          16384 Feb 22 12:52 lost+found
drwxr-xr-x    2 0        0            4096 Sep 23  2011 media
drwxr-xr-x    2 0        0            4096 Sep 23  2011 mnt
drwxr-xr-x    2 0        0            4096 Sep 23  2011 opt
dr-xr-xr-x  126 0        0              0 Mar 10 13:37 proc
dr-xr-x—    3 0        0            4096 Mar 02 20:56 root
dr-xr-xr-x    2 0        0          12288 Feb 22 12:56 sbin
drwxr-xr-x    2 0        0            4096 Feb 22 12:52 selinux
drwxr-xr-x    2 0        0            4096 Sep 23  2011 srv
drwxr-xr-x  13 0        0              0 Mar 10 13:37 sys
drwxrwxrwt    3 0        0            4096 Mar 10 13:40 tmp
drwxr-xr-x  12 0        0            4096 Feb 22 12:53 usr
drwxr-xr-x  19 0        0            4096 Mar 10 13:40 var

为了不让这种情况发生,我们有两种办法限制用户的访问权限:
1. 使用系统用户,打开 chroot 限制选项
2. 建立一个虚拟用户,将真实用户映射到该虚拟用户
1. 在服务端 192.168.147.139 上,编辑配置文件:
[root@cp3 rachy]# vim /etc/vsftpd/vsftpd.conf
打开行:chroot_local_user=YES
如果需要限制多个用户,那么需要:
(1)打开行:chroot_list_enable=YES
(2)打开行:chroot_list_file=/etc/vsftpd/chroot_list
(3)将需要限制的用户添加到 /etc/vsftpd/chroot_list 文件中
重启 vsftpd 服务:
[root@cp3 rachy]# /etc/init.d/vsftpd restart
关闭 vsftpd:[确定]
为 vsftpd 启动 vsftpd:[确定]
在客户端 192.168.147.140 上重新连接服务器:
[root@cp4 ~]# lftp rachy@192.168.147.139
口令:
lftp rachy@192.168.147.139:~> cd /
cd 成功, 当前目录 =/
lftp rachy@192.168.147.139:/> cd /etc
cd: Access failed: 550 Failed to change directory. (/etc)
lftp rachy@192.168.147.139:/> cd /tmp
cd: Access failed: 550 Failed to change directory. (/tmp)
发现只能切换到 / 目录,但是其他所有目录都不能进入。
2. 在服务端 192.168.147.139 上,创建一个与虚拟用户对应的系统用户 virftp,禁止其登录:
[root@cp3 rachy]# useradd virftp -s /sbin/nologin
创建虚拟用户的明文用户名和密码文件:
[root@cp3 rachy]# vim /etc/vsftpd/vsftpd_login
test1
111222aaa
test2
aaa111ddd
更改其权限为 600:
[root@cp3 rachy]# chmod 600 /etc/vsftpd/vsftpd_login
将明文用户名密码文件转化成加密的 vsftpd 服务能够识别的二进制的库文件:
[root@cp3 rachy]# db_load -T -t hash -f /etc/vsftpd/vsftpd_login /etc/vsftpd/vsftpd_login.db
创建虚拟用户配置文件存放的目录:
[root@cp3 rachy]# mkdir /etc/vsftpd/vsftpd_user_conf
[root@cp3 rachy]# cd /etc/vsftpd/vsftpd_user_conf/
创建跟用户名同名的配置文件:
[root@cp3 vsftpd_user_conf]# vim test1
local_root=/home/virftp/test1
anonymous_enable=NO
write_enable=YES
local_umask=022
anon_upload_enable=NO
anon_mkdir_write_enable=NO
idle_session_timeout=600
data_connection_timeout=120
max_clients=10
max_per_ip=5
local_max_rate=50000
创建 test1 可以访问的目录:
[root@cp3 vsftpd_user_conf]# mkdir /home/virfrp/test1
授权给映射到的系统用户 virftp:
[root@cp3 vsftpd_user_conf]# chown -R virftp.virftp /home/virfrp/test1/
编辑认证相关的配置文件 pam,配置认证的方式:
[root@cp3 vsftpd_user_conf]# vim /etc/pam.d/vsftpd
在最前面添加两行:
#%PAM-1.0
auth sufficient /lib/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login
account sufficient /lib/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login
注意:在配置上述库文件路径时需要事先确保该文件存在,上面是 32 位系统的路径,64 位系统的路径请改成 /lib64/security/pam_userdb.so:
[root@cp3 vsftpd_user_conf]# ls /lib/security/pam_userdb.so
/lib/security/pam_userdb.so
[root@cp3 vsftpd_user_conf]# ls /lib64/security/pam_userdb.so
编辑配置文件,修改几处内容:
[root@cp3 vsftpd_user_conf]# vim /etc/vsftpd/vsftpd.conf
anonymous_enable=NO
anon_upload_enable=NO
anon_mkdir_write_enable=NO
chroot_local_user=YES
在最后面添加:
guest_enable=YES
guest_username=virftp
virtual_use_lcoal_privs=YES
user_config_dir=/etc/vsftpd/vsftpd_user_conf
重启 vsftpd 服务:
[root@cp3 vsftpd_user_conf]# /etc/init.d/vsftpd restart
关闭 vsftpd:[确定]
为 vsftpd 启动 vsftpd:[确定]
在 test1 家目录下写点东西:
[root@cp3 vsftpd_user_conf]# cd /home/virftp/test1/
[root@cp3 test1]# echo “11111”>1.txt
[root@cp3 test1]# mkdir 2222
在本地测试:
[root@cp3 vsftpd_user_conf]# yum install -y lftp
[root@cp3 vsftpd_user_conf]# lftp test1@127.0.0.1
口令:
lftp test1@127.0.0.1:~> cd /etc
cd: Access failed: 550 Failed to change directory. (/etc)
lftp test1@127.0.0.1:~> ls
-rw-r–r–    1 0        0              6 Mar 10 15:55 1.txt
drwxr-xr-x    2 0        0            4096 Mar 10 15:55 2222
在客户端测试:
[root@cp4 ~]# lftp test1@192.168.147.139
口令:
lftp test1@192.168.147.139:/> cd /etc
cd: Access failed: 550 Failed to change directory. (/etc)
lftp test1@192.168.147.139:/> ls
-rw-r–r–    1 0        0              6 Mar 10 15:55 1.txt
drwxr-xr-x    2 0        0            4096 Mar 10 15:55 2222

在浏览器中测试:

vsftp 部署和优化

vsftp 部署和优化

也可以在 Windows 下使用 ftp 客户端访问。

FTP 协议详解与 vsftpd 在 Linux 上的安装配置 http://www.linuxidc.com/Linux/2016-09/134831.htm

玩转 vsftpd 服务器的四大高级配置:http://www.linuxidc.com/Linux/2013-09/90565.htm

vsFTPd 配置教程:http://www.linuxidc.com/Linux/2013-09/90562.htm

Ubuntu 实用简单的 FTP 架设 http://www.linuxidc.com/Linux/2012-02/55346.htm

Ubuntu 上架设 FTP 服务器和 Apache 服务器 http://www.linuxidc.com/Linux/2011-04/35295.htm

Ubuntu 13.04 安装 LAMP\vsftpd\Webmin\phpMyAdmin 服务及设置 http://www.linuxidc.com/Linux/2013-06/86250.htm

RHEL6 平台下 SeLinux 和 vsftpd 的匿名上传的简单案例 http://www.linuxidc.com/Linux/2013-04/82300.htm

Linux 系统 vsftpd 源码安装 http://www.linuxidc.com/Linux/2013-03/81475.htm

openSUSE 13.2/13.1 下安装配置 FTP 服务器 vsftpd  http://www.linuxidc.com/Linux/2014-12/110070.htm

CentOS7 基于虚拟用户的 vsftpd  http://www.linuxidc.com/Linux/2016-11/137150.htm

本文永久更新链接地址:http://www.linuxidc.com/Linux/2017-03/142188.htm

正文完
星哥玩云-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2022-01-21发表,共计5900字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中

星哥玩云

星哥玩云
星哥玩云
分享互联网知识
用户数
4
文章数
19351
评论数
4
阅读量
7985246
文章搜索
热门文章
星哥带你玩飞牛NAS-6:抖音视频同步工具,视频下载自动下载保存

星哥带你玩飞牛NAS-6:抖音视频同步工具,视频下载自动下载保存

星哥带你玩飞牛 NAS-6:抖音视频同步工具,视频下载自动下载保存 前言 各位玩 NAS 的朋友好,我是星哥!...
星哥带你玩飞牛NAS-3:安装飞牛NAS后的很有必要的操作

星哥带你玩飞牛NAS-3:安装飞牛NAS后的很有必要的操作

星哥带你玩飞牛 NAS-3:安装飞牛 NAS 后的很有必要的操作 前言 如果你已经有了飞牛 NAS 系统,之前...
我把用了20年的360安全卫士卸载了

我把用了20年的360安全卫士卸载了

我把用了 20 年的 360 安全卫士卸载了 是的,正如标题你看到的。 原因 偷摸安装自家的软件 莫名其妙安装...
再见zabbix!轻量级自建服务器监控神器在Linux 的完整部署指南

再见zabbix!轻量级自建服务器监控神器在Linux 的完整部署指南

再见 zabbix!轻量级自建服务器监控神器在 Linux 的完整部署指南 在日常运维中,服务器监控是绕不开的...
飞牛NAS中安装Navidrome音乐文件中文标签乱码问题解决、安装FntermX终端

飞牛NAS中安装Navidrome音乐文件中文标签乱码问题解决、安装FntermX终端

飞牛 NAS 中安装 Navidrome 音乐文件中文标签乱码问题解决、安装 FntermX 终端 问题背景 ...
阿里云CDN
阿里云CDN-提高用户访问的响应速度和成功率
随机文章
每天一个好玩的网站-手机博物馆-CHAZ 3D Experience

每天一个好玩的网站-手机博物馆-CHAZ 3D Experience

每天一个好玩的网站 - 手机博物馆 -CHAZ 3D Experience 一句话介绍:一个用 3D 方式重温...
让微信公众号成为 AI 智能体:从内容沉淀到智能问答的一次升级

让微信公众号成为 AI 智能体:从内容沉淀到智能问答的一次升级

让微信公众号成为 AI 智能体:从内容沉淀到智能问答的一次升级 大家好,我是星哥,之前写了一篇文章 自己手撸一...
星哥带你玩飞牛NAS-8:有了NAS你可以干什么?软件汇总篇

星哥带你玩飞牛NAS-8:有了NAS你可以干什么?软件汇总篇

星哥带你玩飞牛 NAS-8:有了 NAS 你可以干什么?软件汇总篇 前言 哈喽各位玩友!我是是星哥,不少朋友私...
星哥带你玩飞牛NAS-7:手把手教你免费内网穿透-Cloudflare tunnel

星哥带你玩飞牛NAS-7:手把手教你免费内网穿透-Cloudflare tunnel

星哥带你玩飞牛 NAS-7:手把手教你免费内网穿透 -Cloudflare tunnel 前言 大家好,我是星...
星哥带你玩飞牛NAS-6:抖音视频同步工具,视频下载自动下载保存

星哥带你玩飞牛NAS-6:抖音视频同步工具,视频下载自动下载保存

星哥带你玩飞牛 NAS-6:抖音视频同步工具,视频下载自动下载保存 前言 各位玩 NAS 的朋友好,我是星哥!...

免费图片视频管理工具让灵感库告别混乱

一言一句话
-「
手气不错
自己手撸一个AI智能体—跟创业大佬对话

自己手撸一个AI智能体—跟创业大佬对话

自己手撸一个 AI 智能体 — 跟创业大佬对话 前言 智能体(Agent)已经成为创业者和技术人绕...
每年0.99刀,拿下你的第一个顶级域名,详细注册使用

每年0.99刀,拿下你的第一个顶级域名,详细注册使用

每年 0.99 刀,拿下你的第一个顶级域名,详细注册使用 前言 作为长期折腾云服务、域名建站的老玩家,星哥一直...
让微信公众号成为 AI 智能体:从内容沉淀到智能问答的一次升级

让微信公众号成为 AI 智能体:从内容沉淀到智能问答的一次升级

让微信公众号成为 AI 智能体:从内容沉淀到智能问答的一次升级 大家好,我是星哥,之前写了一篇文章 自己手撸一...
浏览器自动化工具!开源 AI 浏览器助手让你效率翻倍

浏览器自动化工具!开源 AI 浏览器助手让你效率翻倍

浏览器自动化工具!开源 AI 浏览器助手让你效率翻倍 前言 在 AI 自动化快速发展的当下,浏览器早已不再只是...
颠覆 AI 开发效率!开源工具一站式管控 30+大模型ApiKey,秘钥付费+负载均衡全搞定

颠覆 AI 开发效率!开源工具一站式管控 30+大模型ApiKey,秘钥付费+负载均衡全搞定

  颠覆 AI 开发效率!开源工具一站式管控 30+ 大模型 ApiKey,秘钥付费 + 负载均衡全...