linux(fedor)安装ftp

linux 配置FTP服务器

1.用RHEL4的第一张光盘安装软件包
  rpm -ivh vsftpd-2.0.1-5.i386.rpm
2.修改配置文件
  1>/etc/vsftpd.ftpusers 文件保存禁止登陆FTP服务器的本地账号
  2>/etc/vsftpd.user.list文件要与/etc/vsftpd/vsftpd.conf 文件配合使用
  当vsftpd.conf文件中包括以下配置时,vsftpd.user.list文件中的用户账号禁止登陆FTP服务器
  userlist_enable = YES
  userlist_deny = YES
  当vsftpd.conf文件中包括以下配置时,vsftpd.user.list文件中的用户账号可以登陆FTP服务器
  userlist_enable = YES
  userlist_deny = NO
  当vsftpd.user.list文件与vsftpd.ftpusers文件冲突时,以vsftpd.ftpusers为准
3.启动服务
  service vsftpd start
  chkconfig --level 35 vsftpd on
4.用户登陆类型
  1>匿名用户登陆
  用户名为ftp或anonymous,无密码,登陆FTP服务器后进入/var/ftp目录下,并将其作为根目录,只能
  下载不能上传
  #netstat -n 可以查看客户机建立的命令链接
  ftp>sendport 开启/关闭当前连接FTP服务器的主动模式
  ftp>passive 开启/关闭被动模式
  2>本地用户名登陆
  用户名为FTP服务器系统账号,有密码,可以随时切换目录,登陆目录为宿主目录。可以上传下载。
  将本地用户禁锢在其宿主目录中的配置:
  修改/etc/vsftpd/vsftpd.conf文件,添加
  chroot_local_user = YES
  重启FTP服务
  3>虚拟用户登陆
  A.建立虚拟用户口令库文件
    vi logins.txt
    文件内容格式为: 用户名(单号行)
                     密码  (双号行)
  B.生成vsftpd的认证文件
    db_load -T -t hash -f logins.txt /etc/vsftpd/vsftpd_login.db
    chmod 600 /etc/vsftpd/vsftpd_login.db (修改权限为仅管理员刻读写)
  C.建立虚拟用户的PAM配置文件
    在/etc/pam.d目录下建立虚拟用户身份认证的PAM配置文件,例如:vsftpd.vu 并添加如下内容:
    auth required /lib/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login
    account required /lib/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login
  D.创建虚拟用户及其访问目录
    useradd -d /home/ftpsite(指定的宿主目录) virtual(虚拟用户名)
    chmod 700 /home/ftpsite/(指定的宿主目录)
    所有的虚拟用户登陆都将在指定的宿主目录中,若未指定则在与用户名同名的宿主目录中登陆
  E.设置vsftpd.conf配置文件,添加虚拟用户配置项
    guest_enable = YES
    guest_username = virtual (虚拟用户系统用户名)
    pam_service_name = vsftpd.vu (PAM配置文件名)
  F.重启FTP服务
  G.对不同的虚拟用户设置不同的权限
    修改主配置文件vsftpd.conf,添加如下配置:
    user_config_dir = /etc/vsftpd_user_conf(虚拟用户配置文件目录的绝对路径)
    建立虚拟用户配置文件的目录
    mkdir /etc/vsftpd_user_conf
    为每个虚拟用户建立独立的配置文件,配置文件名同用户名,例如:
    touch /etc/vsftpd_user_conf/virtual
    常用配置项:
    anon_world_readable_only = NO (可浏览和下载)
    anon_upload_enable = YES (可上传文件)
    anon_mkdir_write_enable = YES (可建立和删除目录)
    anon_other_write_enable = YES (可对文件改名和删除文件)


附录:典型FTP配置

vi /etc/vsftpd/vsftpd.conf

anonymous_enable=YES
local_enable=YES
write_enable=YES
local_umask=022
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_std_format=YES
pam_service_name=vsftpd
userlist_enable=YES
listen=YES
tcp_wrappers=YES
chroot_local_user=YES
max_clients=100
max_per_ip=5
local_max_rate=500000
anon_max_rate=200000

你可能感兴趣的:(linux)