Ubuntu 16.04 安装ftp服务器传输文件
最近在搞深度学习,老师要求我以后负责管理服务器。往后所有要使用服务器的人都必须向我申请账号,然后只允许客户端访问,使用文件传输软件传输文件。像我这样一个linux菜逼,这种要求不是赶鸭子上架嘛!而且我对运维也不感兴趣,想着实验不能再拖了,真是事多啊,影响我效率。然而吐槽归吐槽,正事还是要办,不然就没服务器用了=。= .......
(一)创建用户
相信大家的linux入门教材都是《鸟哥私房菜》,然而,我实际操作的时候发现并不是那么一回事。其实Ubuntu有自己的默认设置,如果你还使用useradd命令的话,/home下是不会自动创建用户主目录的。
后来查资料发现,Ubuntu其实并不是在故意搞事情,而是大大简化的我们的操作-------下面就讲讲adduser命令!
这个命令实际是一个perl脚本,是useradd等类似底层命令的更友好的前端,它会用交互性的方式建立新用户,使用它可以指定新用户的家目录,登录密码,是否加密主目录等等,它会:
1.建立一个新目录作为家目录
2.建立同名新组
3.把用户的主要组设为该组(除非命令选项覆盖以上默认动作,比如–disall-homdirecry之类)
4.从/etc/SKEL目录下拷贝文件到家目录,完成初始化
5.建立新用户的密码
6.如果其存在的话,还会执行一个脚本。
整个过程只需要一条命令(如 sudo adduser username),是不是很简单?下面我们来看看执行效果,假设我们要建一个用户xuanxufeng_1:

我们按提示一步步走就行了!

我们可以看到/home下已经自动为xuanxufeng_1这个用户创建了主目录,是不是比useradd这个命令方便的多。
(二)为普通用户添加sudo权限
刚刚创建完的用户其实并不能获得超级用户的权限,如果你使用sudo+命令来提升权限,系统会给你报错。
但是笔者在想,老师的本意是希望每个用户的操作不要互相影响,用户之间应当是隔离的,我是不是应该赋予每个用户超级权限呢?但是如果不给,很多环境的搭建都要用到sudo,那么这种情况下又该怎么办呢?这里小弟不太明白,希望各位看官能指点迷津,小弟不甚感激!!!
下面介绍如何配置sudoers:
sudo功能的配置文件一般在这里:/etc/sudoers,可以使用gedit 编辑。然而/etc/sudoers的配置文件的注释里说明了,不建议直接修改/etc/sudoers,而是通过在/etc /sudoers.d/文件夹中新增文件来完成配置。
Please consider adding local content in /etc/sudoers.d/ instead of directly modifying this file.
新增的文件就用gedit编辑就可以了,比如说要为xuanxufeng_1增加sudo权限,就增加一个文件,文件名无所谓,内容是:
xuanxufeng_1 ALL=(ALL) ALL
保存,退出。
然后需要把这个文件权限设置为400: chmod xuanxufeng_1
再用xuanxufeng_1用户登录后就可以使用sudo权限了。
注意:Ubuntu10.04(11.04是好的,其他版本没测)有一个严重的BUG,在/etc /sudoers.d/中增加文件后,如果此文件不是400权限,则无法再次使用sudo,一用就系统崩溃!想再修改文件属性也无法修改,Ubuntu默 认root是不能直接登录的。如果已经发生了这个情况,只能重启到单人维护模式,把文件权限设置好再重新启动!对托管在机房的机器来说真是一个灾难!
如果想避免这个情况,不要sudo增加文件,而是先sudo su root换做root身份登录,然后再创建文件修改文件权限,就可以了,因为此时root没退出,所以可以修改。
(三) Ubuntu16.04安装ftp服务器
这里是正题。
sudo apt-get update
sudo apt-get install vsftpd
执行完该步骤,vsftpd服务已经安装
1. 修改ftp的配置文件 /etc/vsftpd.conf
(a)向文件中添加如下内容:
userlist_deny=NO
userlist_enable=YES
#允许登录的用户
userlist_file=/etc/allowed_users
seccomp_sandbox=NO
local_enable=YES
#设置文件上传
write_enable=YES
#使用utf8
utf8_filesystem=YES

使文件中的"local_enable=YES"保存。
(b)新建/etc/allowed_users文件
sudo gedit /etc/allowed_users
假设我只想让xuanxufeng和root访问ftp服务器,那么输入xuanxufeng,root-->保存OK!以后还有其它用户使用ftp时直接添加用户名就可以了!
(c)使用gedit查看/etc/ftpusers文件中的内容
sudo gedit /etc/ftpusers
打开这个文件后,看一看有没有uftp这个用户名,如果没有,就直接退出。如果有就删除uftp,因为这个文件中记录的是不能访问FTP服务器的用户清单。
重启vsftp服务器。
2. 启动停止重启服务
sudo /etc/init.d/vsftpd start
sudo /etc/init.d/vsftpd stop
sudo /etc/init.d/vsftpd restart
3. 访问ftp服务器
sudo ftp 127.0.0.1
浏览器访问
ftp://127.0.0.1
或者
ftp://localhost
远程访问时使用实际ip: ftp://your_ip
4. windows下简单有效地访问ftp服务器
我们有三种方式可以访问(假设服务器ip地址是:172.16.23.33)
(1)浏览器
在浏览器中输入ftp://172.16.23.33,运行结果如下:

(2)使用文件传输软件(比如8uftp):

按道理讲,访问权限仅限于xuanxufeng这个用户的主目录,但是这个软件真特么的强大,它竟然能越过我的主目录,访问整个系统!好怕怕=。=
另外,这里有乱码的问题,由于本篇文章的重点不在这,我也懒得管这个了,有兴趣的读者可以自己去试着去解决一下。
(3)最后,我来介绍一个最方便的方法~ windows其实还挺方便的,也不是一无是处哈~
双击“计算机”,在地址栏输入:ftp://172.16.23.33/,然而并没有什么卵用....

不要着急嘛~ 右击一下,选择登陆~~~



Ubuntu 16.04 安装ftp服务器传输文件的更多相关文章
- Ubuntu 16.04 安装ftp服务器
1.sudo apt-get update 2.sudo apt-get install vsftpd ,执行完该步骤,vsftpd服务已经安装 3.创建ftp用户 a,创建用户目录 sudo mkd ...
- ubuntu 18.04安装ftp服务器
首先安装vsftpd: sudo apt-get install vsftpd 可以通过命令vsftpd -version查看vsftpd版本. 为ftp服务器新建一个用户(比如我这里新建一个用户名和 ...
- Ubuntu 16.04安装FTP客户端filezilla
1.安装: sudo apt-get install filezilla 参考: http://os.51cto.com/art/201103/247564.htm
- Ubuntu 16.04 安装 VMware Tools(解决windows和Ubuntu之间不能互相复制粘贴文件的问题)
Ubuntu 16.04安装虚拟工具VMware Tools,指的是在虚拟机VMWare安装Ubuntu 16.04后再安装VMware Tools的过程.很多人接触Linux都是从虚拟机开始,而安装 ...
- Ubuntu 16.04 安装和配置 Redis
因为发现之前手动安装的 redis 与现有的教程不一样,所以总结统一一下安装的标准步骤. 安装依赖项 为了获取最新版本的 Redis,我们将从源代码进行编译和安装.下载源代码之前,需要先安装一些编译所 ...
- Ubuntu 16.04 安装 RabbitMQ
Ubuntu 16.04 安装 RabbitMQ(注意,服务器安全组需要添加15672 和5672端口) #1 更新 $ sudo apt-get update$ sudo apt-get upgra ...
- Ubuntu 16.04安装Memcached(单机)
Ubuntu 16.04安装Memcached,不过不仅限与Ubuntu,可以用CentOS等去安装,只不过测试时使用的是Ubuntu机器.Windows下不建议使用,本机调试可以使用,线上环境除了W ...
- Ubuntu 16.04安装QQ国际版图文详细教程
因工作需要,我安装了Ubuntu 16.04,但是工作上的很多事情需要QQ联系,然而在Ubuntu上的WebQQ很是不好用,于是在网上搜索了好多个Linux版本的QQ,然而不是功能不全 ...
- Ubuntu 16.04 安装Mysql 5.7 踩坑小记
title:Ubuntu 16.04 安装Mysql 5.7 踩坑小记 date: 2018.02.03 安装mysql sudo apt-get install mysql-server mysql ...
随机推荐
- string和char*的相互转换
原文地址: 点击打开链接
- 头疼--windows之安装meteor.js
如果你的电脑是window,这篇文章会的对你有些帮助. 进入meteor官网下载的meteor for windows安装包老是安装失败而且很慢,很慢,经过一番研究之下,终于安装成功了,特此来分享下经 ...
- 互联网中一些常用指标(PV、UV、蹦失率、转换率、退出率)
1) PV:PageView 页面点击量,每次刷新就算一次浏览,多次打开同一页面会累加. 通常是衡量网站的主要指标. 2)UV:Unique Visitor一天内访问网站的人数(是以cookie为 ...
- node.js实用小模块
1.浮点数操作 npm install float 2.MD5加密类 npm install MD5 3.xml解析类 1 npm install elementtree 4.转换字符串大小写 1 n ...
- Java多线程(转)
文章转自http://286.iteye.com/blog/2292038 谢谢博主的总结! 进程(Process)是计算机中的程序关于某数据集合上的一次运行活动,是系统进行资源分配和调度的基本单位, ...
- 音乐播放(AVAudioPlayer)
- 常用的7个.htaccess代码组织某个国家的IP访问
htAccess 文件(Hypertext Access file)是Apache Web服务器的一个非常强大的配置文件,对于这个文件,Apache有一堆参数可以让你配置出几乎随心所欲的功能. 使用. ...
- 第三个Sprint冲刺github 与最终 github
链接:https://github.com/22shaojiawen/the-third-sprint-project
- C++学习笔记34:泛型编程拓展3
输入流迭代器 #include <iostream> #include <iterator> #include <algorithm> #include <v ...
- Maven学习-目录结构
在前一篇文章中,我们介绍了什么是Maven,以及如何用Maven来构建我们的项目.不了解Maven的童鞋,可以看这里Maven学习-入门.在这篇文章中,我们将学习Maven的项目的目录结构相关的内容. ...