FTP服务器的安装与配置(Ubuntu)
1.查询是否安装vsftpd:  rpm -qa |grep vsftpd

(rpm的安装:apt-get install rpm)

或者查询当前ftp进程:ps -ef|grep vsftpd

2.安装vsftpd服务器: rpm -ivh vsftpd-*.rpm 或从互联网寻找对应资源直接安装vsftpd:apt-get install vsftpd

3.测试

root@localhost root:~# ftp localhost
Connected to localhost.
220 (vsFTPd 2.2.2)
Name (localhost:root): root
331 Please specify the password.
Password:
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp>bye
221 Goodbye.

4.vsftpd服务器的启动、停止、重启、状态
  service vsftpd start        或./etc/init.d/vsftpd start
  service vsftpd stop        或./etc/init.d/vsftpd stop
  service vsftpd restart     或./etc/init.d/vsftpd restart
  service vsftpd status      或./etc/init.d/vsftpd status

5.vsftpd的三个主配置文件
  /etc/vsftpd.conf  //服务器的主配置文件
  /etc/ftpd.ftpusers  //此文件内的用户都不能访问vsftpd服务器
  /etc/vsftpd.user_list  //可能会被拒绝访问服务喊叫或允许访问

6.vsftpd.conf的配置参数
 anonymous_enable=YES  //启用匿名用户
 local_enable=YES  //允许本地用户访问vsftpd服务器
 write_enable=YES  //允许上传
 download_enable=YES  //允许下载
 anon_upload_enable=YES  //允许匿名用户上传
 anon_mkdir_write_enable=YES //允许匿名用户创建目录和上传
 anon_other_write_enable=NO //不允许匿名用户删除和改名
 local_max_rate=20000  //本地用户的最大传输速率,单位是字节/秒
 anon_max_rate=5000  //匿名用户的最大传输速率,单位是字节/秒
 local_umask=022   //去掉写的权限
 file_open_mode=0666  //上传文件的权限
 xferlog_enable=YES  //维护日志文件,详细记录上传和下载操作
 xferlog_std_format=YES  //传输日志文件将以标准的xferlog格式书写,日志文件默

认为/var/log/xferlog
 hide_ids=YES   //隐藏文件夹和目录属主
 port_enable=YES   //允许使用主动传输模式
 pasv_min_port=(1024<port<65535) //指定PASV模式可以使用的最小端口
 pasv_max_port=(1024<port<65535) //指定PASV模式可以使用的最大端口
 connect_from_port_20=YES //定义FTP传输数据的端口,默认是20
 ascii_download_enable=NO //设置不可使用ASCII模式下载
 listen=YES   //让FTP工作在独立模式下

pam_service_name=vsftpd  //用户配置文件认证
 userlist_enable=YES  
 tcp_wrappers=YES  //将使用wrappers作为主机访问控制方式
 idle_session_timeout=600 //表明空闲时间为600秒
 data_connection_timeout=120 //表明数据连接超时时间为120秒
 chroot_local_user=YES  //用户登录后不能访问自己目录以外的文件或目录
 listen_port=4444  //修改FTP服务器的端口号

7.设置FTP服务器在3、5级别上自动运行

chkconfig --level 3 5 vsftpd on

8.ftp客户连接常见故障现象
  现象0:
 > ftp: connect :连接被拒绝
 原因: 服务没启动
 解决: # chkconfig vsftpd on

现象1:
 500 OOPS: cannot open user list file
 原因: 不存在文件“/etc/vsftpd.user_list”或文件中不存在该帐户
 解决: # echo username >> /etc/vsftpd.user_list

现象2:
 530 Permission denied.
 Login failed.
 原因: “/etc/vsftpd.user_list”文件中不存在当前登陆用户
 解决: # echo username >> /etc/vsftpd.user_list

现象3:
 500 OOPS: cannot open chroot() user list file
 Login failed.
 原因: 不存在文件“/etc/vsftpd.chroot_list”
 解决: # echo username >> /etc/vsftpd.chroot_list

现象4:
 500 OOPS: missing value in config file
 Connection closed by remote host.
 原因: “=”等号前值有问题,或只有一个空格
 解决: 修正相应的值即可,可能过 diff 来比较查找

现象5:
 500 OOPS: bad bool value in config file
 Connection closed by remote host.
 原因: “=”等号后值有问题
 解决: 将“=”等号后值确认修改

现象6:
 500 OOPS: unrecognised variable in config file
 Connection closed by remote host.
 原因: 参数前有空格
 解决: 将参数前空格删除

