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

ubuntu16ftp服务vsftp配置

版权声明:转载请注明作者和出处。目标:安装vsftpd服务为了安装方便全程使用root模式#1、切换root用户模式(已在root模式下的请忽略)sudo-i#然后

版权声明:转载请注明作者和出处。
目标:安装 vsftpd 服务

为了安装方便 全程使用root模式

#1、切换root用户模式 (已在root模式下的请忽略)
sudo -i
#然后提示你输入当前用户密码,输入密码后回车后如果密码正确控制台就变成 root@***:/# 了。
#2、更新软件源
apt-get update
#3、安装 vsftpd
apt-get install vsftpd

#安装完成后vsftpd会创建一个用户组和一个用户,据说匿名用户会使用使用cat /etc/group 可以查看用户组 cat /etc/passwd 可以查看用户以及用户的默认目录
#vsftpd默认创建的用户 ftp  默认目录是 /srv/ftp  命令行是false  

#4.0、了操作方便我们给FTP创建自定义FTP目录和用户组

#4.1、创建FTP目录  /home/ftp 当然你也可以创建到其它目录
mkdir /home/ftp
#4.2、创建FTP用户组 ftp-g  这个你们也可以用其它组名
groupadd ftp-g
#4.3、设置FTP目录读写权限(注:用户登陆的根目录如果权限设置的太大会导致无法登陆,根目录下的子目录可以给很大的权限)
chmod 755 /home/ftp
#4.4、设置文件夹归属 root 以及 我们新建的 FTP用户组
chown root:ftp-g /home/ftp
#5.0、设置FTP用户目录以及添加FTP用户
#5.1、为用户ftp_a 创建目录 a并设置权限
mkdir /home/ftp/a
chmod 755 /home/ftp/a
#5.2、添加用户 ftp_a 并设置归属用户组为 ftp-g 以及设置缺省目录(FTP登陆目录) -s /sbin/nologin 禁止用户登陆控制台
useradd -g ftp-g -d /home/ftp/a -s /sbin/nologin ftp_a
#5.3、给新用户 ftp_a 设置密码(无密码不能登陆)
passwd ftp_a
#然后按照提示输入两遍密码 比如我们设置为 123456798

#6、给FTP开放外网端口(默认:tcp端口 21)
ufw allow 21/tcp
#7、启动FTP服务
/etc/init.d/vsftpd start

8、使用我们创建的用户链接FTP服务器进行文件上传下载测试


问题1 、用户登陆提示 530 login incorrect解决方法
打开 /etc/vsftpd.conf
将 pam_service_name=vsftpd 改成  pam_service_name=ftp  然后保存
重启vsftpd服务再登陆即可

/etc/init.d/vsftpd restart


问题2、上传文件  550报错
修改 /etc/vsftpd.conf
取消 write_enable=YES 的注释
保存 重启vsftpd服务即可


问题3、用户登陆FTP后可以访问上级目录修改 /etc/vsftpd.conf 文件 去掉下面 选项 的注释 即可阻止用户访问上级目录chroot_local_user=YES 保存重启服务即可


问题4、修改默认端口修改 /etc/vsftpd.conf 文件
注释
#connect_from_port_20=YES
添加listen_port=你想要的端口
保存重启服务
记得防火墙要开端口


#  vsftpd.conf  配置文件部分参数列表
# 设置 vsftpd是否可以独立运行 守护进程从 initscript 开始
listen=NO

# 是否监听IPV6端口
listen_ipv6=YES

# 是否允许匿名访问FTP
anonymous_enable=NO

# 是否允许本地用户登陆
local_enable=YES

# 取消注释以启用任何形式的FTP写入命令
write_enable=YES


# 本地用户默认上传文件权限为077 你可以将其改为022或其他
#local_umask=022

# 取消注释允许匿名FTP用户上传文件
#anon_upload_enable=YES

# 取消注释允许匿名FTP用户创建文件夹
#anon_mkdir_write_enable=YES

# 激活目录消息 用户切换目录会发送给他消息
dirmessage_enable=YES

# 如果启用 vsftpd将显示目录列表与时间默认GMT
use_localtime=YES

# 激活 上传/下载 的日志记录
xferlog_enable=YES

# 确保端口传输链接源来自端口20
connect_from_port_20=YES

#上传匿名文件
#chown_uploads=YES
#chown_username=whoever

#日志
xferlog_file=/var/log/vsftpd.log

#启用 xferlog 默认位置 /var/log/xferlog
#xferlog_std_format=YES

#允许的空闲时间
#idle_session_timeout=600

#允许的数据传输时间
#data_connection_timeout=120

#启用port模式
#port_enable=YES

#启用主动模式
#pasv_enable=YES
#pasv_min_port=最小端口
#pasv_max_port=最大端口

#不知道什么鬼
#nopriv_user=ftpusername

#启用此功能服务器能识别异步ABOR请求
#async_abor_enable=YES

#启用ASCII模式 (不要启用会被Dos攻击)
#ascii_upload_enable=YES
#ascii_download_enable=YES

#设置FTP登陆欢迎语
ftpd_banner=欢迎来到我的FTP服务器

#设置禁止登陆的Emal用户列表
#deny_email_enable=YES
# (默认列表文件位置)
#banned_email_file=/etc/vsftpd.banned_emails

#将本地用户限制在其主目录(禁止跨目录)
#chroot_local_user=YES

#定义不受目录限制影响的用户列表
#chroot_list_enable=YES
# (列表文件位置)
#chroot_list_file=/etc/vsftpd.chroot_list

#激活内置 -R 选项
#ls_recurse_enable=YES

#定义 sftpd的空目录
secure_chroot_dir=/var/run/vsftpd/empty

#该字符串是vsftpd将使用的PAM服务的名称。
pam_service_name=sftpd

#rsa证书位置
rsa_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem

#rsa密钥位置
rsa_private_key_file=/etc/ssl/private/ssl-cert-snakeoil.key

#是否启用SSL
ssl_enable=NO

#是否允许匿名用户启用SSL
allow_anon_ssl=NO

#dsa证书的位置
dsa_cert_file=/path/file

#非匿名用户登陆时是否加密,默认为yes
force_local_logins_ssl=YES

#非匿名用户传输数据时是否加密,默认为yes
force_local_data_ssl=YES 

#匿名用户登录时是否加密
force_anon_logins_ssl=NO

#匿名用户数据传输时是否加密,默认为no
force_anon_data_ssl=NO

#是否激活sslv2加密
ssl_sslv2=NO

#是否激活sslv3加密
ssl_sslv3=NO

#是否激活tlsv1加密
#ssl_tlsv1=YES

#加密方法
#ssl_ciphers=DES-CBC3-SHA

禁用SSL会话重用(WinSCP需要)
#require_ssl_reuse=NO  '

#选择哪个SSL密码vsftpd将允许加密的SSL连接(FileZilla需要)
ssl_ciphers=HIGH

2 个解决方案

#1


该回复于2017-06-29 15:23:39被管理员删除

#2


mark```````````

推荐阅读
  • Linux如何安装Mongodb的详细步骤和注意事项
    本文介绍了Linux如何安装Mongodb的详细步骤和注意事项,同时介绍了Mongodb的特点和优势。Mongodb是一个开源的数据库,适用于各种规模的企业和各类应用程序。它具有灵活的数据模式和高性能的数据读写操作,能够提高企业的敏捷性和可扩展性。文章还提供了Mongodb的下载安装包地址。 ... [详细]
  • Metasploit攻击渗透实践
    本文介绍了Metasploit攻击渗透实践的内容和要求,包括主动攻击、针对浏览器和客户端的攻击,以及成功应用辅助模块的实践过程。其中涉及使用Hydra在不知道密码的情况下攻击metsploit2靶机获取密码,以及攻击浏览器中的tomcat服务的具体步骤。同时还讲解了爆破密码的方法和设置攻击目标主机的相关参数。 ... [详细]
  • 本文介绍了Java工具类库Hutool,该工具包封装了对文件、流、加密解密、转码、正则、线程、XML等JDK方法的封装,并提供了各种Util工具类。同时,还介绍了Hutool的组件,包括动态代理、布隆过滤、缓存、定时任务等功能。该工具包可以简化Java代码,提高开发效率。 ... [详细]
  • 解决nginx启动报错epoll_wait() reported that client prematurely closed connection的方法
    本文介绍了解决nginx启动报错epoll_wait() reported that client prematurely closed connection的方法,包括检查location配置是否正确、pass_proxy是否需要加“/”等。同时,还介绍了修改nginx的error.log日志级别为debug,以便查看详细日志信息。 ... [详细]
  • mac php错误日志配置方法及错误级别修改
    本文介绍了在mac环境下配置php错误日志的方法,包括修改php.ini文件和httpd.conf文件的操作步骤。同时还介绍了如何修改错误级别,以及相应的错误级别参考链接。 ... [详细]
  • 解决github访问慢的问题的方法集锦
    本文总结了国内用户在访问github网站时可能遇到的加载慢的问题,并提供了解决方法,其中包括修改hosts文件来加速访问。 ... [详细]
  • 本文介绍了Python高级网络编程及TCP/IP协议簇的OSI七层模型。首先简单介绍了七层模型的各层及其封装解封装过程。然后讨论了程序开发中涉及到的网络通信内容,主要包括TCP协议、UDP协议和IPV4协议。最后还介绍了socket编程、聊天socket实现、远程执行命令、上传文件、socketserver及其源码分析等相关内容。 ... [详细]
  • Linux服务器密码过期策略、登录次数限制、私钥登录等配置方法
    本文介绍了在Linux服务器上进行密码过期策略、登录次数限制、私钥登录等配置的方法。通过修改配置文件中的参数,可以设置密码的有效期、最小间隔时间、最小长度,并在密码过期前进行提示。同时还介绍了如何进行公钥登录和修改默认账户用户名的操作。详细步骤和注意事项可参考本文内容。 ... [详细]
  • Nginx使用(server参数配置)
    本文介绍了Nginx的使用,重点讲解了server参数配置,包括端口号、主机名、根目录等内容。同时,还介绍了Nginx的反向代理功能。 ... [详细]
  • 本文分享了一个关于在C#中使用异步代码的问题,作者在控制台中运行时代码正常工作,但在Windows窗体中却无法正常工作。作者尝试搜索局域网上的主机,但在窗体中计数器没有减少。文章提供了相关的代码和解决思路。 ... [详细]
  • 集成电路企业在进行跨隔离网数据交换时面临着安全性问题,传统的数据交换方式存在安全性堪忧、效率低下等问题。本文以《Ftrans跨网文件安全交换系统》为例,介绍了如何通过丰富的审批流程来满足企业的合规要求,保障数据交换的安全性。 ... [详细]
  • RouterOS 5.16软路由安装图解教程
    本文介绍了如何安装RouterOS 5.16软路由系统,包括系统要求、安装步骤和登录方式。同时提供了详细的图解教程,方便读者进行操作。 ... [详细]
  • REVERT权限切换的操作步骤和注意事项
    本文介绍了在SQL Server中进行REVERT权限切换的操作步骤和注意事项。首先登录到SQL Server,其中包括一个具有很小权限的普通用户和一个系统管理员角色中的成员。然后通过添加Windows登录到SQL Server,并将其添加到AdventureWorks数据库中的用户列表中。最后通过REVERT命令切换权限。在操作过程中需要注意的是,确保登录名和数据库名的正确性,并遵循安全措施,以防止权限泄露和数据损坏。 ... [详细]
  • 本文介绍了关系型数据库和NoSQL数据库的概念和特点,列举了主流的关系型数据库和NoSQL数据库,同时描述了它们在新闻、电商抢购信息和微博热点信息等场景中的应用。此外,还提供了MySQL配置文件的相关内容。 ... [详细]
  • Gitlab接入公司内部单点登录的安装和配置教程
    本文介绍了如何将公司内部的Gitlab系统接入单点登录服务,并提供了安装和配置的详细教程。通过使用oauth2协议,将原有的各子系统的独立登录统一迁移至单点登录。文章包括Gitlab的安装环境、版本号、编辑配置文件的步骤,并解决了在迁移过程中可能遇到的问题。 ... [详细]
author-avatar
bentablo
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有