学习啦 > 学习电脑 > 操作系统 > Linux教程 >

Linux 下FTP的安装与配置教程步骤

时间: 加城1195 分享

  Linux继承了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。ftp文件管理,可能很多人在Windows中经常用到,那么在Linux如何使用呢?这篇文章主要介绍了Linux 下FTP的安装与配置教程详解,需要的朋友可以参考下

  方法步骤

  0、安装ftp的前置条件是关掉SElinux

  # vi /etc/selinux/config

  修改 SELINUX=” disabled ” ,重启服务器。若相同,则跳过此步骤。

  1、 可先查看是否安装过vsftp

  # rpm -qa | grep vsftpd

  则代表已经安装。可直接跳过步骤2

  2 、安装 vsftp

  # yum install vsftp*

  Is this ok [y/N]: y

  代表安装完成。

  3、 对vsftp 进行配置

  # /etc/vsftpd/vsftpd.conf

  将原始最后三行注释掉

  添加以下信息:

  #设定不允许匿名访问

  anonymous_enable=NO

  #设定本地用户可以访问。注:如使用虚拟宿主用户,在该项目设定为NO的情况下所有虚拟用户将无法访问

  local_enable=YES

  #使用户不能离开主目录

  chroot_list_enable=YES

  #设定支持ASCII模式的上传和下载功能

  ascii_upload_enable=YES

  ascii_download_enable=YES

  #PAM认证文件名。PAM将根据/etc/pam.d/vsftpd进行认证

  pam_service_name=vsftpd

  #设定启用虚拟用户功能

  guest_enable=YES

  #指定虚拟用户的宿主用户,CentOS中已经有内置的ftp用户了

  guest_username=ftp

  #设定虚拟用户个人vsftp的CentOS FTP服务文件存放路径。存放虚拟用户个性的CentOS FTP服务文件(配置文件名=虚拟用户名)

  user_config_dir=/etc/vsftpd/vuser_conf

  插入后按下Esc键后用:wq结束

  进行认证

  4、首先 安装Berkeley DB工具,很多人找不到db_load的问题就是没有安装这个包

  # yum install db4 db4-utils

  然后,创建用户密码文本/etc/vsftpd/vuser_passwd.txt ,注意奇行是用户名,偶行是密码

  # touch /etc/vsftpd/vuser_passwd.txt

  # vi /etc/vsftpd/vuser_passwd.txt

  注意(如果多个用户名和密码中间不能有空的换行,在最后一个密码后必须有换行)

  比如

  本示只创建一个用户

  5、接着,生成虚拟用户认证的db文件

  # db_load -T -t hash -f /etc/vsftpd/vuser_passwd.txt /etc/vsftpd/vuser_passwd.db

  编辑认证文件/etc/pam.d/vsftpd,打开这文件,用“#”注释掉原先的所有内容,然后增加两行。(查看服务器配置参看步骤9)

  32位系统增加以下两句:

  auth required pam_userdb.so db=/etc/vsftpd/vuser_passwd

  account required pam_userdb.so db=/etc/vsftpd/vuser_passwd

  64位系统增加以下两句:

  auth required /lib64/security/pam_userdb.so db=/etc/vsftpd/vuser_passwd

  account required /lib64/security/pam_userdb.so db=/etc/vsftpd/vuser_passwd

  本服务器系统是64位版本

  # /etc/pam.d/vsftpd

  auth required /lib64/security/pam_userdb.so db=/etc/vsftpd/vuser_passwd

  account required /lib64/security/pam_userdb.so db=/etc/vsftpd/vuser_passwd

  6、最后,创建虚拟用户个性服务文件

  # mkdir /etc/vsftpd/vuser_conf/

  # touch/etc/vsftpd/vuser_conf/test

  # vi /etc/vsftpd/vuser_conf/test

  添加内容如下

  #虚拟用户根目录,根据实际情况修改

  local_root=/ftp/www

  #可写

  write_enable=YES

  #掩码

  anon_umask=022

  anon_world_readable_only=NO

  anon_upload_enable=YES

  anon_mkdir_write_enable=YES

  anon_other_write_enable=YES

  7、创建ftp根目录权限

  # mkdir /ftp/www

  # chmod R 777 /ftp

  # chmod R 777 /ftp/www

  8、重启iptabls和vsftpd

  # service iptables restart

  # service vsftpd restart

  9、查看linux版本是32 还是64位

  $su - root

  #file /sbin/init

  /sbin/init: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV),

  即是32位的 linux, 如是64位的, 显示的是 64-bit

  补充:Linux基本命令

  ①ls 意为list 列出当前文件夹中的文件

  -l 显示文件的属性 可用ll来表示

  ②alias 别名 看看是否有别名的文件

  ③cd dir 跳跃目录 -P选项 将路径中的链接文件替换成链接指向的文件路径

  ④pwd 查看当前工作的文件夹名 使用-P的选项,会直接进入到其中,相当于cd

  相关阅读:Linuxshell脚本不执行问题实例分析

  shell脚本不执行问题:某天研发某同事找我说帮他看看他写的shell脚本,死活不执行,报错。我看了下,脚本很简单,也没有常规性的错误,报“:badinterpreter:Nosuchfileordirectory”错。看这错,我就问他是不是在windows下编写的脚本,然后在上传到linux服务器的……果然。原因:在DOS/windows里,文本文件的换行符为rn,而在*nix系统里则为n,所以DOS/Windows里编辑过的文本文件到了*nix里,每一行都多了个^M。解决:

  1)重新在linux下编写脚本;

  2)vi:%s/r//g:%s/^M//g(^M输入用Ctrl+v,Ctrl+m)附:sh-x脚本文件名,可以单步执行并回显结果,有助于排查复杂脚本问题。


Linux 下FTP的安装与配置相关文章:

1.linux中ftp下载文件命令的用法

2.linux中的ftp命令用法

3.Linux下MySQL的安装与配置

4.linux中ftp命令找不到的原因和解决方法

5.Linux的Ubuntu操作系统的安装教程

4016954