Linux 学习笔记05丨在Ubuntu 20.04配置FTP服务器
感谢 linuxconfig.org 上的这篇英文教程
FTP用于访问和传输本地网络上的文件,通过安装 VSFTPD 软件,打开热点,配置相关信息后即能够启动并运行FTP服务器了。
1. 安装和配置VSFTPD
在终端中输入指令以安装 VSFTPD
$ sudo apt-get install vsftpd
2. 设置 FTP 用户账号
首先我们对原配置文件 vsftpd.conf 进行备份,避免待会的操作中出错。
$ sudo mv /etc/vsftpd.conf /etc/vsftpd.conf_orig
接着,我们通过编辑器(这里用vi)打开原来的配置文件。
$ sudo vi /etc/vsftpd.conf
将下面基本配置信息全部复制粘贴到刚打开的配置文件/etc/vsftpd.conf ,然后保存修改并关闭文件
listen=NO
listen_ipv6=YES
anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022
dirmessage_enable=YES
use_localtime=YES
xferlog_enable=YES
connect_from_port_20=YES
chroot_local_user=YES
secure_chroot_dir=/var/run/vsftpd/empty
pam_service_name=vsftpd
rsa_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem
rsa_private_key_file=/etc/ssl/private/ssl-cert-snakeoil.key
ssl_enable=NO
pasv_enable=Yes
pasv_min_port=10000
pasv_max_port=10100
allow_writeable_chroot=YES

由于Ubuntu的内置防火墙默认会阻止FTP的通信,我们通过下面的指令在UFW中新建个例外以允许通信。
$ sudo ufw allow from any to any port 20,21,10000:10100 proto tcp
重新启动VSFTPD以应用新的更改。
$ sudo systemctl restart vsftpd
3. 创建一个FTP用户
FTP服务器已经就就绪,可以接受传入的连接了。接下来就需要创建一个新的用户从而连接到FTP服务。
创建新用户 ftpuser的同时设置该用户的密码:
$ sudo useradd -m ftpuser
$ sudo passwd ftpuser
为了保证运行成功,需要在ftpuser的家目录中保存至少一个文件。
$ sudo bash -c "echo FTP TESTING > /home/ftpuser/FTP-TEST"
当我们连接到该FTP服务器时,我们就能够看到这样的文件。
3. 连结FTP服务器
现在,你用手机开下热点,你的小伙伴通过连接你的热点,然后输入你那边的IP地址或者主机名即能连接到FTP服务器了。接下来介绍两种方法,任意种方法都能够成功连接。
3.1 使用命令行连接到FTP服务器
打开终端,使用Ubuntu的 ftp 命令来连接你的 loopback 地址(127.0.0.1)或者 你电脑上特有的IP地址。
loopback 是一个特殊的网络接口(理解为虚拟网卡),用于本机中各个应用间的网络交互。
如何查看你电脑上的IP地址?
$ hostname -I
#打印显示的左边那串数字即是你的Ipv4地址了
$ ftp 127.0.0.1
#或者 ftp 你的电脑IP地址
接下来,会显示Connected并让你输入账号名称与口令(就是第2步创建的账号ftpuser)

由此连接成功!通过ls指令,就能查看该服务器中的文件或者创建目录了

3.2 通过GUI连接到FTP服务器
打开文件管理器,点击“其他位置”,在“连接到服务器”那一栏中输入 ftp://127.0.0.1(使用你的IP地址也可以),点击连接就会弹出窗口,输入你第二步创建的账号就能连接成功了。

成功连接后,就能看到直接所创建的文件了。

