Linux 之 FTP服务器搭建
FTP服务器搭建
参考教程:【千峰教育】
1、关闭防火墙:
service iptables stop
2、关闭Selinux
setenforce 0
3、安装所需要依赖及编译工具
yum install -y gcc openssl-devel perl
4、下载pure-ftpd
(1)搜索pure-ftpd,一般是第一个,打开链接:https://www.pureftpd.org/project/pure-ftpd。
(2)点击页面右侧列表的的【Download】:https://www.pureftpd.org/project/pure-ftpd/download。
(3)点击【Primary HTTP download site】:http://download.pureftpd.org/pub/pure-ftpd/。
(4)在列表中点击发行版【releases/】:https://download.pureftpd.org/pub/pure-ftpd/releases/。
(5)选择其中一个版本,例如【pure-ftpd-1.0.47.tar.gz】,复制下载链接。
(6)在Linux中执行下载命令:
curl -O https://download.pureftpd.org/pub/pure-ftpd/releases/pure-ftpd-1.0.47.tar.gz
5、解压
tar -zxvf pure-ftpd-1.0.47.tar.gz
6、进行配置
cd pure-ftpd-1.0.47
./configure --prefix=/usr/local/pureftpd --without-inetd --with-altlog --with-puredb --with-throttling -with-tls
7、编译和安装
make && make install
8、修改配置文件
注意:这里好像区分版本,不同版本不太一样:
(1)如果下载的目录里【有configuration-file目录】:
mkdir -p /usr/local/pureftpd/etc
cd ./configuration-file/
cp pure-ftpd.conf /usr/local/pureftp/etc/
(2)如果下载的目录里【没有configuration-file目录】:
可能配置文件已经存在于指定的目录下了。
修改:/usr/local/pureftpd/etc/pure-ftpd.conf
如下:
PureDB /usr/local/pureftpd/etc/pureftpd.pdb
PIDFile /usr/local/pureftpd/var/run/pure-ftpd.pid
9、启动服务
注意:这里好像区分版本,不同版本不太一样:
(1)如果下载的目录里【有configuration-file目录】:
这里目录里会有pure-config.pl控制文件:
cp pure-config.pl /usr/local/pureftpd/sbin/
chmod 755 pure-config.pl
然后启动:
cd /usr/local/pureftpd
./sbin/pure-config.pl ./etc/pure-ftpd.conf
(2)如果下载的目录里【没有configuration-file目录】:
启动:
cd /usr/local/pureftpd
./sbin/pure-ftpd ./etc/pure-ftpd.conf
或者
/usr/local/pureftpd/sbin/pure-ftpd /usr/local/pureftpd/etc/pure-ftpd.conf
10、检查是否启动:
使用netstat命令:
结果看到如下信息,21号端口,pure-ftpd,说明启动了。
tcp 0 0 0.0.0.0:21 0.0.0.0:* LIST EN 22755/pure-ftpd
11、添加管理用户:
useradd ftp-user #在系统中的添加一个用户ftp-user
mkdir -p /var/www/html/
chown -R ftp-user:ftp-user /var/www/html/
./bin/pure-pw useradd zhangsan -u ftp-user -d /var/www/html
说明:
zhangsan 是使用ftp登录时的用户名
-u:指系统中存在的用户ftp-user
-d:指定访问的目录
./bin/pure-pw命令在/usr/local/pureftpd/下。
12、创建虚拟的用户数据库
cd /usr/local/pureftpd/
./bin/pure-pw mkdb
查看:
./bin/pure-pw list
13、测试:
通过ftp工具(FileZilla)测试。
主机:填写虚拟机地址。
端口:21。
协议:FTP-文件传输协议。
加密:只使用普通FTP(不安全)
登录类型:询问密码。
用户:用户名,即示例中设置的zhangsan
扩展知识:
ctrl+u 清空当前输入
ctrl+l 清空屏幕
解压pure-ftpd-1.0.47.tar.gz时提示:
gzip: stdin: unexpected end of file
tar: 归档文件中异常的 EOF
tar: 归档文件中异常的 EOF
tar: Error is not recoverable: exiting now
原因:
源码包在下载过程中被破坏或者不完整所致。
可以看到,下载后的大小和开始下载时显示的总大小是不一样的。
解决方法:
重新下载。
如果服务器的网速较慢,或下载后还是不完整的文件,可以选择在windows上下载后,上传到服务器行。
本地下载curl软件后,在cmd命令行,执行上面的而下载命令:
curl -O https://download.pureftpd.org/pub/pure-ftpd/releases/pure-ftpd-1.0.47.tar.gz
然后上传。
./configure的那个配置项有时间要具体了解一下,这里不做说明了。
Linux 之 FTP服务器搭建的更多相关文章
- 《Linux下FTP服务器搭建及FTP使用》
.LOGAndy:mxtd114 <Linux下FTP服务器搭建> 0.root登录 1.安装ftp # yum -y install ftp 2.安装vsftpd # yum -y in ...
- Linux中ftp服务器搭建
一.FTP工作原理 (1)FTP使用端口 [root@localhost ~]# cat /etc/services | grep ftp ftp-data 20/tcp #数据链路:端口20 ftp ...
- linux下FTP服务器搭建教程1
你买了个主机就像是买了块地皮,搭建FTP就像是盖房子,我在地皮上建房子,然后创建的用户就像是钥匙,我给谁钥匙(权限),谁就可以到我家去玩,去放东西,拿东西. 虽然我们买不起现实的房子,但是我们可以买互 ...
- linux上FTP服务器搭建
一.启动vsftpd服务 1. 启动VSFTP服务器 A. cenos下运行:yum install vsftpd B. 登录Linux主机后,运行命令:"service vsftpd st ...
- 一起来学linux:FTP服务器搭建
首先安装vsftpd: apt install vsftpd有下面几个重要的配置文件:1 /etc/vsftpd.conf. 这个是vsftpd的配置文件.通过“参数=设置值”的方式来设置的. 2 / ...
- linux centos ftp服务器搭建
原文参考 步骤一:构建vsftpd服务器 1)使用yum安装vsftpd软件包yum -y install vsftpdrpm -q vsftpd #确认安装成功,显示vsftpd对应版本 vsftp ...
- linux下ftp服务器搭建
1.yum install vsftpd 使用yum安装ftp 2.创建并授权ftp文件目录 mkdir -P /ftp/ftpadmin chmod -R 777 /ftp/ftp ...
- Linux CentOS 6.5 下 vsftpd ftp服务器搭建
Linux CentOS 6.5 下 vsftpd ftp服务器搭建 by:授客 QQ:1033553122 操作系统环境:CentOS 6.5-x86_64 下载地址:http://www.ce ...
- Linux之匿名FTP服务器搭建
FTP(File Transfer Protocol)是在服务器与客户端进行文件传输的一种传输协议.本次介绍的是vsftpd的软件体验ftp服务. FTP服务器默认情况下依据用户登录情况分为三种不同的 ...
随机推荐
- [转载]matlab图像处理为什么要归一化和如何归一化
matlab图像处理为什么要归一化和如何归一化,一.为什么归一化1. 基本上归一化思想是利用图像的不变矩寻找一组参数使其能够消除其他变换函数对图像变换的影响.也就是转换成唯一的标准形式以抵抗仿射变 ...
- STL之stack操作
c++ stl栈stack介绍 C++ Stack(堆栈) 是一个容器类的改编,为程序员提供了堆栈的全部功能,——也就是说实现了一个先进后出(FILO)的数据结构. c++ stl栈stack的头文件 ...
- 【启发式拆分】bzoj4059: [Cerc2012]Non-boring sequences
这个做法名字是从武爷爷那里看到的…… Description 我们害怕把这道题题面搞得太无聊了,所以我们决定让这题超短.一个序列被称为是不无聊的,仅当它的每个连续子序列存在一个独一无二的数字,即每个子 ...
- 关键字final
final数据 对于一个final变量,如果是基本数据类型的变量,则其数值一旦在初始化之后便不能更改:如果是引用类型的变量,则在对其初始化之后便不能再让其指向另一个对象.再次赋值将引起编译报错. 当f ...
- .Net Core依赖注入中TryAddEnumerable 和TryAddTransient方法的区别
.Net Core依赖注入添加的每个服务,最终都会转换为一个ServiceDescriptor的实例,ServiceDescriptor包含以下属性: Lifetime:服务的生命周期(Singlet ...
- 如何用纯 CSS 创作一根闪电连接线
效果预览 在线演示 按下右侧的"点击预览"按钮可以在当前页面预览,点击链接可以全屏预览. https://codepen.io/comehope/pen/RBjdzZ 可交互视频 ...
- matplotlib学习记录 四
# 绘制3月每天最高温和10月每天最高温散点图 from matplotlib import pyplot as plt # 让matplotlib能够显示中文 plt.rcParams['font. ...
- Java-basic-6-方法
命令行参数的使用 public class test { public static void main(String args[]) { for(int i = 0; i < args.len ...
- ssl 在nginx上的部署示例
server { listen 80; listen 443 ssl; server_name [DOMAIN]; ssl on; ssl_certificate /work/ss ...
- UTV - URL Tag Validation
What`s UTV 1.URL Tag Validation 2.Special format of URL for preventing unauthorized usage and access ...