linux下ftp搭建的两种方式(个人笔记)

1.

   搭建FTP服务器

FTP是文件传输协议,正是由于这种协议使得主机间可以共享文件。 FTP 使用TCP生成一个虚拟连接用于控制信息,然后再生成一个单独的TCP 连接用于数据传输

vsftpd是一款在Linux发行版中最主流的FTP服务器程序;特点是小巧轻快,安全易用;能让其自身特点得发发挥和掌握。

目前在开源操作系统中常用的FTP服务器程序主要有vsftpd、ProFTPD、PureFTPd和wuftpd等,这么多FTP服务器程序,关键在于自己熟练哪一个就使用哪一个。今天我们来研究一下VSFTPD简单安装及使用。

安装命令: yum install vsftpd*  -y

vsftp配置文件:vi /etc/vsftpd/vsftpd.conf修改添加

anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_file=/var/log/vsftpd.log
xferlog_std_format=YES
ascii_upload_enable=YES
ascii_download_enable=YES
listen=YES

guest_enable=YES
guest_username=ftpuser
pam_service_name=vsftpd
user_config_dir=/etc/vsftpd/vsftpd_user_conf
virtual_use_local_privs=YES

重启vsftpd服务新建用户登录就ok了~ ftp://192.168.77.168,输入用户名和密码即可访问,                                  

2.

  1. 第二种方法比较安全,配置相对复杂一点,就是使用vsftpd虚拟用户登录FTP服务器进行常见的操作。

  • 首先安装FTP 虚拟用户需要用到的软件及认证模块

yum install pam* db4* --skip-broken �Cy

创建并生成vsftpd数据库文件vi /etc/vsftpd/ftpusers.txt,内容如下:

第一行为FTP虚拟用户,登录用户名,第二行为密码,第三行为用户名,依次类推

lixi1

123456

lixi2

......

......

  • 生成数据库文件命令:

db_load -T -t hash -f /etc/vsftpd/ftpusers.txt /etc/vsftpd/vsftpd_login.db

chmod 700 /etc/vsftpd/vsftpd_login.db


  • 配置PAM验证文件:

在配置文件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

  • 创建vsftpd映射本地用户:

所有的FTP虚拟用户需要使用一个系统用户,这个系统用户不需要密码,也不需要登录。主要用来做虚拟用户映射使用。

useradd  �Cd /data/ftp �Cs /sbin/nologinftpuser

  • 修改完整版配置文件内容如下:

anonymous_enable=NO

local_enable=YES

write_enable=YES

local_umask=022

dirmessage_enable=YES

xferlog_enable=YES

connect_from_port_20=YES

xferlog_file=/var/log/vsftpd.log

xferlog_std_format=YES

ascii_upload_enable=YES

ascii_download_enable=YES

listen=YES

    guest_enable=YES

guest_username=ftpuser

pam_service_name=vsftpd

user_config_dir=/etc/vsftpd/vsftpd_user_conf

virtual_use_local_privs=YES

 

       保存重启,/etc/init.d/vsftpd restart 即可使用虚拟用户登录,这时候所有的虚拟用户共同使用/home/ftpuser目录上传下载,如果想使用自己独立的目录,可以在/etc/vsftpd/vsftpd_user_conf目录创建各自的配置文件,如给lixi1创建独立的配置文件:

vi /etc/vsftpd/vsftpd_user_conf/lixi1 ,内容如下,建立自己的FTP目录。

local_root=/data/ftp/lixi1

write_enable=YES

anon_world_readable_only=YES

anon_upload_enable=YES

anon_mkdir_write_enable=YES

anon_other_write_enable=YES


另注:不能写入请查看文件权限问题

你可能感兴趣的:(ftp)