现象7、
 确认存在“local_enable=YES”,但本地用户无法登陆
 原因: 验证参数被误删除
 解决: 添加“pam_service_name=vsftpd”
 
 现象8、
 500 OOPS: chdir
 500 OOPS: child died
 Connection closed by remote host.
 原因: 用户主目录没有权限或没有主目录
 解决: 正确设置用户主目录权限

9.vsftpd虚拟用户账号的设置步骤
 (1).建立虚拟用户口令库文件
  vi /pub/vu_list.txt
  wang5
  123
  zhao6
  456
 (2).生成vsftpd的认证文件
  db_load -T -t hash -f /pub/vu_list.txt /etc/vsftpd/vu_list.db
  chmod 600 /etc/vsftpd/vu_list.db
 (3).建立虚拟用户所需的PAM配置文件
  vi /etc/pam.d/vsftpd.vu
  auth required /lib/security/pam_userdb.so db=/etc/vsftpd/vu_list
  account required /lib/security/pam_userdb.so db=/etc/vsftpd/vu_list
 (4).建立虚拟用户所要访问的目录并设置相应权限
  useradd ftpuser
 (5).设置vsftpd.conf配置文件
  guest_username=ftpuser
  pam_service_name=vsftpd.vu
 (6).重启vsftpd服务器
  service vsftpd restart

10.对虚拟用户设置不同权限
 (1).设置vsftpd.conf文件
  user_config_dir=/etc/vsftpd_vu
 (2).创建目录
  mkdir /etc/vsftpd_vu
 (3).进入目录进行编辑 
  cd /etc/vsftpd_vu
  vi wang5
  anon_world_readable_only=NO
  anon_upload_enable=YES
  anon_mkdir_write_enable=YES
  anon_other_write_enable=YES

vi zhao6
  anon_world_readable_only=YES
  anon_upload_enable=NO
  anon_mkdir_write_enable=NO
  anon_other_write_enable=NO
 10.配置基于IP的虚拟ftp服务器
 (1).绑定其它IP
  ifconfig eth0:0 192.168.1.71
 (2).建立虚拟FTP服务器目录
  mkdir -p /var/ftp2/pub1
 (3).创建虚拟服务器的匿名用户所映射的本地用户
  ftp2
  useradd -d /var/ftp2 -M ftp2
 (4).修改原独立运行服务器的配置文件
  listen_address=192.168.1.70
 (5).复制生成虚拟服务器的主配置文件
  cp /etc/vsftpd.conf /etc/vsftpd/vsftpd2.conf
 (6).设定虚拟服务器的IP并使虚拟服务器的匿名用户映射到本地用户ftp2
  vi /etc/vsftpd/vsftpd2.conf
  pam_service_name=vsftpd
  listen_address=192.168.1.71
  ftp_username=ftp2
 (7).重启服务生效:service vsftpd restart

DOS下使用ftp命令:

1. 切换到指定目录下
2. 连接目标ftp服务器:ftp 10.137.97.29
3. 输入帐号、密码
4. 切换传输方式,二进制传输使用bin命令
5. 上传文件:put test_setup.zip

下载文件:get **.zip
6. 退出ftp:bye

7. cd 切换目录

8. del 删除文件

9. dir 查看远程主机当前目录

10. ascii 使用ascii方式传输文件

11. mput、mget: 将多个文件上传、下载

12. mkdir 在远程主机中建立目录

13. pwd 显示远程主机的当前工作目录路径