Linux 学习笔记05丨在Ubuntu 20.04配置FTP服务器的更多相关文章
- Ubuntu 14.04配置FTP服务器
搭建: 1.sudo apt-get update #更新软件 2.sudo apt-get install vsftpd ...
- Ubuntu 20.04 配置多网卡链路聚合
Ubuntu 20.04 配置多网卡链路聚合 多网卡IP配置 首先查看网卡信息 root@it:~# ip add 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65 ...
- Linux 学习笔记01丨Ubuntu系统安装、配置及软件教程集合
1. Ubuntu系统安装 Windows10安装ubuntu18.04双系统教程 Ubuntu 20.04.1 镜像下载 软碟通 机械革命进入BIOS模式 要按F2,注意将Boot Option中将 ...
- Ubuntu 14.04 配置FTP
配置Ubuntu 14.04的FTP服务,通过Windows远程访问Ubuntu 14.04的同时,可以实现windows和Ubuntu之间的文件交换传输.在多用户环境下,每一个用户都可以通过自己的帐 ...
- Ubuntu 16.04 安装ftp服务器传输文件
最近在搞深度学习,老师比较宝贝他的服务器,要求我以后负责管理服务器.往后所有要使用服务器的人都必须向我申请账号,然后只允许客户端访问,使用文件传输软件传输文件.像我这样一个linux菜逼,这种要求不是 ...
- PHP7 学习笔记(一)Ubuntu 16.04 编译安装Nginx-1.10.3、 PHP7.0.9、Redis3.0 扩展、Phalcon3.1 扩展、Swoole1.9.8 扩展、ssh2扩展(全程编译安装)
==================== PHP 7.0 编译安装================== wget http://cn2.php.net/get/php-7.0.9.tar.bz2/fr ...
- ubuntu 14.04 下FTP服务器的搭建--锁定用户目录,解决vsftpd: refusing to run with writable root inside chroot()
FTP服务器的搭建,我要实现的需求是: 不允许匿名访问,因为我的机器不想让谁都能登录上来,随便获取文件, 需要锁定一个目录,因为在家里,我需要给媳妇下载一些电影 韩剧之类的东西,媳妇会来我机器下载,但 ...
- Ubuntu 14.04 下FTP服务器的搭建
FTP服务器的搭建,我要实现的需求是: 不允许匿名访问,因为我的机器不想让谁都能登录上来,随便获取文件, 需要锁定一个目录,因为在家里,我需要给媳妇下载一些电影 韩剧之类的东西,媳妇会来我机器下载,但 ...
- 阿里云 Server (Ubuntu 12.04) 配置 FTP
来自 http://blog.csdn.net/zgrjkflmkyc/article/details/45510345 这个是阿里云的官方用户手册 http://bbs.aliyun.com/re ...
随机推荐
- sharding-jdbc 分库分表的 4种分片策略,还蛮简单的
上文<快速入门分库分表中间件 Sharding-JDBC (必修课)>中介绍了 sharding-jdbc 的基础概念,还搭建了一个简单的数据分片案例,但实际开发场景中要远比这复杂的多,我 ...
- Flask简介与启动服务器
Flask 一.简介 官方文档:http://flask.pocoo.org/ http://www.pythondoc.com/flask/index.html(中文) 1.概述 flask是一个非 ...
- Django前后端安全验证
会话技术 关注公众号"轻松学编程"了解更多. 1.Cookie 客户端会话技术(数据存储在客户端) 以key-value的形式进行存储 cookie的操作都是通过Response来 ...
- 利用VS2017制作软件安装包与卸载程序
本博客讲述如何利用VS2017制作安装包以及相应的卸载程序,并解决过程中可能遇到的问题 一.制作安装程序 1.打开VS2017,新建项目,选择如下图所示程序: 新建成功后,会出现如下图所示目录: 2. ...
- CF1324B
感觉 \(O(tn^2)\) 不是正解,于是弱弱的发了一波 \(O(tn)\) . 题意描述 你谷还没有人翻译,这里就简单介绍一下. 给你一个长为 \(n\) 的序列,如果它的一个长度至少为 \(3\ ...
- springcloud feign使用
1.Spring cloud fein的继承特性 通过对接口的继承,能够实现对fein客户端和feign服务器代码量的减少. 2.Ribbon配置 {服务名}.ribbon.ConnectTimeOu ...
- Ideas and Tricks Part II
33.对于统计答案幂次的技巧 对于$x^k$,考虑其组合意义:将$k$个不同球放到$x$个不同的盒子里的方案数,直接维护不好维护,那么考虑枚举把这些球放到了哪些盒子里,最后乘上第二类斯特林数和对于的阶 ...
- Spring Security 实战干货:客户端OAuth2授权请求的入口
1. 前言 在Spring Security 实战干货:OAuth2第三方授权初体验一文中我先对OAuth2.0涉及的一些常用概念进行介绍,然后直接通过一个DEMO来让大家切身感受了OAuth2.0第 ...
- 聚类之k-means附代码
import osimport sys as sys#reload(sys)#sys.setdefaultencoding('utf-8')from sklearn.cluster import KM ...
- Hive Join优化
在阐述Hive Join具体的优化方法之前,首先看一下Hive Join的几个重要特点,在实际使用时也可以利用下列特点做相应优化: 1. 只支持等值连接 2. 底层会将写的HQL语句转换为MapRed ...