最近需要在一台EulerOS 2.0 (SP5)服务器上启用ftp服务,但是在配置过程中出现了各种问题导致失败。然后网上查询资料,结果发现网上的资料全都是你抄我的,我抄你的,要不就是缺少步骤。找不到一个完整的教程,经过不断的问题处理成功搭建了ftp服务,将具体的操作步骤及流程写下来,方便后期查阅。

一、检查系统版本号及相关信息。

命令:cat /etc/os-release

二、查看是否安装了ftp服务。

命令:rpm -qa | grep vsftpd

三、下载vsftp离线安装包。

本文使用vsftpd-3.0.2-28.el7.x86_64.rpm版本,下载地址见右侧下载地址栏。

四、利用MobaXterm上传到服务器/opt/目录下。

五、安装vsftp服务。

命令:cd /opt/

rpm -ivh vsftpd-3.0.2-28.el7.x86_64.rpm

六、设置vsftp服务为开机自启。

命令:systemctl enable vsftpd.service

七、防火墙设置开通开通21和22端口。

命令:firewall-cmd –zone=public –add-port=21/tcp –permanent

firewall-cmd –zone=public –add-port=22/tcp –permanent

八、重启防火墙。

命令:firewall-cmd –reload

九、开启防火墙ftp协议。

命令:firewall-cmd –permanent –add-service=ftp

十、配置vsftp相关参数。

10.1配置vsftp.conf文件。

命令:vim /etc/vsftpd/vsftpd.conf           #进入vsftpd配置文件。

             anonymous_enable=NO                #将anonymous_enable设置为NO,防止匿名登陆。

             chroot_local_user=YES                 #设置chroot_local_user为Yes

chroot_list_enable=YES                #开启chroot_list_enable

chroot_list_file=/var/ftp/              #设置chroot_list配置文件的路径

allow_writeable_chroot=YES        #如果ftp的版本大于2.3.5的话,在配置文件末尾添加

10.2按ESC键,输入:wq保存退出。
10.3配置允许ftp服务。

命令:setsebool -P allow_ftpd_full_access on

setsebool -P tftp_home_dir on

10.4配置/etc/pam.d/vsftpd。

命令:vim /etc/pam.d/vsftpd

将auth required pam_shells.so注释掉,然后将下面这行插入到上面这行配置的下方 auth required pam_nologin.so

十一、配置ftp登陆用户及权限。

11.1增加一个ftpuser的用户,且不能登陆系统

命令:useradd ftpuser -s /sbin/nologin

11.2设置ftpuser用户的密码。

命令:passwd ftpuser

11.3将新增的用户添加到chroot_list配置文件中

命令:vim /etc/vsftpd/chroot_list

11.4按下esc后,:wq保存退出。

十二、启动ftp服务。

命令:systemctl start vsftpd.service   #启动vsftp服务。

systemctl enable vsftpd              #添加到开机启动。

十三、客户端使用ftp软件进行登陆测试,并进行写入删除操作。

到这里就全部成功了。

如果出现账号登录不上的问题可以尝试使用以下方法。

隐藏内容
本内容需权限查看
  • 普通用户: 10金币
  • VIP会员: 5金币5折
  • 永久会员: 免费

十四、vsftp 配置文件解释。

anonymous_enable=YES 是否允许匿名登陆

local_enable=YES 允许本地登陆

write_enable=YES 启用任何形式的ftp 写入命令

local_umask=022 FTP上本本地的文件权限,默认是077,不过vsftp安装后的配置文件里默认是022

anon_upload_enable=YES 允许匿名ftp 用户上传文件

anon_mkdir_write_enable=YES 允许匿名用户 创建新的目录

dirmessage_enable=YES 激活目录消息,向远程用户发送消息,进入某个目录

xferlog_enable=YES 激活上传/下载 日志记录

connect_from_port_20=YES 确保RORT传输连接来自端口 20

chown_uploads=YES  设置可以上传权限

chown_username=whoever  设置匿名用户上传文件的默认用户,不推荐使用root

xferlog_file=/var/log/xferlog 日志文件路径

xferlog_std_format=YES 日志文件使用标准ftpd xferlog格式的日志文件 ,默认位置 /var/log/xferlog

idle_session_timeout=600 更改超时空闲会话的默认值

data_connection_timeout=120 超时数据连接的默认值

nopriv_user=ftpsecure 创建ftp服务器 独立的用户

async_abor_enable=YES 启用 异步 ABOR 请求

ascii_upload_enable=YES 允许ASCII模式上传文件

ascii_download_enable=YES 允许ASCII模式下载文件

ftpd_banner=Welcome to blah FTP service. 自定义登陆标题字符串

deny_email_enable=YES 指定不允许匿名登陆电子邮件

banned_email_file=/etc/vsftpd/banned_emails 默认路径

chroot_local_user=YES 设置本地用户权限

chroot_list_enable=YES设置列表权限

chroot_list_file=/etc/vsftpd/chroot_list 指定 chroot 参数
CHROOT就是Change Root,也就是改变程序执行时所参考的根目录位置。CHROOT可以增进系统的安全性,限制使用者能做的事

ls_recurse_enable=YES 启用 ls –R 选项

listen=NO 启用 listen 指令,vsftp 以独立模式运行侦听ipv4 套接字,该指令不能同时使用 with listen_inv6 指令

listen_ipv6=YES 监听ipv6

pam_service_name=vsftpd 虚拟用户使用PAM认证方式

userlist_enable=YES 只允许userlist 文件中的账户登陆

tcp_wrappers=YES 是否允许tcp_wrappers 管理

anon_other_write_enable=YES 允许匿名用户改名和删除文件

anon_world_readable_only=YES 匿名用户可以读文件 反之就是不能读

pasv_min_port=30000 PASV模式下指定最小端口

pasv_max_port=35000 PASV模式下指定最大端口

 

声明:
本站所有文章,如无特殊说明或标注,均为本站原创发布。
任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。
如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。