FreeBSD下vsftp安装配置详解

FreeBSD功能强大,ftp服务器只是它其中的很基础的一种服务,可是做为平常的服务器运做ftp服务倒是必不可少,本篇是本人本身在学习FreeBSD的服务器设置过程当中的一些积累,由于本身也曾是由菜鸟入门,走了很多弯路,如今把本身的一些经验总结出来,供你们参考,但愿对新人能有所帮助,不足之处还请你们多多指点.服务器

 

1、安装session

经过ports安装,这个方式比较简单。tcp

# cd /usr/ports/ftp/vsftp学习

# make install测试

 

2、配置spa

(1)编辑/usr/local/etc/vsftpd.conf日志

# ee /usr/local/etc/vsftpd.conform

Anonymous_enable=NO (禁止匿名登录)进程

Local_enable=YES (容许本地用户登录)ip

Local_umask=022 (FTP上本地的文件权限755,默认是077)

Connect_form_port_20=yes (启用FTP数据端口的数据链接)

Xferlog_enable=yes (激活上传和下传的日志)

Xferlog_std_format=yes (使用标准的日志格式)

Idle_session_timeout=120() (用户会话空闲后2分钟)

Data_connection_timeout=300() (将数据链接空闲5分钟断)

Ascii_upload_enable=YES (起用ASCII方式上传)

Ascii_download_enable=YES帮带(起用ASCII方式下载)

Ftpd_banner=Welcome to blah FTP service. (FTP服务器登录欢迎信息)

Chroot_list_enable=YES (开启锁定用户目录)

Chroot_list_file=/任意路径/vsftpd.chroot_list (要锁定目录的用户保存文件,格式为每一个用户一行)

注:若是想把本地的任何用户都锁定在本身的目录中的话,把上面两行注释掉,再增长这同样

Chroot_local_userYES

保存退出

 

(2)编辑/etc/inetd.conf

# ee /etc/inetd.conf

增长这一行并去掉前面的注释(#)

#ftp   stream  tcp    nowait  root    /usr/local/libexec/vsftpd     vsftpd

保存退出

 

(3)编辑/etc/rc.conf

# ee /etc/rc.conf

增长下面内容:

inetd_enable="YES"

注:以上是以inetd的方式启动vsftp的,咱们也能够以独立进程的方式启动vsftp,具体以下:

a、注释掉inetd里面的vsftpd这一行。

b、在vsftpd.conf文件里增长listenYES这句。

c、进入/usr/local/libexec/目录,执行./vsftpd & 

d、想要让vsftp随系统启动,可在/usr/local/etc/rc.d/目录里增长一个sh脚本:

# vi vsftpd_start.sh

# ! /bin/sh

/usr/local/libexec/vsftpd &

保存退出,chmod 755 vsftpd_start.sh 

 

(4)添加用户

# pw groupadd vsftpd –g 1001

# pw useradd test –g 1001–d /home/test –s /sbin/nologin

# mkdir /home/test

# passwd test               设密码

Changing local password for test

New Password:

Retype New Password:

#

vsftpd.chroot_list文件里增长test一行,把test用户所在其自家目录下。

# killall HUP inetd(若是是独立进程则执行上面写的那个脚本便可)测试一下:

# ftp localhost

若是成功会提示你输入用户名和密码

若是不成功,请查看一下你上面的配置

 

(5)用户功能权限配置

如下是一些用户的配置:

Anonymous_enable=yes (容许匿名登录)

Dirmessage_enable=yes (切换目录时,显示目录下.message的内容)

Local_umask=022 (FTP上本地的文件权限,默认是077)

Connect_form_port_20=yes (启用FTP数据端口的数据链接)

Xferlog_enable=yes (激活上传和下传的日志)

Xferlog_std_format=yes (使用标准的日志格式)

Ftpd_banner=XXXXX (欢迎信息)

Pam_service_name=vsftpd (验证方式)

Listen=yes (独立的VSFTPD服务器)

Anon_upload_enable=yes (开放上传权限)

Anon_mkdir_write_enable=yes (可建立目录的同时能够在此目录中上传文件)

Write_enable=yes (开放本地用户写的权限)

Anon_other_write_enable=yes (匿名账号能够有删除的权限)

Anon_world_readable_only=no (放开匿名用户浏览权限)

Idle_session_timeout=600() (用户会话空闲后10分钟)

Data_connection_timeout=120() (将数据链接空闲2分钟断)

Accept_timeout=60() (将客户端空闲1分钟后断)

Connect_timeout=60() (中断1分钟后又从新链接)

Ascii_upload_enable=yes (启用上传的ASCII传输方式)

Ascii_download_enable=yes (启用下载的ASCII传输方式)

Chroot_local_user=yes (本地全部账户都只能在自家目录)

Chroot_list_enable=yes (文件中的名单能够调用)

Chroot_list_file=/任意指定的路径/vsftpd.chroot_list

(前提是chroot_local_user=no)

Banner_file=/var/vsftpd_banner_file (用户链接后欢迎信息使用的是此文件中的相关信息)

Local_max_rate=50000(bite) (本地用户传输率50K)

Anon_max_rate=30000(bite) (匿名用户传输率30K)

Chown_uploads=yes (改变上传文件的全部者为root)

Chown_username=root

Pasv_min_port=50000

}(将客户端的数据链接端口改在5000060000之间)

Pasv_max_port=60000

Max_clients=200 (FTP的最大链接数)

Max_per_ip=4 (IP的最大链接数)

Listen_port=5555 (5555端口进行数据链接)

Local_enble=yes (本地账户可以登录)

Write_enable=no (本地账户登录后无权删除和修改文件)

Userlist_enable=yes (在指定的文件中的用户不能够访问)

Userlist_deny=yes

Userlist_file=/指定的路径/vsftpd.user_list

Banner_fail=/路径/文件名 (链接失败时显示文件中的内容)

Ls_recurse_enable=no

Async_abor_enable=yes

one_process_model=yes

Listen_address=10.2.2.2 (将虚拟服务绑定到某端口)

Guest_enable=yes (虚拟用户能够登录)

Guest_username=所设的用户名 (将虚拟用户映射为本地用户)

User_config_dir=/任意指定的路径/为用户策略本身所建的文件夹

(指定不一样虚拟用户配置文件的路径)

Deny_email_enable=yes (是否容许禁止匿名用户使用某些邮件地址)

Banned_email_file=//任意指定的路径/xx/

Pasv_enable=yes ( 服务器端用被动模式)

User_config_dir=/任意指定的路径//任意文件目录 (指定虚拟用户存放配置文件的路径)

相关文章
相关标签/搜索