注:ftp只能走相对路径传输文件,需要先cd到文件路径,然后ftp登陆,put上传,get下载

1. 装包与卸载

yum -y install vsftpd

yum -y autoremove vsftpd&&rm -rf /etc/vsftpd

2. 配置

先看相关文件介绍

[root@haproxy2 ~]# ls /etc/vsftpd/
ftpusers user_list vsftpd.conf vsftpd_conf_migrate.sh
[root@haproxy2 ~]# head -1 /etc/vsftpd/ftpusers #黑名单:拒绝用户清单
# Users that are not allowed to login via ftp
[root@haproxy2 ~]# head -6 /etc/vsftpd/user_list #白名单:允许用户清单,添加的新用户需要追加到此文件中
# vsftpd userlist
# If userlist_deny=NO, only allow users in this file
# If userlist_deny=YES (default), never allow users in this file, and
# do not even prompt for a password.
# Note that the default vsftpd pam config also checks /etc/vsftpd/ftpusers
# for users that are denied.
[root@haproxy2 ~]# echo myftp >> /etc/vsftpd/user_list 

再根据需要修改配置文件

[root@haproxy2 ~]# grep userlist /etc/vsftpd/vsftpd.conf
userlist_enable=YES
[root@haproxy2 ~]# echo userlist_deny=NO >> /etc/vsftpd/vsftpd.conf
[root@haproxy2 ~]# grep -n userlist /etc/vsftpd/vsftpd.conf
126:userlist_enable=YES
127:userlist_deny=NO
[root@haproxy2 ~]# useradd -m myftp -d /home/myftp -s /sbin/nologin
[root@haproxy2 ~]# echo myftp | passwd myftp --stdin
Changing password for user myftp.
passwd: all authentication tokens updated successfully.
[root@haproxy2 ~]# chmod -R 755 /home/myftp #权限很关键,nologin默认700的权限,ftp登陆后会无法上传文件
[root@haproxy2 ~]# vi /etc/vsftpd/vsftpd.conf   #修改ftp目录
128:anon_root=/home/myftp 
129:local_root=/home/myftp
[root@haproxy2 ~]# grep -nE 'local_root |anon_root|chroot_' /etc/vsftpd/vsftpd.conf  #以下视需要而选择是否配置
95:# directory. If chroot_local_user is YES, then this list becomes a list of
100:#chroot_local_user=YES
101:#chroot_list_enable=YES
103:#chroot_list_file=/etc/vsftpd/chroot_list
[root@haproxy2 ~]# grep -nE 'local_root|anon_root|chroot_' /etc/vsftpd/vsftpd.conf #设置local_root切换默认目录,要切换目录必须开放chroot_list
95:# directory. If chroot_local_user is YES, then this list becomes a list of
100:chroot_local_user=YES
101:chroot_list_enable=YES
103:chroot_list_file=/etc/vsftpd/chroot_list

[root@haproxy2 ~]# echo myftp >> /etc/vsftpd/chroot_list

最后改一下pam文件,这一步非常关键,否则nologin的用户登陆不进来,但此配置可能会影响到lftp,sftp,xftp等服务

[root@haproxy2 ~]# cat /etc/pam.d/vsftpd
#%PAM-1.0
session optional pam_keyinit.so force revoke
auth required pam_listfile.so item=user sense=deny file=/etc/vsftpd/ftpusers onerr=succeed
auth required pam_shells.so
auth include password-auth
account include password-auth
session required pam_loginuid.so
session include password-auth [root@haproxy2 ~]# sed -i 's/pam_shells/pam_nologin/' /etc/pam.d/vsftpd
[root@haproxy2 ~]# systemctl restart vsftpd

查看目录

!代表非ftp内部命令,即本地操作命令。

!+命令,跟shell脚本有相似之处,从当前目录开始执行,结束后会到当前目录

如:!cd /home/oracle&&pwd;    #看到的会是/home/oracle ;然后再次!pwd 看到的还是当前目录,而不是/home/oracle

ftp> pwd  #ftp的主目录
257 "/"
ftp> !pwd #登陆ftp前所在的本地目录
/root
ftp>

