快捷搜索:  汽车  科技

centos 7搭建ftp服务器详细教程(Linux入门-CentOS7安装vsftp)

centos 7搭建ftp服务器详细教程(Linux入门-CentOS7安装vsftp)listen=yes加入收藏# service vsftpd restart Shutting down vsftpd: [FAILED] Starting vsftpd for vsftpd: 500 OOPS: vsftpd: not configured for standalone must be started from inetd [FAILED]需要在配置文件/etc/vsftpd/vsftpd.conf里新增local_root=/home/vsftpd/ftp1 write_enable=YES anon_world_readable_only=NO anon_upload_enab

前言

vsftpd是用于类Unix系统(包括Linux)的FTP服务器。那怎么搭建呢?请看下文在CentOS7 64位进行安装。

centos 7搭建ftp服务器详细教程(Linux入门-CentOS7安装vsftp)(1)

为了调试顺利,关闭selinux,防火墙iptables

一.yum安装vsftp

# yum -y install vsftpd

二.启动服务

# systemctl start vsftpd.service

三.配置文件

/etc/vsftpd/vsftpd.conf

四.配置部署

1、备份配置文件 修改配置文件

# cd /etc/vsftpd/ # cp vsftpd.conf vsftpd.conf.bak # echo '' > vsftpd.conf # vim /etc/vsftpd/vsftpd.conf

2、配置文件内容(虚拟用户必须关闭虚拟用户anonymous_enable=NO)

anonymous_enable=NO write_enable=YES chroot_local_user=YES chroot_list_enable=YES use_localtime=YES local_enable=YES allow_writeable_chroot=YES xferlog_enable=YES local_umask=022 pam_service_name=vsftpd use_localtime=YES listen_port=21 chroot_local_user=YES idle_session_timeout=120 data_connection_timeout=120 guest_enable=YES guest_username=ftpuser user_config_dir=/etc/vsftpd/vuser_conf virtual_use_local_privs=YES pasv_min_port=10060 pasv_max_port=10090 accept_timeout=5 connect_timeout=1

3、创建宿主用户

  • 创建用户 ftpuser 指定 /home/vsftpd 目录

# useradd -g root -M -d /home/vsftpd -s /sbin/nologin ftpuser

  • 设置用户 ftpuser 的密码

# passwd ftpuser

  • 把 /home/vsftpd 的所有权给ftpuser.root

# mkdir -p /home/vsftpd # chown -R ftpuser.root /home/vsftpd

4、建立虚拟用户文件

# touch /etc/vsftpd/vuser_passwd # 编辑虚拟用户名单文件:( # 第一行账号,第二行密码,注意:不能使用root做用户名,系统保留) # vi /etc/vsftpd/vuser_passwd # 编辑内容,下面是 vuser_passwd 内容 ftp1 12345678 ftp2 12345678

保存退出

5、生成虚拟用户数据文件

# db_load -T -t hash -f /etc/vsftpd/vuser_passwd /etc/vsftpd/vuser_passwd.db # chmod 600 /etc/vsftpd/vuser_passwd.db

6、创建用户配置

# mkdir /etc/vsftpd/vuser_conf # 建立虚拟用户个人vsftp的配置文件 # cd /etc/vsftpd/vuser_conf # 进入目录 # touch ftp1 ftp2

每个文件(ftp1和ftp2写入如下内容,local_root=/home/vsftpd/ftp1#这里写入这个用户的实际存储路径)

local_root=/home/vsftpd/ftp1 write_enable=YES anon_world_readable_only=NO anon_upload_enable=YES anon_mkdir_write_enable=YES anon_other_write_enable=YES

7、创建用户目录

# mkdir -p /home/vsftpd/ftp1 # mkdir -p /home/vsftpd/ftp2

8、配置登录用户

# vi /etc/vsftpd/chroot_list ftp1 ftp2

9、服务启动、停止、状态命令

# systemctl restart vsftpd.service # 重启服务 # systemctl start vsftpd.service # 启动服务 # systemctl status vsftpd.service # 服务状态查看

10、生成虚拟用户的PAM文件

# cd /etc/pam.d/ 备份vsftpd文件 # cp vsftpd vsftpd.bak

修改vsftpd文件内容(加入第二和第三行,下面的都全部注释,注意下面是64位操作系统,如果是32位的话lib64需要改成lib)

#%PAM-1.0 auth required /lib64/security/pam_userdb.so db=/etc/vsftpd/vuser_passwd account required /lib64/security/pam_userdb.so db=/etc/vsftpd/vuser_passwd #session optional pam_keyinit.so force revoke #auth required pam_listfile.so item=user sense=deny file=/etc/vsftpd/ftpusers onerr=succeed #auth required pam_shells.so #auth include password-auth #account include password-auth #session required pam_loginuid.so #session include password-auth

Centos6 安装遇到的问题

  • Centos6 启动vsftp服务命令

# service vsftpd restart

  • Centos6 启动报错500 OOPS: unrecognised variable in config file: allow_writeable_chroot

# service vsftpd restart Shutting down vsftpd: [FAILED] Starting vsftpd for vsftpd: 500 OOPS: unrecognised variable in config file: allow_writeable_chroot [FAILED]

查看版本

# vsftpd -version vsftpd: version 2.2.2

不支持,需要在配置文件/etc/vsftpd/vsftpd.conf屏蔽这个配置项

  • Centos6 启动报错500 OOPS: vsftpd: not configured for standalone must be started from inetd

# service vsftpd restart Shutting down vsftpd: [FAILED] Starting vsftpd for vsftpd: 500 OOPS: vsftpd: not configured for standalone must be started from inetd [FAILED]

需要在配置文件/etc/vsftpd/vsftpd.conf里新增

listen=yes

centos 7搭建ftp服务器详细教程(Linux入门-CentOS7安装vsftp)(2)

加入收藏

猜您喜欢: