【银河麒麟V10】【桌面】ftp常见场景搭建

一、ftp概述

见上文服务器系统关于ftp的介绍

【银河麒麟V10】【服务器】ftp使用介绍及常见场景搭建

二、常见场景搭建

(以下场景搭建以银河麒麟V10  0710  桌面系统为例)

1、匿名开放模式,匿名登录,拥有全部权限

#sudo  -i      //桌面提权

# apt  install vsftpd  -y      //安装vsftpd

# cp  -avx  /etc/vsftpd.conf  vsftpd.conf.bak     //修改前先备份配置文件

# vim   /etc/vsftpd.conf      //配置

listen=YES
listen_ipv6=NO
anonymous_enable=YES
local_enable=YES
anon_root=/opt/ftp        #定义匿名用户根目录
local_enable=YES
write_enable=YES
local_umask=022
anon_umask=022
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
anon_world_readable_only=YES
connect_from_port_20=YES
no_anon_password=YES
chroot_local_user=YES
allow_writeable_chroot=YES

# mkdir  -p  /opt/ftp/pub     //创建匿名用户根目录

# chmod  777 /srv/ftp/pub     //注意,此时不能直接赋予写权限给anon_root定义的根目录,如果是根目录设置为777(即拥有写权限),登录会报”500 OOPS: vsftpd: refusing to run with writable root inside chroot()“的错误,是因为从vsftpd2.3.5版本之后,vsftpd增强了安全检查,如果用户被限定在了其主目录下,则该用户的主目录不能再具有写权限了!如果检查发现还有写权限,就会报该错误。所以这里再创建一个pub目录,将pub目录赋予写权限, 实现匿名用户的创建和上传文件等写操作

# systemctl  restart  vsftpd

2、本地用户模式,需要用户名密码才能登录,拒绝匿名登录

# sudo  -i    //桌面提权

# mkdir  -p  /opt/ftp/lisi/pub          //创建名为lisi的ftp用户根目录

# useradd lisi  -s /sbin/nologin   -d  /opt/ftp/lisi      //为系统安全考虑,对创建的ftp用户lisi设置为nologin,即不允许使用lisi用户直接登录操作系统,然后-d参数是更改lisi用户的家目录为指定ftp根目录

# vim  /etc/pam.d/vsftpd    //需要注释掉PAM模块对vsftp登录的过度验证(最后一行),否则lisi用户为nologin状态下将无法登录ftp

【银河麒麟V10】【桌面】ftp常见场景搭建_第1张图片

# passwd lisi    //设置密码

# vim  /etc/vsftpd.conf     

listen=YES
listen_ipv6=NO
anonymous_enable=NO       #禁止匿名用户访问
local_enable=YES
chroot_local_user=YES
local_root=/opt/ftp/lisi
local_enable=YES
write_enable=YES
local_umask=022
connect_from_port_20=YES
allow_writeable_chroot=YES

# chmod 777 /opt/ftp/lisi/pub     

# systemctl restart vsftpd

【注】:如果客户端使用windows的filezilla的时候访问中文文件夹报错,可以设置编码格式为UTF8,操作方式如下:

用FileZilla给自己的FTP传文件的时候,总是提示“Failed to convert command to 8 bit charset”错误,这是FileZilla无法正确判断字符集编码造成的,解决办法如下:

1、打开FileZilla的“站点管理器”-“字符集”页面
2、选择“使用自定义的字符集”
3、编码内容填写你自己FTP服务器的字符集即可,也可强制使用UTF8格式

你可能感兴趣的:(#,桌面操作系统)