centos8安装vsftpd的更多相关文章

  1. CentOS 6.4 下安装vsftpd

    概述: vsftpd是Linux下比较著名的FTP服务器,搭建FTP服务器当然首选这个. 本文介绍了在CentOS 6.4下安装vsftpd.配置虚拟用户登录FTP的过程. 正文: 一:安装vsftp ...

  2. Linux下安装vsftpd

    一.安装vsftpd及相关依赖包 #vsftpd安装程序 yum install vsftpd #vsftpd虚拟登陆账户必要依赖包 yum install pam* db4* 安装完之后,vsftp ...

  3. Centos 安装vsftpd 服务器

    一:检查有没有安装vsftpd 二:安装vsftpd 三:安装之后重启 四:修改vsftpd配置文件 配置文件路径在/etc/vsftpd目录下 默认是注释掉的,把#号去掉 然后重启vsftpd 五: ...

  4. CentOS6.X安装vsftpd服务

    #-----------------CentOS6.X安装VSFTPD服务 #! /bin/sh #1.关闭selinux setenforce 0 sed -i 's/enforcing/disab ...

  5. CentOS安装vsftpd

    版本:vsftpd-3.0.2-9.el7.x86_64(CentOS是64位的). 1.安装vsftpd yum -y install vsftpd 2.配置vsftpd 修改配置前把原始配置文件备 ...

  6. 安装 vsftpd

    (1)安装vsftpdsudo apt-get install vsftpd (2)配置sudo vi /etc/vsftpd.conf #anonymous_enable=YESlocal_enab ...

  7. Centos 6.4上面用Shell脚本一键安装vsftpd

    Centos 6.4上面用Shell脚本一键安装vsftpd install.sh #!/bin/bash if [ `uname -m` == "x86_64" ];then m ...

  8. 3.linux安装vsftpd服务

    1.首先查看本地是否安装了vsftpd rpm -qa |grep vsftpd 2.安装vsftpd: yum install vsftpd 3.查询当前ftp状态 chkconfig --list ...

  9. centos6 安装vsftpd

    centos6 安装vsftpd vsftpd一般选择yum安装,以下是安装和配置过程 如果是centos6想要安装的话一般是编译安装 1.安装 yum安装 yum install vsftpd 编译 ...

  10. CentOS下安装vsftpd架设ftp服务器

    什么是vsftpd vsftpd是一款在Linux发行版中最受推崇的FTP服务器程序.特点是小巧轻快,安全易用. 首先安装vsftpd这个软件,命令是,yum install vsftpd servi ...

随机推荐

  1. Linux之如何配置IPV6网络

    配置IPV6地址小笔记 #例题: 1)为server添加一个IPv6地址fd00:ba5e:ba11:10::10/64: 2)为client添加一个IPv6地址fd00:ba5e:ba11:10:: ...

  2. 再谈NULL和nullptr(C++11)区别

    在谈NULL和nullptr区别之前,我们先看段代码: #include "stdafx.h" #include <iostream> using namespace ...

  3. .NET 反向代理-YARP

    什么是 YARP YARP (另一个反向代理) 设计为一个库,提供核心代理功能,你可以根据应用程序的特定需求进行自定义. YARP 是使用 .NET的基础架构构建在 .NET上的.YARP 的主要不同 ...

  4. re.sub()用法

    原文链接:https://blog.csdn.net/jackandsnow/article/details/103885422

  5. LVGL 模拟仿真(Windows+CodeBlocks)

    一.准备材料 Code Blocks官网:https://www.codeblocks.org/ Code Blocks 汉化包:链接: https://pan.baidu.com/s/12zB5bD ...

  6. Docker Compose配置文件详解(V3)

    Docker Compose配置文件是Docker Compose的核心,用于定义服务.网络和数据卷.格式为YAML,默认路径为./docker-compose.yml,可以使用.yml或.yaml扩 ...

  7. SpringBoot的starter到底是什么?

    前言 我们都知道,Spring的功能非常强大,但也有些弊端.比如:我们需要手动去配置大量的参数,没有默认值,需要我们管理大量的jar包和它们的依赖. 为了提升Spring项目的开发效率,简化一些配置, ...

  8. .net程序员的android studio 初体验 (环境设置2022年10月)

      很久以前用DevExtreme写的一个Hybird APP要添加蓝牙打印功能,但是用来打包APP的phonegap被adobe关闭了,所以,只能自己用cordova去打包安卓APP,不得已,研究了 ...

  9. POJ3260 The Fewest Coins(混合背包)

    支付对应的是多重背包问题,找零对应完全背包问题. 难点在于找上限T+maxv*maxv,可以用鸽笼原理证明,实在想不到就开一个尽量大的数组. 1 #include <map> 2 #inc ...

  10. 驱动开发:内核R3与R0内存映射拷贝

    在上一篇博文<驱动开发:内核通过PEB得到进程参数>中我们通过使用KeStackAttachProcess附加进程的方式得到了该进程的PEB结构信息,本篇文章同样需要使用进程附加功能,但这 ...