FTP服务器配置 (RFC939)
利用21监听连接ftp服务器,利用20端口进行数据传输
作用:专门用来上传(upload)或者下载(download)文件的协议或者通道
DOS: ftp localhost
windows:fileaila ,IE,Mozila
Linux: ftp localhost
FTP服务器软件
WU-ftpd ---- http://www.wu-ftp.org
说明:unix系统早期流行的匿名自由ftp服务器软件
proftpd --- http://www.proftpd.org
说明:使用类似apache配置文件的格式,在一个独立的配置文件中配置虚拟以及配置目录的访问权限,也可以使用ftpaccess分别控制各个子目录
vsftpd --- http://vsftpd.beasts.org
目前最安全,最高效的ftp服务器
安装VSFTPD
1.下载源代码 --- vsftpd-2.0.1.tar.gz
2.编译源代码,可以参考帮助文件install
#tar -zxvf vsftpd-2.0.1.tar.gz
#cd vsftpd-2.0.1
#make
#make install
3.安装配置文件
#cp vsftpd.conf /etc/
#cp RedHst/vsftpd.pam /etc/pam.d/ftp
4.编辑配置文件
#vi /etc/vsftpd.conf 在最后添加 listen=YES
5.启动服务器
#/usr/local/sbin/vsftpd &
========================
#useradd nobody
#mkdir /sur/share/empty
#mkdir /var/ftp
#useradd -d /var/ftp ftp
#chown root.root /var/ftp
#chmod og-w /var/ftp
#vi /etc/rc.local
写入/usr/local/sbin/vsftpd & --目的是为了自动运行
#ls /etc/rc3.d
#chkconfig vsftpd off
#chkconfig vsftpd --list
#netstat -ntl
#finger ftp
Vsftpd的配置文件
anonymous_enable=YES --允许匿名登录
local_enable=YES --允许本地用户登录
write_enable=YES --允许客户端写命令
local_umask=022 --本地用户新文件的umask值
anon_upload_enable=YES --用户匿名用户上传文件
anon_mkdir_write_enable=YES --用户匿名用户创建目录
dirmessage_enable=YES --用户使用目录的消息
ftpd_banner=welcome to xiaopeng's ftp #登录欢迎词
ls_recurse_enable=NO --允许客户端使用ls -R命令
listen=YES --监听模式
=============================
#killall -9 vsftpd --将vsftpd服务停止
#killall -HUP vsftpd --重新启动vsftpd副无
#ftp localhost --我测试用例
ftp>put 本地 服务器 --上传文件到ftp服务器
------------
设置上传的共享目录incomming,只能上传不能查看
#cd /var/ftp
#mkdir incomming
#chgrp ftp incomming
#chmod g+w incomming
#chmod g-r incomming
Chroot环境
/etc/vsftpd.conf
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd.chroot_list
用户控制
/etc/ftpusers
tom
jack
... ...
默认拒绝这里的登录用户,但可以通过修改/etc/pam.d/ftp中的sense值为allow,就表示之允许登录的用户
虚拟帐号
1.建立虚拟帐号文件 user.txt
tom
123
jack
123
#db_load -T -t hash -f user.txt /etc/vsftpd_login.db
#chmod 600 /etc/vsftpd_login.db
2.修改/etc/pam.d/ftp增加
auth required pam_userdb.so db=/etc/vsftpd_login
account required pam_userdb.so db=/etc/vsftpd_login
3.建立虚拟帐号目录
#useradd vuser
4.编辑/etc/vsftpd.conf文件,禁止匿名用户
anonymous_enable=NO
local_enable=YES
write_enable=NO
anon_upload_enable=NO
anon_mkdir_write_enable=NO
anon_other_write_enable=NO
guest_enable=YES
guest_username=vuser
为了让虚拟帐号可以访问,需要将该目录的读权限开放
#chmod o+r /home/vuser
利用21监听连接ftp服务器,利用20端口进行数据传输
作用:专门用来上传(upload)或者下载(download)文件的协议或者通道
DOS: ftp localhost
windows:fileaila ,IE,Mozila
Linux: ftp localhost
FTP服务器软件
WU-ftpd ---- http://www.wu-ftp.org
说明:unix系统早期流行的匿名自由ftp服务器软件
proftpd --- http://www.proftpd.org
说明:使用类似apache配置文件的格式,在一个独立的配置文件中配置虚拟以及配置目录的访问权限,也可以使用ftpaccess分别控制各个子目录
vsftpd --- http://vsftpd.beasts.org
目前最安全,最高效的ftp服务器
安装VSFTPD
1.下载源代码 --- vsftpd-2.0.1.tar.gz
2.编译源代码,可以参考帮助文件install
#tar -zxvf vsftpd-2.0.1.tar.gz
#cd vsftpd-2.0.1
#make
#make install
3.安装配置文件
#cp vsftpd.conf /etc/
#cp RedHst/vsftpd.pam /etc/pam.d/ftp
4.编辑配置文件
#vi /etc/vsftpd.conf 在最后添加 listen=YES
5.启动服务器
#/usr/local/sbin/vsftpd &
========================
#useradd nobody
#mkdir /sur/share/empty
#mkdir /var/ftp
#useradd -d /var/ftp ftp
#chown root.root /var/ftp
#chmod og-w /var/ftp
#vi /etc/rc.local
写入/usr/local/sbin/vsftpd & --目的是为了自动运行
#ls /etc/rc3.d
#chkconfig vsftpd off
#chkconfig vsftpd --list
#netstat -ntl
#finger ftp
Vsftpd的配置文件
anonymous_enable=YES --允许匿名登录
local_enable=YES --允许本地用户登录
write_enable=YES --允许客户端写命令
local_umask=022 --本地用户新文件的umask值
anon_upload_enable=YES --用户匿名用户上传文件
anon_mkdir_write_enable=YES --用户匿名用户创建目录
dirmessage_enable=YES --用户使用目录的消息
ftpd_banner=welcome to xiaopeng's ftp #登录欢迎词
ls_recurse_enable=NO --允许客户端使用ls -R命令
listen=YES --监听模式
=============================
#killall -9 vsftpd --将vsftpd服务停止
#killall -HUP vsftpd --重新启动vsftpd副无
#ftp localhost --我测试用例
ftp>put 本地 服务器 --上传文件到ftp服务器
------------
设置上传的共享目录incomming,只能上传不能查看
#cd /var/ftp
#mkdir incomming
#chgrp ftp incomming
#chmod g+w incomming
#chmod g-r incomming
Chroot环境
/etc/vsftpd.conf
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd.chroot_list
用户控制
/etc/ftpusers
tom
jack
... ...
默认拒绝这里的登录用户,但可以通过修改/etc/pam.d/ftp中的sense值为allow,就表示之允许登录的用户
虚拟帐号
1.建立虚拟帐号文件 user.txt
tom
123
jack
123
#db_load -T -t hash -f user.txt /etc/vsftpd_login.db
#chmod 600 /etc/vsftpd_login.db
2.修改/etc/pam.d/ftp增加
auth required pam_userdb.so db=/etc/vsftpd_login
account required pam_userdb.so db=/etc/vsftpd_login
3.建立虚拟帐号目录
#useradd vuser
4.编辑/etc/vsftpd.conf文件,禁止匿名用户
anonymous_enable=NO
local_enable=YES
write_enable=NO
anon_upload_enable=NO
anon_mkdir_write_enable=NO
anon_other_write_enable=NO
guest_enable=YES
guest_username=vuser
为了让虚拟帐号可以访问,需要将该目录的读权限开放
#chmod o+r /home/vuser