首页 > 代码库 > Linux FTP服务器的搭建讲解
Linux FTP服务器的搭建讲解
在Linux中,有好几种实现ftp服务器的软件,我们这里使用centos自带的vsftp,它具有安全,轻量级的特性。
我们安装vsftpd包后开启服务,ftp即可访问:
1 安装
yum install vsftpd portmap
安装之后我们需要启动服务,本地测试访问,因为这个访问比较简单所有不安全,这是第一种方法还有一种方法是通过虚拟用户访问的这个比较安全 稍后讲。
关闭防火墙和selinux
启动服务器即可访问
这里的rpcbind是之前portmap安装的
使用本地用户登录时,登录到得目录是用户的家目录
这种访问因为使用的是linux本地用户所有不安全。下面我们介绍通过ftp虚拟用户登陆
1 建立虚拟FTP用户的账号数据库文件
2 创建FTP根目录及虚拟用户映射的系统用户
3 建立支持虚拟用户的PAM认证文件
4 在vsftpd.cong文件中添加支持配置
5 在个别虚拟用户建立独立的配置文件以实现权限访问
6 重启vsftpd服务
由于5 在公司很少使用这里我们不做过多的介绍
1 建立虚拟FTP用户的账号数据库文件
vim /etc/vsftpd/ftpusers.txt 千万不要编辑ftpuser 这2个不是同一个文件
user1 :用户名
123 : 密码
user2
456
yum -y install db4-utils 安装db工具软件包
db_load -T -t hash -f /etc/vsftpd/ftpusers.txt /etc/vsftpd/vsftpd_login.db 将此文件转换成二进制
chmod 700 /etc/vsftpd/vsftpd_login.db
2 创建FTP根目录及虚拟用户映射的系统用户
useradd -d /home/ftpuser -s /sbin/nologin ftpuser不允许登录系统为了安全
chmod 755 /home/ftpuser
chown ftpuser:fptuser /home/ftpuser
3 在配置文件vi /etc/pam.d/vsftpd 行首加入如下两行认证语句:(如果是32位,lib64需改成lib,如果RedHat,加入的语句不一样,需注意
auth sufficient /lib64/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login
account sufficient /lib64/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login
4 在vsftpd.cong文件中添加支持配置
anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_std_format=YES
listen=YES
pam_service_name=vsftpd
userlist_enable=YES
tcp_wrappers=YES
+ guest_enable=YES 开启虚拟用户
+ guest_username=ftpuser 虚拟用户的用户名是什么
+ pam_service_name=vsftpd 制定vsftpd模块
+ virtual_use_local_privs=YES 虚拟用户和本地用户有相同的权限
总共加了4行 至此配置文件OK
service vsftpd restart 重启完成
用之前在/etc/vsftpd/ftpuser.txt保存的用户来登陆。
如果在添加一个虚拟用户需要从新 db_load -T -t hash -f /etc/vsftpd/ftpusers.txt /etc/vsftpd/vsftpd_login.db 将此文件转换成二进制
本文出自 “7753624” 博客,谢绝转载!