linux 银河麒麟V10 VSFTPD服务端安装、配置的图文教程
前言:本篇文章,集互联网好友的成果、本菜鸟实践摸索的结果,整理综合而得。本人在CSDN、百度、B站等各大网站进行了有限的搜索,都没有看到完全适配的答案。
如果你也是国产电脑的受“益”者,也在找寻FTP服务端安装与配置的方法,Linux系统的基础不扎实的话,那你找对地方了。本案例已在实机上稳定运行1个月,目前仍在稳定运行中。
欢迎交流,基于国产电脑的更多其他软件工具的安装配置,以期提升办公效率。
目录
一、电脑基本信息
二、安装FTP
1.输入vsftpd(尚未安装的结果)
2.输入vsftpd(已安装的结果)
三、配置FTP
(1)修改VSFTPD的配置文件(vsftpd.conf)
1.找到vsftpd.conf文件
2.修改vsftpd.conf文件
3.修改vsftpd.conf文件的参数
(2)补充添加本地用户vur
(3)配置账号密码验证机制
1.建立FTP目录和账号密码文件
2.把TXT文件转db库文件
3.给数据库文件权限,防止其他用户查看密码。
4.配置vsftpd的PAM认证文件。
(4)配置虚拟用户的conf配置文件
1.创建nyjbgs用户的配置文件
2.创建dayinji用户的配置文件
(5)设置FTP文件的访问权限。
四、FTP其他相关
1.相关命令
2.开机自启动vsftpd
3.服务器的防火墙。
4.固定IP。
一、电脑基本信息
银河麒麟版本:kylin V10 版权所有KylinOS
系统内核:
Linux4.4.131-20210120.kylin.desktop-generic-aarch64-with-Kylin-v10-juniper
CPU:Phytium,FT-2000/4(64位,4核)
注:用于核对对比操作环境的差异。只要咱们是同行一般没什么差异哈,不过得是银河麒麟系列系统。我单位还有统信系统的国产电脑(可能不太适用)
二、安装FTP
一般电脑都自带安装了。CTRL+ALT+T,打开终端。
1.输入vsftpd(尚未安装的结果)
显示以下信息,代表未安装。
按照提示,再输入sudo apt install vsftpd
输入用户密码(自己)
等待安装结束(一大串)——安装结束。
2.输入vsftpd(已安装的结果)
显示以下信息,代表这个程序已经有了(安装成功),但是缺个文件(下一步就进行文件配置)
不放心,可以再输入vsftpd -v
显示以下信息,我的版本就是3.0.3。代表成功安装了3.0.3的vsftpd
注:“程序名称”+“空格”+“-v”,可查询该程序的版本,基本通用所有程序。
三、配置FTP
(1)修改VSFTPD的配置文件(vsftpd.conf)
1.找到vsftpd.conf文件
一般在系统盘的etc文件夹中,
注:不同的操作系统会有一些差异,但是这个配置文件名称是一致的,若找不到,可以在系统盘中进行搜索,记住或者复制路径
2.修改vsftpd.conf文件
终端输入vim /etc/vsftpd.conf
该代码可以进入配置文件并进行修改(如果没有vim,可以使用vi)
3.修改vsftpd.conf文件的参数
蓝色内容为解释,方便他人理解。白色内容为程序的参数。
配置文件的初始参数为以下内容:(可以跳过)
listen=NO
listen_ipv6=YES
anonymous_enable=NO
local_enable=YES
dirmessage_enable=YES
use_localtime=YES
xferlog_enable=YES
connect_from_port_20=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
经过自己的摸索(网上各类教程、解释)和需求(设置多个虚拟用户,给虚拟用户配置不同的权限,适用于局域网FTP),配置了以下自己的参数(一行行讲解),按i进入编辑状态。
listen=YES
listen_address=192.168.***.***
listen_port=5021
connect_from_port_20=YES
#启动IPV4地址的监听
#监听地址:自己电脑的IP地址
#监听端口:默认为21,建议修改至更高,提高他人找寻难度。
#确定数据端口为20。跟电路中弱电控制强电是一个逻辑。21端口是信息端口,接受连接、登录、离线等各种控制信息。20端口是数据端口,上传下载的文件就是通过这个端口传输。
local_enable=YES
write_enable=YES
local_umask=022
#允许本地用户登录,设置的多个虚拟用户需要集中寄托于一个本地用户。
#允许写入修改功能。
#本地用户的掩码:022对应本地用户创建新目录和文件的权限755。掩码等级 对应 权限等级(有特殊需求可自行对应修改),使用默认值022就行。
anon_upload_enable=NO
anon_mkdir_write_enable=NO
#匿名用户上传文件:拒绝
#匿名用户创建修改文件:拒绝。我们是虚拟用户模式,需要账号密码登录。
pasv_enable=YES
pasv_min_port=50210
pasv_max_port=50310
pasv_address=192.168.***.***
#启动被动(PASV)模式。经过网上查询有主动、被动两种模式,其中被动模式比较适用。被动模式:客户端拿着开放的端口找服务器。主动模式:服务器拿着开放端口找客户端。网上解释:因为大部分客户端都是在路由器后面,没有独立的公网IP地址,服务器想要主动连接客户端,难度太大,在现在真实的互联网环境里面几乎是不可能完成的任务。简单的说:一个单位的某人找另一个单位对接,很容易(一查地址就行),一个单位想找另个单位的某人,很麻烦(要先打通单位的座机,再拿着人名问手机号)
#端口号最低线多少。
#端口号最高线多少,之间就是客户端可以对接的
#被动模式中,客户端找服务器的地址。
dirmessage_enable=YES
#启动之后,初次登录FTP,系统会自动扫描目录、查找文件.message,并显示.message文件里面的信息,没有则就不显示,也没有什么影响。如果想搞个装逼的欢迎仪式,可以研究研究。
use_localtime=YES
#启用本地时间,一般都使用本地时间,有跨国业务的,有时差的地区,可以关注该设置参数。
xferlog_enable=YES
xferlog_std_format=YES
xferlog_file=/var/log/vsftpd.log
#启动日志功能,可以看到用户上传下载信息。
#启用标准日志格式。
#日志文件vsftpd.log的存放路径/var/log/vsftpd.log,爱存哪里就存哪里,可以自定义修改。
tcp_wrappers=YES
#开启IP的黑白名单。仅仅两个配置(允许、拒绝)文件:/etc/hosts.allow和/etc/hosts.deny
chown_uploads=NO
#NO=禁止上传文件更改宿主,YES=允许上传文件更改宿主
idle_session_timeout=360000
data_connection_timeout=360000
#超过多少秒,信号端口没有动静,踢掉。连上了什么都不做,占我服务器资源,踢掉。
#超过多少秒,数据端口没有动静,踢掉。下载下一半掉网了,连了一会不下载了,踢掉。
guest_enable=YES
guest_username=vur
virtual_use_local_privs=YES
allow_writeable_chroot=YES
user_config_dir=/etc/vsftpd/vconf
#启动虚拟用户模式。
#设置的虚拟用户集中映射在vur本地用户上。虚拟的灵魂需要一个实际的载体。
#虚拟用户和本地用户可以拥有同等权限。
#不允许虚拟用户离开自己的访问根目录。修改虚拟用户的配置文件可以满足不同的需求,比如权限不一样,访问目录不一样。
#在vsftpd目录中专门建立的一个vconf目录,用于专门存放各个虚拟用户相应配置文件。我们现在编辑的是主配置文件,后面编辑虚拟用户配置文件。
chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd.chroot_list
#用户将被限制在其用户的主目录之内,不得跳出。
#启用名单通行制度。YES则启用白名单。NO则启动黑名单。chroot_local_user与chroot_list_enable的不同组合,可以带来四种的功能。1.名单上的用户受限制。2.名单上的用户不受限制。3.名单之外的用户受限制。4.名单之外的用户不受限制。
#vsftpd.chroot_list名单文件的存放路径/etc/vsftpd.chroot_list,同样是爱存哪就存哪,没有这个文件就必须创建一个同名文件(TXT格式就行,每行放一个用户名就行)。(我电脑的这个列表文件是空的,设置了个寂寞。但是不影响使用大的安全,因为设置了虚拟用户不能跳出FTP的根目录。)
ascii_upload_enable=YES
ascii_download_enable=YES
#允许以ASCII编码形式,上传文件。
#允许以ASCII编码形式,下载文件。
ls_recurse_enable=NO
#不允许使用“ls -R”这个命令。ls就是列出目录清单的命令,ls -R就是列出所有目录和所有文件清单的命令。对于大型的FTP服务器,里面有很多目录和很多文件。如果所有进来的人都要服务器列一遍所有目录和文件,到最后只下载一个文件,服务器这就很崩溃,你在玩我呢。
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
#以上三行参数没有改动,也没搞清楚实际用途,不影响现有需求。
utf8_filesystem=YES
#启用utf8编码模式。统一标准可以防止上传或下载文件的中文名称发生乱码。
(2)补充添加本地用户vur
在终端输入adduser vur,按提示输入相关信息(连续回车),即可创建本地用户vur。
注:因为虚拟用户需要集中映射到本地用户,所以需要创建本地用户vur。vur这个名字是常用的(可以改成自己喜欢的,但是配置文件中要同步修改),翻译过来也是虚拟virtual user。
(3)配置账号密码验证机制
1.建立FTP目录和账号密码文件
终端输入:cd /etc
#跳转到etc目录中
mkdir vsftpd
#创建名为vsftpd的目录
cd vsftpd
#跳转到vsftpd目录中
vim vur_list
#创建vur_list文件(txt),并打开编辑。名称定为vur_list是方便管理和记忆。vur是本地用户名,_list是列表文件的意思。
按i进入编辑模式。
第一行 为虚拟用户1的账号,第二行为虚拟用户1的密码。
第三行 为虚拟用户2的账号,第四行为虚拟用户2的密码。
以此类推
按ESC,退出编辑模式,输入:wq,进行保存并退出。
2.把TXT文件转db库文件
把vur_list文本文件转换为vur_list.db数据库文件
使用db_load命令,把账号密码文本文件(vur_list),用HASH算法生成FTP用户数据库文件(vur_list.db)
终端在vsftpd目录下,输入:
db_load -T -t hash -f vur_list.txt vur_list.db
没安装db_load 程序,没关系。
直接输入命令安装:apt install db-util
3.给数据库文件权限,防止其他用户查看密码。
用root身份,利用chmod命令,给vur_list.db赋权。
chmod 600 /etc/vsftpd/vur_list.db
600代表其他人不可读写
4.配置vsftpd的PAM认证文件。
在pam.d目录(我的在etc目录中)中,找到vsftpd,一般都有的。
vim /etc/pam.d/vsftpd
这个文件是自带的命令参数,现在需要把所有的命令行用#注释掉,然后输入以下参数。
auth required pam_userdb.so db=/etc/vsftpd/vur_list
account required pam_userdb.so db=/etc/vsftpd/vur_list
#你的vur_list.db在哪里,路径就连到哪里,连接时候需要把.db去掉,因为db=这里就规定了文件类型。启动了两种验证(auth、account)
auth:主要是接受用户名和密码,进而对该用户的密码进行认证,并负责设置用户的一些秘密信息。
account:主要是检查帐户是否被允许登录系统,帐号是否已经过期,帐号的登录是否有时间段的限制等等。
:wq,保存并退出
(图片还没改过来,以文字为准)
(4)配置虚拟用户的conf配置文件
在/etc/vsftpd目录中,创建vconf目录。要与主配置文件其中一行的参数(user_config_dir=/etc/vsftpd/vconf)保持一致。这里创建配置用户配置文件的文件名必须与上面创建的用户名一致。
1.创建nyjbgs用户的配置文件
终端在/etc/vsftpd/vconf目录中,输入vim nyjbgs
#创建用户1的配置文件,并打开编辑
配置内容如下:
local_umask=022
write_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
anon_upload_enable=YES
anon_world_readable_only=No
local_root=/home/FTP
allow_writeable_chroot=YES
2.创建dayinji用户的配置文件
终端在/etc/vsftpd/vconf目录中,输入vim dayinji
#创建用户1的配置文件,并打开编辑
配置内容如下:
write_enable=YES
local_umask=022
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_world_readable_only=No
download_enable=NO
local_root=/home/FTP
allow_writeable_chroot=YES
(5)设置FTP文件的访问权限。
为保证其他用户可以访问,给予rwxr-xr-x权限:
chown vur:vur /home/FTP
chmod -R 777 /home/FTP
三位数字对应所有者、群组、其他
有意义的三种权限分别为:0、5、7
0(没有任何权限)
5(读和执行,基本权限)
7(读、写和执行,最高权限)
-R 表示对该目录及其子目录都进行赋权操作。
四、FTP其他相关
1.相关命令
systemctl enable vsftpd 开启
systemctl start vsftpd 启动
systemctl stop vsftpd 停止
systemctl restart vsftpd 重启动
systemctl status vsftpd 查询状态
netstat -antup | grep ftp 在端口中,查询FTP关键词,并以简要格式呈现。
2.开机自启动vsftpd
更改/etc/rc.local (常用)
vim /etc/rc.local
关键是找到rc.local文件在那,搜索就行,我这操作环境就在/etc目录下。中间的路径直接粘贴复制。
意思就是启动完所有该启动的之后,再执行以下代码命令。
在exit 0的上一行添加systemctl start vsftpd,保存退出。
重启之后,直接查询启动状态,显示活跃即设置成功。
3.服务器的防火墙
我们电脑没有安装这玩意。
4.固定IP
如果你的电脑是自动获取IP地址的,还需要手动设置下IP地址。
linux系统相对于WIN系统,给予了很大修改操作权限,但是兼容性需要自己去列情况。
就像进入人体一样,复杂的也有,简单的也有,改造的空间和潜力很大,可以学到的也很多,是可以调教成真正属于自己的操作系统。
linux 银河麒麟V10 VSFTPD服务端安装、配置的图文教程相关推荐
- NFS介绍,NFS服务端安装配置,NFS配置选项
2019独角兽企业重金招聘Python工程师标准>>> NFS介绍: NFS(Network File System)即网络文件系统,是FreeBSD支持的文件系统中的一种,它允许网 ...
- svn教程----svn服务端安装配置
svn服务端安装配置 1.两种服务端安装包 1.1.官方安装包 官方网站:http://subversion.apache.org/ 下载:http://subversion.apache.org/d ...
- 14.1 NFS介绍 14.2 NFS服务端安装配置 14.3 NFS配置选项
2019独角兽企业重金招聘Python工程师标准>>> 第14章 NFS服务搭建与配置 14.1 NFS介绍 NFS(Network File System)即网络文件系统,是Fre ...
- 服务器php环境搭建教程,PHP服务端环境搭建的图文教程(分享)
一.PHP服务端环境搭建 1.php服务端环境安装套件xampp(apach+mysql+php解释器) F:\MyDoc文件(重要)\DL_学习\download重要资源\apache服务器组件 安 ...
- 服务器php环境搭建教程,最清晰的PHP服务端环境搭建的图文教程
PHP环境搭建也是一门技术,本文为大家分享一篇PHP服务端环境搭建的图文教程,具有很好的参考价值,希望对大家有所帮助. 一.PHP服务端环境搭建 1.php 服务端环境 安装套件 xampp(apac ...
- 最全的mysql 5.7.13_最全的mysql 5.7.13 安装配置方法图文教程(linux) 强烈推荐!
linux环境Mysql 5.7.13安装教程分享给大家,供大家参考,具体内容如下 1系统约定 安装文件下载目录:/data/software Mysql目录安装位置:/usr/local/mysql ...
- mysql 8.0.18安装,mysql 8.0.18 安装配置方法图文教程
mysql 8.0.18 安装配置方法图文教程 本文记录了mysql 8.0.18 安装配置图文教程,供大家参考,具体内容如下 第一步:下载MySql 下载地址:MySQL 第二步:安装MySql 打 ...
- 转载:mysql 5.7.10 安装配置方法图文教程——来自脚本之家网,作者是汤高
mysql 5.7.10 安装配置方法图文教程 作者:汤高 字体:[增加 减小] 类型:转载 时间:2016-06-22 我要评论 这篇文章主要为大家分享了mysql 5.7.10 安装配置方法图文教 ...
- python3.6.2怎样安装,python 3.6.2 安装配置方法图文教程
python 3.6.2 安装配置方法图文教程 Windows下Python(pip)环境搭建(3.6)图解,供大家参考,具体内容如下 1.下载最新的Python安装:3.6.2 2.安装时不要选择默 ...
最新文章
- 光谱投影颜色感知器件与围栅多桥沟道晶体管技术
- HLG 1481 Attack of the Giant n-pus【二分+二分图完全匹配】
- JavaScript中实现私有属性的写类方式(2)
- php访问获取全部网站状态码,php打开其他网站获取状态码
- linux+平均磁盘请求数量_SUSE LINUX下磁盘IO性能监测分析
- python 项目生成 requirements.txt 文件
- 前端 CSS day03-核心属性
- javascript 计算两个坐标的距离 米_土方全面应用计算
- Blazor VS 传统Web应用程序
- c++ 提取傅里叶描述子_AI大语音(四)——MFCC特征提取(深度解析)
- 使用函数返回值的循环例子
- python电脑配置-Python--获取电脑配置信息--设计代码
- [NOI2014] 动物园
- TX2不支持TensorRT INT8,int8 官方参考
- monkey命令常用参数与monkey事件百分比
- MySQL设计成一维数据库_mySQL教程 第1章 数据库设计
- 删掉nd array数组中的所有零元素
- 安装Win11找不到固态硬盘如何解决?
- 2022年,送给程序员的运动健身知识
- 无线个人通信(WPAN)-蓝牙