Linux的ftp安装及使用
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安装及使用的更多相关文章
- Linux下FTP安装与配置
第一部分 .note-content {font-family: 'Helvetica Neue', Arial, 'Hiragino Sans GB', STHeiti, 'Microsoft Ya ...
- Linux下ftp安装配置及三种用户的验证
一.原理简介 二.安装配置 三.三种用户的验证 一.简介 FTP即文件传输协议(File Transfer Protocol),完成各主机的文件共享功能,基于客户端-服务器的协议,工作在应用层,tcp ...
- centos 7 linux系统默认ftp安装配置和部署(详细讲解)
小生接触 Linux 系统时间不长,想解决linux系统ftp安装及部署问题,折腾了大半天,终于弄出来了,将各路高手的配置方法综合了一下,如有不对之处,欢迎各位看客指正,感谢! 一.声明: 本文采用操 ...
- Linux系统上安装软件(ftp服务器)
一:安装ftp服务器 在安装linux系统的时候,自定义软件包安装时,我已经勾选了ftp服务器,所以已经 安装过了,如果没有勾选,需要额外下载ftp的安装包,进行安装. ftp服务器搭建过程中遇到的问 ...
- Linux随笔(安装ftp,安装jdk,安装 tomcat,安装redis,安装MySQL)
su: authentication failure 解决办法:sudo passwd root 更改密码即可 确认虚拟机用到的联网方式是桥接模式,不然Windows是ping不通Linux的,确保 ...
- Linux随笔(安装ftp,安装jdk,安装 tomcat,安装redis,安装MySQL,安装svn)
su: authentication failure 解决办法:sudo passwd root 更改密码即可 确认虚拟机用到的联网方式是桥接模式,不然Windows是ping不通Linux的,确保 ...
- Linux防火墙iptables安装配置--使用远程工具Xmanager和ftp服务安装配置
一.linux关闭防火墙: a.用户直接在终端输入:service iptables stop 查看防火墙状况:service iptables status b.root用户在终端输 ...
- linux下的FTP安装及调优
前言: 在之前交换平台的开发中,FTP的各种操作算是核心功能点. 在FTP的开发中,遇到了不少坑. 如FTP需要设置被动模式,否则10M以上的包可能会上传失败. 如FTP需要设置囚牢模式,否则访问的文 ...
- Linux ftp安装
ftp安装部分,操作步骤如下: 可以使用yum命令直接安装ftp # yum install vsftpd ftp服务的开启与关闭命令: 开启:# /bin/systemctl start vsftp ...
随机推荐
- Python安装pyinstaller方法,以及将项目生成可执行程序的步骤
pyinstaller安装方法 前提:确保计算机安装了Python语言环境,并且正确配置了环境变量. 方法一:联网在线自动安装 选择一 Windows OS下进入cmd(命令行窗口) 输入:pip i ...
- 聊聊 Vue 中 provide/inject 的应用
众所周知,在组件式开发中,最大的痛点就在于组件之间的通信.在 Vue 中,Vue 提供了各种各样的组件通信方式,从基础的 props/$emit 到用于兄弟组件通信的 EventBus,再到用于全局数 ...
- JavaSE语法(中)
6.当一个对象被当作参数传递到一个方法后,此方法可改变这个对象的属性,并可返回变化后的结果,那么这里到底是值传递还是引用传递? 是值传递.Java语言的方法调用支持参数的值传递.当一个对象实例作为一个 ...
- 精心整理(含图版)|你要的全拿走!(R数据分析,可视化,生信实战)
本文首发于“生信补给站”公众号,https://mp.weixin.qq.com/s/ZEjaxDifNATeV8fO4krOIQ更多关于R语言,ggplot2绘图,生信分析的内容,敬请关注小号. 为 ...
- P3128 [USACO15DEC]最大流
秒切树上查分....(最近一次集训理解的东西) 但是,我敲了半小时才切掉这道题.... 我一直迷在了“边差分”和“点差分”的区别上. 所以,先说一下此题,再说一下区别. 首先,想到差分很容易. 然后, ...
- P5304旅行者(比bk201还要流氓的解法)
题目如上. 暴力碾标算,n^2过百万!! 作为一道黑题它确实有点点水(如果是畜生解法的话) 就是找出两两点之间的最短路的最小值. 本来是很高深的一题,要跑两遍最短路啊,然后染色啊,再拓展什么的,但是! ...
- PTA刷题记录(1)
团队天梯赛-------(2)分值:20 题目要求:你写个程序把给定的符号打印成沙漏的形状.例如给定17个“*”,要求按下列格式打印 ***** *** * *** ***** 所谓“沙漏形状” ...
- 安利一个绘制指引线的JS库leader-line
前言 之前看到一篇推荐Magi这个搜索引擎的新闻,对于这个搜索引擎是否好用咱们不予置评,但是我在这个搜索引擎上面发现了一个好玩的前端功能. 如上图,将鼠标浮动到学习来源上时,会展示一堆指引线. 本博客 ...
- DFS深度优先算法学习
刚开始学习算法,参考大佬博客还是有很多不明白的,于是一步步解析,写下笔记记录. 大佬博客地址: https://blog.csdn.net/fuzekun/article/details/852204 ...
- [LC]876题 Middle of the Linked List (链表的中间结点)(链表)
①中文题目 给定一个带有头结点 head 的非空单链表,返回链表的中间结点. 如果有两个中间结点,则返回第二个中间结点. 示例 1: 输入:[1,2,3,4,5]输出:此列表中的结点 3 (序列化形式 ...