热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Centos7FTP服务安装,CentosFTP安装配置

 一、安装FTP服务端yuminstall-yvsftpd 安装ftp客户端(可省略)yuminstall-yftp 二、FTP服务配置1、进入FTP配置文件目录cdetcvsft

 


一、安装FTP服务端

yum install -y vsftpd

 

安装ftp客户端(可省略)

yum install -y ftp

 


二、FTP服务配置

1、进入FTP配置文件目录

cd /etc/vsftpd

 


2、备份配置文件vsftpd.conf和去掉所有注释

mv vsftpd.conf vsftpd.conf.bak
grep -v "#" vsftpd.conf.bak > vsftpd.conf

 


3、编辑配置文件

vi vsftpd.conf

 

修改的内容


#修改
#是否支持匿名用户,默认YES,改成NO表示需要用户名密码登录不允许匿名登录
anonymous_enable
=NO

#匿名上传。首先,文件系统上用户的家目录,要具备写权限。其次,ftp服务器要开启允许匿名上传的配置
anon_upload_enable
=YES

#以下取消注释
#允许匿名用户上传,建立目录
anon_mkdir_write_enable
=YES

#默认只能下载全部读的文件。这句话的意思是说,如果启动了这句话,则匿名用户只能下载所有用户都具备读权限的文件。如果有一个文件,有一个用户不剧本读权限,匿名用户就不能够下载。
anon_world_readable_only
=YES

#匿名用户能否删除和修改上传的文件
anon_other_write_enable
=YES

#指定匿名上传文件的umask值。umask的值可以直接影响到上传文件的权限。
anon_umask
=077

#指定上传文件的默认的所有者和权限。 完成了这些指定之后,匿名用户上传的元数据就是我们指定的那些内容。
chown_uploads
=YES
#chown_username
=wang
#chown_upload_mode
=0644

#所有系统用户都映射成guest用户,但是映射的guest账户,需要人为地去指定下。
#guest_enable
=YES
#guest_username
=vsftpd

#是否允许Linux用户登陆,默认是允许的,当然也可以禁止。
local_enable
=YES

#是否允许Linux用户上传文件,如果用户默认允许登陆的话,linux用户登陆成功之后,默认位于自己的家目录,这时是允许上传文件的。 如果将下面的这句话,改成no,则服务拒绝linux用户上传文件,即便位于自己的家目录也不可以。
#write_enable
=YES

#指定系统用户上传文件的默认权限
#local_umask
=022

#非匿名用户登录所在目录,当使用Linux用户登陆成功之后,就不会默认在自己的家目录了。相反,会位于下面指定的目录里。
#local_root
=/ftproot

#禁锢所有的用户在家目录中的意思是说,用户登陆成功之后,不能够随意切换目录,只能够在自己的家目录中进行操作。
chroot_local_user
=YES

#ASCII码支持
async_abor_enable
=YES
ascii_upload_enable
=YES
ascii_download_enable
=YES

#登录提示信息
ftpd_banner
=Welcome to FTP server.
# 这一句话优先生效
#banner_file
=/etc/vsftpd/ftpbanner.txt

#设置是否使用当地时间。默认就是YES
use_localtime
=YES

#虚拟用户建立独立的配置文件
user_config_dir
=/etc/vsftpd/conf

listen_port
=21
virtual_use_local_privs
=YES

##被动模式端口
pasv_min_port
=40000
pasv_max_port
=40010

# 被动模式数据连接超时时长,时间单位是秒
accept_timeout
=10
#主动模式数据连接超时时长,时间单位是秒
connect_timeout
=10
#数据连接无数据输超时时长,时间单位是秒
data_connection_timeout
=300
# 无命令操作超时时长,时间单位是秒
idle_session_timeout
=300

allow_writeable_chroot
=YES

 

 


三、创建虚拟用户

创建虚拟用户,是为了避免FTP用户直接登录到服务器


1、创建虚拟用户配置文件

vi ftp_user.conf

 

增加内容:奇数行是账号,偶数行是密码,下面第一行是账号,第二行是密码

ftpuser
ftpuser123

 


2、加密虚拟用户配置文件

db_load -T -t hash -f ftp_user.conf ftp_user.db

如果没有db_load命令,需要安装:yum install db4 db4-utils

改变权限和删除未加密的配置

chmod 600 ftp_user.db
rm -f ftp_user.conf

 


3、修改FTP的访问权限

先备份

cp /etc/pam.d/vsftpd /etc/pam.d/vsftpd.bak

修改权限文件

vi /etc/pam.d/vsftpd

先将配置文件中原有的 auth 及 account 的所有配置行均注释掉(不注释掉虚拟用户会登录不上),添加两行信息

auth required pam_userdb.so db=/etc/vsftpd/ftp_user
account required pam_userdb.so db
=/etc/vsftpd/ftp_user

 


4、增加虚拟用户,只能登录FTP,不能登录后台

useradd -d /home/ftpuser -s /sbin/nologin ftpuser

修改文件夹的拥有者

chown -R ftpuser:ftpuser /home/ftpuser

 


5、虚拟用户配置文件

创建虚拟用户配置文件目录

mkdir -p /etc/vsftpd/conf

 

创建虚拟用户的配置文件(ftpuser文件和刚才创建的数据库文件的用户名必须一致)

vi /etc/vsftpd/conf/ftpuser

 

增加的内容:

#用户的默认登陆目录。也就是FTP用户登陆成功之后的默认路径。
local_root
=/home/ftpuser/ftpuser
write_enable
=YES
anon_world_readable_only
=NO
#虚拟用户上传权限
anon_upload_enable
=YES
#虚拟用户创建文件夹
anon_mkdir_write_enable
=YES
## 虚拟的其他用户对指定用户目录的写权限
anon_other_write_enable
=YES

 

创建FTP传输目录,对应上面的 local_root 配置项

mkdir -p /home/ftpuser/ftpuser
chown ftpuser:ftpuser /home/ftpuser/ftpuser
chmod 775 /home/ftpuser/ftpuser

 


四、开放FTP端口和FTP服务

firewall-cmd --permanent --zOne=public --add-service=ftp
firewall
-cmd --permanent --zOne=public --add-port=21/tcp

#被动模式的端口
firewall
-cmd --permanent --zOne=public --add-port=40000-40010/tcp

#重新加载生效
firewall
-cmd --reload
firewall
-cmd --list-all
firewall
-cmd --zOne=public --list-ports

 

 


五、FTP启动和设置自动启动

#启动
systemctl start vsftpd
#设置自动启动
systemctl enable vsftpd

 

#查看状态
systemctl status vsftpd.service
#重启
systemctl restart vsftpd

 


六、FTP访问地址

ftp://192.168.10.100/

 

 


七、错误解决

1、500 OOPS: vsftpd: cannot locate user specified in 'guest_username':vsftpd

注释下面的配置
#guest_enable
=YES
#guest_username
=vsftpd

 


八、其它命令

#安装filezilla
yum install -y filezilla
运行filezilla
filezilla
&

#Selinux方式:查看防火墙状态
getenforce

#permissive表示:放任的;纵容的;姑息的;

#临时关闭:setenforce
0
setenforce
0 ->permissive

#永久关闭:vim
/etc/sysconfig/selinux
将selinux
=cnforcing改为selinux=disable


Firewall
1.关闭防火墙:service firewalld stop

2.关闭防火墙:systemctl stop firewalld.service

3.禁止防火墙开机启动:systemctl disable firewalld.service

4,查看防火墙状态:firewall-cmd --state

 

 

 

 

(时间宝贵,分享不易,捐赠回馈,^_^)

 

================================

©Copyright 蕃薯耀 2022-04-19

https://www.cnblogs.com/fanshuyao/

今天越懒,明天要做的事越多。



推荐阅读
  • PHP程序员玩转Linux系列 搭建FTP代码开发环境
    PHP程序员玩转Linux系列搭建FTP代码开发环境-PHP程序员玩转Linux系列文章:有些同学可能觉得我写的都是啥yum安装的,随便配置一下而已,没啥技术含量,我的目的是让大家 ... [详细]
  • 阿里云如何部署php(2023年最新分享)
    导读:很多朋友问到关于阿里云如何部署php的相关问题,本文编程笔记就来为大家做个详细解答,供大家参考,希望对大家有所帮助!一起来看看吧!本文目录一览: ... [详细]
  • 如何在服务器主机上实现文件共享的方法和工具
    本文介绍了在服务器主机上实现文件共享的方法和工具,包括Linux主机和Windows主机的文件传输方式,Web运维和FTP/SFTP客户端运维两种方式,以及使用WinSCP工具将文件上传至Linux云服务器的操作方法。此外,还介绍了在迁移过程中需要安装迁移Agent并输入目的端服务器所在华为云的AK/SK,以及主机迁移服务会收集的源端服务器信息。 ... [详细]
  • 本人新手,用Unity3D想做一个简单的赛车游戏,现在的问题是转弯的时候很容易出现翻车的情况,求解决思路比如说你的中心是在(0,0,0),你把他设置成(0,-1.0,0)之类的就可 ... [详细]
  • FTP服务ftp的报错及用户管理
    ftp服务常见报错530报错认证失败(密码错误或者服务端拒绝)550服务本身未开启553文件系统不可写(权限问题)500服 ... [详细]
  • linux 命令——screen
    最近遇到一个东西aria2,这个玩意,这个是啥呢?Aria2是一个轻量级Linux下载软件,支持HTTPHTTPS,FTP,SFTP,BitTorrent和磁力链接(官方版),公司 ... [详细]
  • linux ftp 线程数设置,Linux搭建ftp在windows下这么访问,需要怎么设置【设置vsftp最大连接数和每个ip的最大连接数】...
    文章来源:http:zhidao.baidu.comlink?urlLOfStD1kcxGhI_D5qC7oka3_4QZc1nn1SJwWaSd4onWoVl5Wt ... [详细]
  • CEPH LIO iSCSI Gateway及其使用参考文档
    本文介绍了CEPH LIO iSCSI Gateway以及使用该网关的参考文档,包括Ceph Block Device、CEPH ISCSI GATEWAY、USING AN ISCSI GATEWAY等。同时提供了多个参考链接,详细介绍了CEPH LIO iSCSI Gateway的配置和使用方法。 ... [详细]
  • ShiftLeft:将静态防护与运行时防护结合的持续性安全防护解决方案
    ShiftLeft公司是一家致力于将应用的静态防护和运行时防护与应用开发自动化工作流相结合以提升软件开发生命周期中的安全性的公司。传统的安全防护方式存在误报率高、人工成本高、耗时长等问题,而ShiftLeft提供的持续性安全防护解决方案能够解决这些问题。通过将下一代静态代码分析与应用开发自动化工作流中涉及的安全工具相结合,ShiftLeft帮助企业实现DevSecOps的安全部分,提供高效、准确的安全能力。 ... [详细]
  • PHP组合工具以及开发所需的工具
    本文介绍了PHP开发中常用的组合工具和开发所需的工具。对于数据分析软件,包括Excel、hihidata、SPSS、SAS、MARLAB、Eview以及各种BI与报表工具等。同时还介绍了PHP开发所需的PHP MySQL Apache集成环境,包括推荐的AppServ等版本。 ... [详细]
  • Linux一键安装web环境全攻略
    摘自阿里云服务器官网,此处一键安装包下载:点此下载安装须知1、此安装包可在阿里云所有Linux系统上部署安装,此安装包包含的软件及版本为& ... [详细]
  • SVN 功能说明(简版)
    Subversion(SVN)是什么?SVN是一种版本管理系统,是开源软件的基石。即使在沟通充分的情况下,多人维护同一份源代码的一定也会 ... [详细]
  • Azkaban(三)Azkaban的使用
    界面介绍首页有四个菜单projects:最重要的部分,创建一个工程,所有flows将在工程中运行。scheduling:显示定时任务executing:显示当前运行的任务histo ... [详细]
  • 用lvm+vmware+kickstart实现系统自动安装和快照安装
    由于我的机子是32位,装不了64位系统,所以无法使用kvm,只能用vmware了,可是vmware安装使用自带的autoinst.iso实现自动安装,无法实现我的需求,经过研究我使用kic ... [详细]
  • Linux终端远程工具xshell,xftp,mobasterm
    目录软件介绍1.xshell第一步:第二步:第三步:第四步:第5步:2.xftp第一步 ... [详细]
author-avatar
涵宝宝201503
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有