首页 > 系统相关 >Linux环境ftp搭建及问题总结

Linux环境ftp搭建及问题总结

时间:2024-06-23 22:03:44浏览次数:28  
标签:ftp chroot vsftpd etc enable 文件 Linux 搭建

 环境:centos 7.0

一、安装软件

vsftpd - 服务器端

rpm -qa |grep vsftpd

      yum  -y   install  vsftpd

ftp 客户端登录ftp服务器 或者lftp

yum -y  install ftp

二、启动服务

systemctl  restart  vsftpd

默认共享目录为 /var/ftp/pub

三、配置ftp

默认配置文件目录:/etc/vsftpd/

vsftpd.conf ——vsftpd的核心配置文件

ftpusers    ——用户登陆黑名单

user_list   ——用户登陆白名单:

          userlist_deny=no只允许该文件下的用户登陆

          userlist_deny=yes(默认)不允许该文件下的用户登陆

四、客户端登录

终端:ftp 172.20.100.161 -u ftpadmin

升级配置:

设置ftp权限 -禁止匿名登录

将配置文件中”anonymous_enable=YES “改为 “anonymous_enable=NO”

添加ftp账号

useradd ftpadmin -s /sbin/nologin –d  家目录(即该用户的共享目录) #创建本地禁止登录用户,如不存在需要创建并设置共享目录相应权限

如: chmod -R o+w /var/www/html/  

passwd ftpadmin  #修改用户密码

配置文件常用说明:

anonymous_enable=NO #允许匿名用户访问

anon_upload_enable=YES #允许匿名用户上传文件并可以创建目录

anon_mkdir_write_enable=YES

local_enable=YES  # 允许本地用户登录

local_root=/var/www/html:设置本地用户的根目录为/var/www/html

chroot_list_enable=YES:激chroot 功能

chroot_list_file=/etc/vsftpd/chroot_list:设置锁定用户在根目录中的列表文件。此文件存放要锁定的用户名 ,使用了chroot需建立/etc/vsftpd/chroot_list 文件,如添加team1 和team2 帐号

设置指定的用户执行chroot,按照如下方法进行设置:

chroot_local_user=NO

chroot_list_enable=YES

chroot_list_file=/etc/vsftpd.chroot_list

设置后,只有/etc/vsftpd.chroot_list文件中指定的用户才能够执行chroot命令。

在使用FTP服务的过程中,可以使该服务在非标准端口(非21端口)工作,不过要完成这项工作,须要使vsftpd服务器运行在独立启动方式下,而且要配置vsftpd的主配置文件/etc/vsftpd/vsftpd.conf,将listen_port=10003或者是其他端口号的选项加入该文件即可,然后要重新启动vsftpd守护进程

 

常见问题解决:

报错: vsftpd 530 login incorrect

1.密码错误。

2.检查/etc/vsftpd/vsftpd.conf配置

vim /etc/vsftpd/vsftpd.con

local_enable=YES  

pam_service_name=vsftpd    //这里重要,有人说ubuntu是pam_service_name=ftp,可以试试

userlist_enable=YES 

3.检查/etc/pam.d/vsftpd

vim /etc/pam.d/vsftpd

注释掉

#auth    required pam_shells.so

最后无论哪种情况 重启试试

sudo service vsftpd restart

基础命令

进入想要连接的FTP站点后,用户就可以进行相应的文件传输操作了,其中一些重要 的命令及相似的命令 如下:

1、HELP、、RHELP、REMOTEHELP

HELP显示LOCAL端的命令说明,若不接受则显示所有可用命令;

?相当于HELP,例如:?CD:

RHELP同HELP,只是它用来显示REMOTE端的命令说明;

REMOTEHELP相当于RHELP。

2、ASC(ASCll)、bin(BINARY)、IMAGE、TYPE

ASCⅡ切换传输模式为文字模式(只能用来传送DOC文件,因为是7-BIT);

BINARY切换传输模式为二进制模式(除文字文件外皆用此模式);

IMAGE相当于BINARY:

TYPE让你更改或显示传输模式。

3、BYE、QUIT

BYE退出FTP:

QUIT相当于BYE。

4、CD、CDUP、LCD、P~WD、 !

CD改变当前工作目录,例如:CD\PUB;

CDUP回到上一层目录,相当于你打CD..:

LCD让你更改或显示LOCAL端的工作目录,例如:LCD\TMP;

PWD显示的工作目录(REMOTE端):

!让你执行外壳命令,例如:!LS。

5、DELETE、MDELETE、RENAME

DELETE删除REMOTE端的文件:

MDELETE批量删除文件,需配合?或,*

RENAME更改REMOTE端的文件名。

6、GET、MGET、PUT、MPUT、RECV、SEND

GET下传文件;

MGET批量下传文件,需配合万用字元,例如:MGET*.GZ;

PUT上传文件;

MPUT批量上传文件,需配合万用字元;

RECV相当于GET(RECV为RECEIVE的简写):

SEND相当于PUT。

7、HASH、PROMPT、VERBOSE、STATUS、BELL

HASH切换#字号的出现,每一个#字号表示传送了1024/8192BYTES:

PROMPT切换iNTERACTⅣEON/OFF;

VERBOSE切换所有文件传输过程的显示;

STATUS显示的一些参数:

BELL当指令做完时会发出叫声。

8、LS、DIR、MLS、MDIR、MKDIR、RMDIR

LS有点像UNIX下的LS(LIST)命令:

DIR相当于LS-L(LIST-LONG);

MLS只是将远端某目 录下的文件存于LOCAL端的某文件里;

MDIR相当于MLS;

MKDIR像DOS下的MD(创建子目录)一样:

RMDIR像DOS下的RD(删除子目录)一样。

9、OPEN、CLOSE、DISCONNECT、USER

OPEN连接某个远端FTP服务器

CLOSE关闭连接; DISCONNECT相当于CLOSE;

USER再输入一次用户名和口令(有点像UNⅨ下的SU)

标签:ftp,chroot,vsftpd,etc,enable,文件,Linux,搭建
From: https://blog.csdn.net/weixin_42791220/article/details/139782508

相关文章

  • 最全Redis数据库Linux安装
    概念所有的I/O操作全在内存中进行,速度非纯快,性能非常搞。如果断电或停止服务,数据就会消失,而内存型数据库恰好可以弥补类似于MySQL等关系型数据库在硬盘当中进行I/O操作的速度上的局限。redis是key-values键值对的存储格式,非关系型安装过程安装redis数据库之前确保在Linux......
  • 玩转zencart自助搭建卖货商城,zencart外贸建站完全实操手册-36节课
    课程目录:1-你也可用zencart自助建站1.mp42-Zencart它能做什么1.mp43-Zencart使用所需环境和条件1.mp44-zencart环境工具xampp安装1.mp45-zencart安装演示1.mp46-模板切换不带mysql数据库1.mp47-手动配置带sql数据库模板1.mp48-网站标题关键词描述设置1.mp49-网站logo......
  • Linux 7种 进程间通信方式
    传统进程间通信       通过文件实现进程间通信必须人为保证先后顺序       A--->硬盘--->B(B不知道A什么时候把内容传到硬盘中)1.无名管道2.有名管道3.信号IPC进程间通信4.消息队列5.共享内存6.信号灯集7.socket通信一、无名管道(亲缘关系的进程  ......
  • Rocky Linux捣鼓记录(五):安装flatpak软件仓库,并更换国内源
    1、安装flatpaksudodnfinstallflatpak2、安装flatpak的官方源先安装官方仓库:注意此处命名为:flathub,这个名称是用来区分仓库的,后续修改国内源也要指定这个名称flatpakremote-add--if-not-existsflathubhttps://dl.flathub.org/repo/flathub.flatpakrepo3、更改为上海......
  • AI 开发平台(Coze)搭建小游戏《挑战花光10亿》
    前言本文讲解如何从零开始,使用扣子平台去搭建一个小游戏这是成品链接:挑战花光10亿-扣子AIBot(coze.cn)欢迎大家去体验一下效果正文什么是coze平台?扣子(Coze)是字节跳动推出的一站式AI开发平台,它支持用户在30秒内无代码生成AI机器人,并一键发布到各大社交平......
  • 【Linux】进程间通信_1
    文章目录七、进程间通信1.进程间通信分类管道未完待续七、进程间通信进程间由于进程具有独立性,所以不可以直接进行数据传递。但是我们通常需要多个进程协同,共同完成一件事,所以我们需要进程间通信的手段。进程间通信的本质就是先让不同的进程看到同一份资源,这个......
  • 使用cloudflare-works搭建自己docker加速源
    在网上看到了许多教程,基本上部署都是手动的,docker镜像都要手动输入选择重新部署。要么都是些基本镜像仓库。视频地址:【CloudFlare搭建doker加速源。都这么长时间了,你的docker还是跑不通吗?】https://www.bilibili.com/video/BV1F533eHEsB/?share_source=copy_web&vd_source=0742......
  • petalinux调试常用命令总结
    petalinux调试常用命令总结1.创建新的工程:zynq:petalinux-create-tproject--templatezynq--nametest_projzynqMP:petalinux-create-tproject--templatezynqMP--namezcu102-mp2.创建新的app:petalinux-create-tapps--templatec--namemyapp--enable3.创......
  • 【Linux详解】冯诺依曼架构 | 操作系统设计 | 斯坦福经典项目Pintos
    目录一.冯诺依曼体系结构(VonNeumannArchitecture)注意事项存储器的意义:缓冲数据流动示例二.操作系统(OperatingSystem)操作系统的概念操作系统的定位与目的操作系统的管理系统调用和库函数操作系统的管理:sum三.系统调用实现示例:Pintos项目Step1:进入ex......
  • Linux开发讲课12--- /proc 目录
    /proc 目录在Linux系统中是一个虚拟文件系统,它不是存储在硬盘上的常规文件系统,而是由内核在内存中动态生成的。这个目录主要用于提供系统和进程的运行时信息,它有非常多的用途,但大部分人却不懂使用。本文我将详细介绍 /proc 目录的一些主要用途。一.系统信息1.CPU信息......