Linux的ftp安装及使用的更多相关文章

  1. Linux下FTP安装与配置

    第一部分 .note-content {font-family: 'Helvetica Neue', Arial, 'Hiragino Sans GB', STHeiti, 'Microsoft Ya ...

  2. Linux下ftp安装配置及三种用户的验证

    一.原理简介 二.安装配置 三.三种用户的验证 一.简介 FTP即文件传输协议(File Transfer Protocol),完成各主机的文件共享功能,基于客户端-服务器的协议,工作在应用层,tcp ...

  3. centos 7 linux系统默认ftp安装配置和部署(详细讲解)

    小生接触 Linux 系统时间不长,想解决linux系统ftp安装及部署问题,折腾了大半天,终于弄出来了,将各路高手的配置方法综合了一下,如有不对之处,欢迎各位看客指正,感谢! 一.声明: 本文采用操 ...

  4. Linux系统上安装软件(ftp服务器)

    一:安装ftp服务器 在安装linux系统的时候,自定义软件包安装时,我已经勾选了ftp服务器,所以已经 安装过了,如果没有勾选,需要额外下载ftp的安装包,进行安装. ftp服务器搭建过程中遇到的问 ...

  5. Linux随笔(安装ftp,安装jdk,安装 tomcat,安装redis,安装MySQL)

    su: authentication failure 解决办法:sudo passwd root  更改密码即可 确认虚拟机用到的联网方式是桥接模式,不然Windows是ping不通Linux的,确保 ...

  6. Linux随笔(安装ftp,安装jdk,安装 tomcat,安装redis,安装MySQL,安装svn)

    su: authentication failure 解决办法:sudo passwd root  更改密码即可 确认虚拟机用到的联网方式是桥接模式,不然Windows是ping不通Linux的,确保 ...

  7. Linux防火墙iptables安装配置--使用远程工具Xmanager和ftp服务安装配置

    一.linux关闭防火墙:    a.用户直接在终端输入:service iptables stop     查看防火墙状况:service iptables status  b.root用户在终端输 ...

  8. linux下的FTP安装及调优

    前言: 在之前交换平台的开发中,FTP的各种操作算是核心功能点. 在FTP的开发中,遇到了不少坑. 如FTP需要设置被动模式,否则10M以上的包可能会上传失败. 如FTP需要设置囚牢模式,否则访问的文 ...

  9. Linux ftp安装

    ftp安装部分,操作步骤如下: 可以使用yum命令直接安装ftp # yum install vsftpd ftp服务的开启与关闭命令: 开启:# /bin/systemctl start vsftp ...

随机推荐

  1. Android Studio Module 引入aar

    1.把aar文件放到module的libs目录下 2.作为lib的module的gradle文件: repositories { flatDir { dirs 'libs' } } dependenc ...

  2. 再整理:Visual Studio Code(vscode)下的通用C语言环境搭建

    版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文链接:https://www.cnblogs.com/czlhxm/p/11794743.ht ...

  3. Python基础-语法知识

    ——编程语言的发展史 机器语言 优点:执行速度够快 缺点:开发效率非常低 汇编语言 优点:执行效率相较于机器语言略低 缺点:开发效率相较于机器语言略高 高级语言 C.C++.C#.java.PHP.p ...

  4. 【XSY2985】【BZOJ1367】【Baltic2004】sequence

    考虑两种情况: 1.\(a_1\)<\(a_2\)<\(a_3\)<\(a_4\)...<\(a_n\) 直接令\(b_i\)=\(a_i\),最小. 2.\(a_1\)> ...

  5. 大数据之路day03--java循环的延申与练习(while 、do-while、for)

    在今天,我突然被一个很尴尬的问题问到了,问题是这样的:说一下java循环的应用场景. 我想很多人一下子听到这样的问题不知道怎么回答,大部分人会去想有什么循环格式,特点是什么.这些都是错误的,在往后的面 ...

  6. 一个帮助理清思路的神奇工具--debug

    今天在回顾复习之前的知识的时候,对嵌套循环犯了迷糊,于是我使用了debug这个方法,不仅让我弄清楚嵌套循环输出结果是如何得来,也让我明白了具体流程. 在这里,IDE我使用的是PyCharm,自然用它自 ...

  7. web常用自动化库——selenium总结

    概述 selenium是一个模拟控制浏览器操作的自动化库,它可以做到元素定位,鼠标事件,浏览器事件,js脚本执行等操作 与request不同的是,request是单独请求一个http,而seleniu ...

  8. 如何在HTML中设置字体颜色,你知道这几种方式吗?

    color设置字体颜色 在color设置字体颜色之前,我们首先了解color在CSS中有几种取值方式,一共有4种方式,若有不全还请在评论区告知谢谢,4种方式如下: 十六进制.十进制. 英文单词.十六进 ...

  9. 深入理解java多态没有烤山药的存在,java就不香了吗?

    目录 1. 从吃烤山药重新认识多态 2. 多态前提条件[重点] 3. 多态的体现 4. 多态动态绑定与静态绑定 5. 多态特性的虚方法(virtual) 7. 向上转型 8. 向下转型 9. 向上向下 ...

  10. Hibernate的多对多关系

    1.表的关系: 分别有三个表:课程表.学生表.分数表.课程和学生的关系是多对多的,因为一个学生对应多个课程,而一个课程被多个学生选修.如果用一对多.多对一的观点来看待课程和学生的关系显然是不对的,因为 ...