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

Linux系统安装vsFTPd后启动及命令行下登录和解决中文乱码

特别值得一提的是Linuxvsftpd有很多值得学习的地方,这里我们主要介绍Linuxvsftpd,包括介绍Linuxvsftpd等方面。1.安装和启动Linuxvsftpd:$yuminstallvsftpd然后更改/etc/vsftpd/vsftpd.conf文件,在最后加上一行代码,使得Linuxvsftpd能够

特别值得一提的是Linux vsftpd有很多值得学习的地方,这里我们主要介绍Linux vsftpd,包括介绍Linux vsftpd等方面。

1. 安装和启动Linux vsftpd:

$ yum install vsftpd然后更改/etc/vsftpd/vsftpd.conf文件,在最后加上一行代码,使得Linux vsftpd能够运行在一个独立的进程上:listen=yes开启vsftp服务,若要开机自动启动,可以在System->Administration->Services里更改:$ service vsftpd start(/stop/restart)在防火墙中开启端口21,System->Administration->Firewall,选择FTP,启用之。此时,ftp服务已经可以匿名访问了。

2. 让服务器上的本地用户能够通过ftp访问服务器(当然,这些用户也可以通过SSH等方式访问):

首先修改/etc/vsftpd/vsfptd.conf,找到以下一行,去掉前面的注释:local_enable=YES重启服务之后,就可以允许本地用户访问了,其认证方式是采用pam(Pluggable Authentication Module)的方式,其相应的文件位于/etc/pam.d/vsftpd,这个同Gnome中每次打开update manager都会要求输入密码类似。在vsftpd.conf中也可以修改(pam_service_name)。但是如果要限制本地用户中的一部分用户通过ftp访问,可以通过修改配置文件实现。

在Linux vsftpd.conf中找到并修改为以下几行(若没有则需要添加),其意义为只允许指定的user_list文件中所列举的本地用户通过FTP登录,不在这个列表中的本地用户禁止登录:

userlist_enable=YES 

userlist_deny=NO 

userlist_file=/etc/vsftpd/user_list 

如果把上述第二行中userlist_deny=NO改为userlist_deny=YES,则情况正好相反,即只允许那些不在user_list文件中的本地用户通过FTP登录,而在这个列表中的本地用户则禁止登录。

在上述情况下,用户登录后可能出现无法查看目录的情形,但是能够改变目录和访问根目录"/",出现如下的错误:Response: 226 Transfer done (but failed to open directory).这是由于Fedora中默认开启了selinux(Security Enhanced Linux)服务,为了关闭此服务,应修改/etc/selinux/config文件,将SELINUX=enforced改为 SELINUX=disable,然后重启系统。

3.Linux vsftpd禁止用户改变home directory:

在默认情况下Linux vsftpd规定了如下变量值,该值表明所有的本地用户都不能改变home direcotry,对于一个名为test的用户来说,其默认home direcotry为/home/test/,改用户登录之后,由于有如下的设置,因此该用户不能navigate 到上一级的目录,也就是说他被锁定在了自己的home directory下,只能访问该目录及其子目录:chroot_local_user=YES

如果只需要控制某一部分用户不被锁定在home directory,则需要修改vsftpd.conf文件,找到并修改一下内容,这说明,位于/etc/vsftpd/chroot_list文件中的每一个用户都不被锁定,而其他不在该文件中的用户则均被锁定:

chroot_local_user=YES 

chroot_list_enable=YES 

chroot_list_file=/etc/vsftdp/chroot_list 

在上述设置中,若把chroot_local_user的值改为NO,则情况正好相反,说明位于chroot_list文件下的用户都被锁定,而其他不在该文件中的用户均不被锁定。

4. Linux vsftpd为用户增加修改和删除等权限

修改/etc/vsftpd/vsftpd.conf文件,找到并去掉以下一行的注释,即可赋予用户修改和删除文件的权限:write_enable=YES若要实现不同用户登录后赋予不同权限,则需要更加复杂的实现。

5. Linux vsftpd命令行下登录,查看中文文件出现乱码

由于Linux vsftpd下默认的字符集为UTF-8,而Windows中的默认字符集为GBK,因此当在linux下浏览Windows中的中文文件时,会出现乱码。如果客户端为FlashFXP或者FileZilla,都可以通过连接时设置字符集为UTF-8解决。但是如果通过命令行登录,则由于vsftp没有支持字符集的选择,也会出现乱码。对于FlashFXP, 首先需要把ftp地址保存到站点管理器,然后在站点管理器中选中该站点,点击高级->字符编码,选择UTF8。对于FileZilla,其设置方式类似。

目前还没有找到一个好的解决方案,有一种解决办法是通过打补丁解决,参考以下文档:http://forum.ubuntu.org.cn/viewtopic.php?f=54&t=28642&start=0

6. Linux vsftpd其他服务器参数配置

max_clients=5   #设置同时登录的最大连接数  

ftpd_banner=Your welcome info here.   #设置用户登录后的欢迎信息  

ascii_upload_enable=YES#启用字符模式的上传,可能带来安全隐患  

ascii_download_enable=YES   #启用字符模式的下载  

idle_session_timeout=300   #空闲时间超过300秒后断开连接  

data_connection_timeout=300   #数据连接超时时间为300秒  

xferlog_enable=YES #开启上传下载日志功能  

xferlog_file=/var/log/vsftpd.log  #日志文件存放位置  

dirmessage_enable=YES  #启用目录的.message信息 


