FreeBSD4.10下配置vsftpd

来源:岁月联盟 编辑:zhu 时间:2008-01-18
FreeBSD4.10下配置vsftpd内容简介:【FreeBSD教程】vsftp安装配置 因公司作服务器需要,要配置一台FreeBSD的php、mysql、apache服务器,以前没怎么接触过这个系统,上网查了N多资料,装了个4.X版本的FreeBSD,自己也在VMware里面试了N次(没办法,谁叫   【FreeBSD教程】vsftp安装配置

  因公司作服务器需要,要配置一台FreeBSD的php、mysql、apache服务器,以前没怎么接触过这个系统,上网查了N多资料,装了个4.X版本的FreeBSD,自己也在VMware里面试了N次(没办法,谁叫我们是菜鸟呢^_^),终于成功,把自己的配置经过写一下,供大家参考,不足不对之处请高手指点。

  配置服务器第一步自然是配置ftp服务器啦

  1、安装

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

  # cd /usr/ports/ftp/vsftp

  # make install clean

  2、配置

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

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

  # Allow anonymous FTP?

  anonymous_enable=NO (禁止匿名登陆)

  # Uncomment this to allow local users to log in.

  local_enable=YES (答应本地用户登陆)

  找到下面这两行,

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

  #chroot_list_file=/etc/vsftpd.chroot_list (要锁定目录的用户保存文件,格式为每个用户一行)  

  把前面的#号去掉

  注:假如想把本地的任何用户都锁定在自己的目录中的话,把上面两行注释掉,再增加这一样

  chroot_local_user=YES

  保存退出

  (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文件里增加listen=YES这句。

  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

   }(将客户端的数据连接端口改在50000—60000之间)

  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=/任意指定的路径//任意文件目录 (指定虚拟用户存放配置文件的路径)

图片内容