Linux下NFS、FTP使用讲解(3)


pure-ftpd 配置模板参考
cat /etc/pure-ftpd/pure-ftpd.conf
ChrootEveryone              yes
BrokenClientsCompatibility  no
MaxClientsNumber            50
Daemonize                  yes
MaxClientsPerIP            8
VerboseLog                  no
DisplayDotFiles            yes
AnonymousOnly              no
NoAnonymous                yes
SyslogFacility              ftp
DontResolve                yes
MaxIdleTime                15
PureDB                      /etc/pure-ftpd/pureftpd.pdb
LimitRecursion              3136 8
AnonymousCanCreateDirs      no
MaxLoad                    4
AntiWarez                  yes
Umask                      133:022
MinUID                      10
AllowUserFXP                no
AllowAnonymousFXP          no
ProhibitDotFilesWrite      no
ProhibitDotFilesRead        no
AutoRename                  no
AnonymousCantUpload        no
CustomerProof              yes

生成随机字符串用户名长度为5没有特殊字符没有数字没有大写字母密码没有特殊字符然后重定向到一个文件中
如果没有mkpasswd命令需要安装expect包# yum install -y expect
user=`mkpasswd -l 5 -s 0 -d 0 -C 0`
pass=`mkpasswd -s 0`
echo $user $pass > /tmp/ftp.pass
12 [root@localhost ~]# cat /tmp/ftp.pass 
zwdlc EEoz14swg

创建ftp服务的目录用于共享
#mkdir /data/ftp 
#echo -e "$pass\n$pass"|pure-pw useradd $user -u test -d /data/ftp/
pure-pw 创建一个用户

-u test 映射一个用户系统里必须存在的用户。使用创建的随机用户映射到系统里的用户
pure-pw mkdb    #创建密码文件把用户和密码保存到一个二进制的文件中。路径在/etc/pure-ftpd/pure-ftpd.conf配置文件里PureDB指定的路径中
[root@localhost ~]# ls -l /etc/pure-ftpd/pureftpd.pdb
-rw------- 1 root root 2141 5月  22 15:24 /etc/pure-ftpd/pureftpd.pdb

pure-pw list    #列出用户
[root@localhost ~]# pure-pw list
zwdlc              /data/ftp/./

pure-pw userdel $user    #删除账号
/etc/init.d/pure-ftpd  start  #启动服务监听端口为21


ftp客户端需要安装lftp包#yum install -y lftp
输入命令 #lftp 用户名@ftp服务器ip地址   
用户名为服务器创建的随机用户名ftp服务器ip地址输入密码就登录ftp服务器
put 文件 上传到ftp服务端
get 文件 下载到本地客户端目录
[root@yong nfs]# lftp zwdlc@192.168.20.30
Password: 
lftp zwdlc@192.168.20.30:/> get nginx-1.6.2.tar.gz 
804164 bytes transferred


2、vsftp配置ftp服务
服务端安装yum install -y vsftpd db4-utils
建立虚拟账号相关联的系统账号 useradd virftp -s /sbin/nologin 
建立虚拟账户相关的文件  vim  /etc/vsftpd/vsftpd_login //内容如下
    test1
    123456
    test2
    abcdef
chmod 600 /etc/vsftpd/vsftpd_login
生成对应的库文件 db_load -T -t hash -f /etc/vsftpd/vsftpd_login /etc/vsftpd/vsftpd_login.db
db_load命令可以将用户文本信息文件转换为db数据库并使用hash加密。
选项-T允许应用程序能够将文本文件转译载入进数据库。由于我们之后是将虚拟用户的信息以文件方式存储在文件里的为了让Vsftpd这个应用程序能够通过文本来载入用户数据必须要使用这个选项。
指定了选项-T那么一定要追加子选项-t ;    子选项-t追加在在-T选项后用来指定转译载入的数据库类型。
hash就是使用hash码加密。
-f 参数后面接包含用户名和密码的文本文件文件的内容是:奇数行用户名、偶数行密码
如果更改密码更改文件后还需要db_load一下并重启ftp服务使其生效

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/4832e6dd03852e15d7ba921be529bd2b.html