推荐阅读
  • 如何在服务器主机上实现文件共享的方法和工具
    本文介绍了在服务器主机上实现文件共享的方法和工具,包括Linux主机和Windows主机的文件传输方式,Web运维和FTP/SFTP客户端运维两种方式,以及使用WinSCP工具将文件上传至Linux云服务器的操作方法。此外,还介绍了在迁移过程中需要安装迁移Agent并输入目的端服务器所在华为云的AK/SK,以及主机迁移服务会收集的源端服务器信息。 ... [详细]
  • 本文介绍了Python高级网络编程及TCP/IP协议簇的OSI七层模型。首先简单介绍了七层模型的各层及其封装解封装过程。然后讨论了程序开发中涉及到的网络通信内容,主要包括TCP协议、UDP协议和IPV4协议。最后还介绍了socket编程、聊天socket实现、远程执行命令、上传文件、socketserver及其源码分析等相关内容。 ... [详细]
  • Centos7.6安装Gitlab教程及注意事项
    本文介绍了在Centos7.6系统下安装Gitlab的详细教程,并提供了一些注意事项。教程包括查看系统版本、安装必要的软件包、配置防火墙等步骤。同时,还强调了使用阿里云服务器时的特殊配置需求,以及建议至少4GB的可用RAM来运行GitLab。 ... [详细]
  • 2016 linux发行版排行_灵越7590 安装 linux (manjarognome)
    RT之前做了一次灵越7590黑苹果炒作业的文章,希望能够分享给更多不想折腾的人。kawauso:教你如何给灵越7590黑苹果抄作业​zhuanlan.z ... [详细]
  • 本文介绍了在Web应用系统中,数据库性能是导致系统性能瓶颈最主要的原因之一,尤其是在大规模系统中,数据库集群已经成为必备的配置之一。文章详细介绍了主从数据库架构的好处和实验环境的搭建方法,包括主数据库的配置文件修改和设置需要同步的数据库等内容。MySQL的主从复制功能在国内外大型网站架构体系中被广泛采用,本文总结了作者在实际的Web项目中的实践经验。 ... [详细]
  • Linux服务器密码过期策略、登录次数限制、私钥登录等配置方法
    本文介绍了在Linux服务器上进行密码过期策略、登录次数限制、私钥登录等配置的方法。通过修改配置文件中的参数,可以设置密码的有效期、最小间隔时间、最小长度,并在密码过期前进行提示。同时还介绍了如何进行公钥登录和修改默认账户用户名的操作。详细步骤和注意事项可参考本文内容。 ... [详细]
  • 搭建Windows Server 2012 R2 IIS8.5+PHP(FastCGI)+MySQL环境的详细步骤
    本文详细介绍了搭建Windows Server 2012 R2 IIS8.5+PHP(FastCGI)+MySQL环境的步骤,包括环境说明、相关软件下载的地址以及所需的插件下载地址。 ... [详细]
  • 本文介绍了在Hibernate配置lazy=false时无法加载数据的问题,通过采用OpenSessionInView模式和修改数据库服务器版本解决了该问题。详细描述了问题的出现和解决过程,包括运行环境和数据库的配置信息。 ... [详细]
  • 本文讨论了在Linux系统中,使用chown命令将django项目目录下的static目录的拥有者从root改为eureka的问题。作者尝试了多种命令,包括chown和sudo chown等,但都没有成功修改拥有者。文章提供了相关目录的权限信息,并补充了项目所在磁盘和操作系统的信息。 ... [详细]
  • 31.项目部署
    目录1一些概念1.1项目部署1.2WSGI1.3uWSGI1.4Nginx2安装环境与迁移项目2.1项目内容2.2项目配置2.2.1DEBUG2.2.2STAT ... [详细]
  • Java学习笔记之使用反射+泛型构建通用DAO
    本文介绍了使用反射和泛型构建通用DAO的方法,通过减少代码冗余度来提高开发效率。通过示例说明了如何使用反射和泛型来实现对不同表的相同操作,从而避免重复编写相似的代码。该方法可以在Java学习中起到较大的帮助作用。 ... [详细]
  • 原理:dismiss再弹出,把dialog设为全局对象。if(dialog!null&&dialog.isShowing()&&!(Activity.)isFinishing()) ... [详细]
  • MySQL语句大全:创建、授权、查询、修改等【MySQL】的使用方法详解
    本文详细介绍了MySQL语句的使用方法,包括创建用户、授权、查询、修改等操作。通过连接MySQL数据库,可以使用命令创建用户,并指定该用户在哪个主机上可以登录。同时,还可以设置用户的登录密码。通过本文,您可以全面了解MySQL语句的使用方法。 ... [详细]
  • STM32与FPGA的对比及学习建议
    本文对比了野火STM32F103指南针板和Xilinx的PYNQ-Z2板(ZYNQ-7020),介绍了野火STM32F103指南针板的学习资料和讲解视频的详细程度,建议初学者学习野火的资料。同时,介绍了STM32开发所用的Keil程序和C指针的重要性。对于ZYNQ-7020的开发,提到了其自带的Linux、Ubuntu18.4系统以及使用SD卡烧入镜像的方法。 ... [详细]
  • 分享css中提升优先级属性!important的用法总结
    web前端|css教程css!importantweb前端-css教程本文分享css中提升优先级属性!important的用法总结微信门店展示源码,vscode如何管理站点,ubu ... [详细]
author-avatar
花生vs布丁丁7_835
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有