Advertisement
Guest User

Untitled

a guest
Jul 24th, 2017
99
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.38 KB | None | 0 0
  1. CentOS vsftpd虚拟用户配置
  2. ---
  3.  
  4. ## 1. vsftpd配置文件 /etc/vsftpd/vsftpd.conf
  5.  
  6. ```
  7. anonymous_enable=NO
  8.  
  9. # 限定用户只能访问自己的目录
  10. chroot_local_user=YES
  11.  
  12. # 虚拟账户
  13. guest_enable=YES
  14. user_config_dir=/etc/vsftpd/vu
  15. #PAM认证文件
  16. pam_service_name=vsftpd.vu
  17. ```
  18.  
  19. ## 2. 生成账户数据库 /etc/vsftpd/login.txt
  20.  
  21. 添加虚拟用户名和密码,一行用户名,一行密码,以此类推。奇数行为用户名,偶数行为密码。
  22.  
  23. ```
  24. web
  25. 123456
  26. ```
  27.  
  28. 使用以下命令生成账号数据库
  29.  
  30. > db_load -T -t hash -f ./logins.txt ./login.db
  31.  
  32. ## 3. 设置虚拟账号验证和授权 /etc/pam.d/vsftpd.vu
  33.  
  34. ```
  35. auth required pam_userdb.so db=/etc/vsftpd/login
  36. account required pam_userdb.so db=/etc/vsftpd/login
  37. ```
  38.  
  39. ## 4. 配置虚拟用户权限 /etc/vsftpd/vu/web
  40.  
  41. ```
  42. #指定虚拟用户的宿主用户。-CentOS中已经有内置的ftp用户了
  43. guest_username=ftpuser
  44. local_root=/home/ftpuser/
  45. anon_umask=022
  46. virtual_use_local_privs=YES
  47. anon_world_readable_only=NO
  48. write_enable=YES
  49. anon_mkdir_write_enable=YES
  50. anon_upload_enable=YES
  51. anon_other_write_enable=YES
  52.  
  53. #-----------------------
  54.  
  55. #虚拟用户配置文件名必须与用户名一致
  56. vim /etc/vsftpd/vu/ossblogs
  57. guest_username=vsftp #虚拟用户的宿主用户
  58. local_root=/data/ftp/ossblogs #虚拟用户根目录
  59. anon_world_readable_only=NO
  60. write_enable=YES #写权限
  61. anon_upload_enable=YES #上传权限
  62. anon_mkdir_write_enable=YES #创建文件夹权限
  63. anon_other_write_enable=YES #其他权限
  64. ```
  65.  
  66.  
  67. ## 详细配置
  68.  
  69. ```
  70. #使用当地时间
  71. use_localtime=YES
  72. #这个选项必须指定一个空的数据夹且任何登入者都不能有写入的权限,当vsftpd 不需要file system 的权限时,就会将使用者限制在此数据夹中。默认值为/var/run/vsftpd/empty
  73. secure_chroot_dir=/var/run/vsftpd/empty
  74. #预设 RSA 加密的凭证档案所在
  75. rsa_cert_file=/etc/ssl/private/vsftpd.pem
  76. #login时的欢迎信息
  77. ftpd_banner=Welcome to FTP service.
  78. #显示欢迎信息
  79. banner_file=/etc/vsftpd/welcome.txt
  80. #允许匿名访问?YES/NO
  81. anonymous_enable=NO
  82. #设定本地用户可以访问。默认.注意:主要是为虚拟宿主用户,如果该项目设定为NO那么所有虚拟用户将无法访问
  83. local_enable=YES
  84. #可写
  85. write_enable=NO
  86. #上传后文件的权限掩码 默认
  87. local_umask=022
  88. #开启目录标语,默认
  89. dirmessage_enable=YES
  90. #开启日志,默认
  91. xferlog_enable=YES
  92. #设定vsftpd的服务日志保存路径 将前面的#注释
  93. xferlog_file=/var/log/xferlog
  94. #生成的日志格式 默认
  95. xferlog_std_format=YES
  96. #如果启用该选项,将生成两个相似的日志文件,默认在 /var/log/xferlog 和 /var/log/vsftpd.log 目录下。前者是 wu-ftpd 类型的传输日志,可以利用标准日志工具对其进行分析;后者是Vsftpd类型的日志。
  97. dual_log_enable=YES
  98. #在用xferlog文件记录服务器上传下载情况的同时,vsftpd_log_file所指定的文件,即/var/log/vsftpd.log,也将用来记录服务器的传输情况。
  99. vsftpd_log_file=/var/log/vsftpd.log
  100. #设定连接端口20 不是ftp端口
  101. connect_from_port_20=YES
  102. #会话超时,客户端连接到ftp但未操作
  103. idle_session_timeout=600
  104. #支持异步传输功能,默认是注释掉的,去掉注释
  105. async_abor_enable=YES
  106. #支持ASCII模式的下载功能,默认是注释掉的,去掉注释
  107. ascii_upload_enable=YES
  108. #支持ASCII模式的上传功能,默认是注释掉的,去掉注释
  109. ascii_download_enable=YES
  110. #在预设的情况下,是否要将使用者限制在自己的家目录之内(chroot)?如果是 YES 代表用户默认就会被 chroot,如果是 NO, 则预设是没有 chroot。不过,实际还是需要底下的两个参数互相参考才行。为了安全性,这里应该要设定成 YES 才好。
  111. chroot_local_user=YES
  112. #禁止本地用户登出自己的FTP主目录 去掉注释,这个非常重要
  113. # chroot_list_enable=YES
  114. #上个选项开启 这个文件才生效 不过不存在需要你手工创建
  115. # chroot_list_file=/etc/vsftpd/chroot_list
  116. #监听IPV4
  117. listen=YES
  118. #ftp监听端口 默认21 原始配置中没有
  119. listen_port=21
  120. #设定pam服务下vsftpdd的验证配置文件名,不用改
  121. pam_service_name=vsftpd
  122. #限制主机对VSFTP服务器的访问,不用改(通过/etc/hosts.deny和/etc/hosts.allow这两个文件来配置)原始配置中没有
  123. tcp_wrappers=YES
  124. #设定启用虚拟用户功能
  125. guest_enable=YES
  126. #指定虚拟用户的宿主用户。-CentOS中已经有内置的ftp用户了
  127. guest_username=vsftpduser
  128. #设定虚拟用户的权限符合他们的宿主用户(虚拟用户与宿主用户具有相同的权限)
  129. virtual_use_local_privs=YES
  130. #设定虚拟用户个人vsftp的配置文件存放路径。存放虚拟用户个性的配置文件(配置文件名=虚拟用户名)
  131. user_config_dir=/etc/vsftpd/vconf
  132. # 是否藉助 vsftpd 的抵挡机制来处理某些不受欢迎的账号,与底下的参数设定有关;
  133. userlist_enable=YES
  134. # 当 userlist_enable=YES 时才会生效的设定,若此设定值为 YES 时,则当使用者账号被列入到某个档案时, 在该档案内的使用者将无法登入 vsftpd 服务器!该档案文件名与下列设定项目有关。
  135. userlist_deny=YES
  136. # 若上面 userlist_deny=YES 时,则这个档案就有用处了!在这个档案内的账号都无法使用 vsftpd 喔!
  137. userlist_file=/etc/vsftpd/user_list
  138. #可接受的最大client数目
  139. max_clients=100
  140. #每个ip的最大client数目
  141. max_per_ip=5
  142. #本地用户的传输比率(bytes/s)
  143. local_max_rate=1310720
  144. ```
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement