Linux安装配置ftp服务

①以管理员身份查看vsftpd是否已经安装:rpm -qa |grep vsftpd
  产看vsftpd安装目录:rpm -ql |grep vsftpd
②如果没有安装,运行:yum -y install vsftpd,安装完成后启动服务:service vsftpd start。
  然后测试:sftp 127.0.0.1(which--查找可执行脚本路径,whereis--查找文件路径,updatedb--更新linux中的数据库,find--在磁盘中查找文件)
③修改配置文件:/etc/vsftpd/vsftpd.conf
  1、annonymous_enable=NO--不允许匿名用户访问。
     local_enable=YES--设定本地用户可以访问。住:如果用虚拟宿主用户,在该项目设定为NO的情况下所有虚拟用户都无法访问。
  2、chroot_list_enable=YES--限定用户不可以离开主目录。
     chroot_list_file=/etc/vsftpd/chroot_list
  3、xferlog_file=/var/log/vsftpd.log--设定vsftpd的服务日志保存路径。注意,该文件默认不存在。必须受到touch出来。
  4、ascii_upload_enable=YES
     ascii_download_enable=YES--设定支持ASCII模式的上传和下载功能。
  5、pam_service_name=vsftpd--pam认证文件名。pam将根据/etc/pam.d/vsftpd进行认证以下这些是关于vsftpd虚拟用户支持的重要centos ftp服务配置项目。
默认vsftpd.conf中不包含这些设定项目,需要自己手动添加centos ftp服务配置。
  6、guest_enable=YES--设定启用虚拟用户功能。
     guest_username=ftp--指定虚拟用户的宿主用户。-centos中已经有内置的ftp用户了。(此用户在chroot_list_file=/etc/vsftpd/chroot_list文件中指定的用户。)
  user_config_dir=/etc/vsftpd/vuser_conf--设定虚拟用户个人vsftpd的centos ftp服务文件存储路径。
④查看是否安装db4 db4-utils
  rpm -qa |grep db4(如果安装,则可以使用db_load命令,主要是db4-utils)
  如果没有安装db4-utils,则安装:yum -y install db4-utils
⑤创建chroot_list_file=/etc/vsftpd/chroot_list文件
  echo ftp >> /etc/vsftpd/chroot_list(此处ftp也就是/etc/vsftpd/vsftpd.conf中的guest_username的值)。
⑥创建虚拟用户目录(密码文本)
  vi /etc/vsftpd/vftpuser.txt。(用户名位奇数,密码为偶数)例如:
  root
  cyou
⑦生成虚拟用户的认证文件
db_load -T -t hash -f /etc/vsftpd/vftpuset.txt /etc/vsftpd/vftpuser.db
⑧生成虚拟用户的认证文件
vi /etc/pam.d/vsftpd.注销掉/etc/pam.d/vsftpd中所有的内容 反正已经不要本地用户的认证了。
添加一下两句话:
auth required pam_userdb.so db=/etc/vsftpd/vftpuser
account required pam_userdb.so db=/etc/vsftpd/vftpuser
住:db=/etc/vsftpd/vftpuser中的vftpuser是你生成的虚拟用户的db文件。
⑨创建每个虚拟用户自己的配置文件,配置文件的路径是/etc/vsftpd/vsftpd.conf中的
user_config_dir=/etc/vsftpd/vuser_conf路径。
  mkdir vuser_conf;
  vi /etc/vsftpd/vuser_conf/root;里面的内容如下:
  local_root=/www
  write_enable=YES
  download_enable=YES
  anon_world_readable_only=NO
  anon_upload_enable=yes
  anon_mkdir_write_enable=yes
  anon_other_write_enable=yes
  local_umask=022
(10)给文件夹赋权限(否则不能上传)
 chmod 777 /www
(11)以root身份查看SELinux的模式:getenforce.默认返回enforcing.
    关闭方法:setenforce 0 (0|1 开|关)
(12)重启vsftpd:service vsftpd restart;
注意,如果你的linux进行了重启操作。需要重启vsftpd服务,并关闭selinux。这样你的ftp服务才能正常使用。

猜你喜欢

转载自student-lp.iteye.com/blog/2094165
今日推荐