一、操作环境
服务端:银河麒麟桌面操作系统V10
客户端:银河麒麟桌面操作系统V10
二、服务器配置
说明:以下命令均在终端执行。鼠标点击桌面右键,在终端中打开。
操作步骤:
(一)安装vsftpd软件
sudo apt-get install vsftpd
系统会提示输入密码,请输入开机密码。
如下图所示,表示vsftpd安装成功。但是,作者在安装的时候遇到了一个错误:有不满足的依赖关系。解决方法放在了文末。
(二)设置开机启动
sudo systemctl enable vsftpd
(三)启动FTP服务
systemctl start vsftpd
查看其运行状态
systemctl status vsftpd
(四)创建FTP用户
创建用户名:ftpadmin
sudo useradd -d /home/ht/ftp/ftp_root -m ftpadmin
useradd命令的-d
和-m
参数分别用于指定用户的主
目录和自动创建该目录。如果创建失败,则自行在对应目录创建文件夹。
设置用户名密码:ftp123456
sudo passwd ftpadmin
之后就输入密码ftp123456即可。
设置文件目录权限。
sudo chmod -R 777 /home/ht/ftp/ftp_root
(五)修改配置文件
sudo pluma /etc/vsftpd.conf
按下面内容进行修改:
listen=NO # 阻止 vsftpd 在独立模式下运行
listen_ipv6=YES # vsftpd 将监听 ipv6 而不是 IPv4,您可以根据您的网络情况设置
anonymous_enable=NO # 关闭匿名登录
local_enable=YES # 允许本地用户登录
write_enable=YES # 启用可以修改文件的 FTP 命令
local_umask=022 # 本地用户创建文件的 umask 值
dirmessage_enable=YES # 当用户第一次进入新目录时显示提示消息
xferlog_enable=YES # 一个存有详细的上传和下载信息的日志文件
connect_from_port_20=YES # 在服务器上针对 PORT 类型的连接使用端口 20(FTP 数据)
xferlog_std_format=YES # 保持标准日志文件格式
pam_service_name=ftp # vsftpd 将使用的 PAM 验证设备的名字
最后一个行的pam_service_name=ftp是重点,V10系统的值是ftp,SP1的值是vsftpd,不能出错。
在配置文件最后增加访问白名单参数,添加以下信息:
userlist_deny=NO
userlist_enable=YES
userlist_file=/etc/vsftpd.allowed_users
保存退出文件。
(六)新建白名单列表
sudo pluma /etc/vsftpd.allowed_users
输入ftpadmin后保存退出。
(七)重启服务
systemctl restart vsftpd
三、客户端连接测试FTP服务器
1.打开浏览器,在地址栏输入:ftp://服务端IP
服务器端测试可以输入:ftp://localhost
出现如下登录窗口,说明FTP服务部署成功,可以用输入用户名和密码登录FTP。
2.除了用浏览器访问FTP服务器,还可以使用“FTP客户端”来访问。可以到软件商店搜索安装该软件。
3.在使用过程中,可以设置下载限速,以防止把带宽占满,影响使用。
4.若服务拒绝连接,可以尝试打开 安全中心 / 网络保护 / 应用程序联网,关闭。
四、解决安装错误
作者在安装时遇到一个错误:有不满足的依赖关系。这意味着我们安装的软件包需要其他特定的软件包作为依赖,而这些依赖没有在系统上正确安装或者更新到合适的版本。
按照以下步骤解决这个问题:
1.更新系统软件源:
sudo apt-get update
2.修复依赖关系:
sudo apt-get -f install
3.如果依然解决不了问题,继续执行以下命令:
安装缺失的依赖:
sudo apt-get install -f
清理不需要的包:
sudo apt-get autoremove
sudo apt-get autoclean