linux系统ftp服务

一、ftp:文件传输协议

匿名用户默认的登陆目录为/var/pub/

本地用户默认的登陆目录为/home。家目录

配置yum源[root@localhost ~]# vim /etc/yum.repos.d/rhel_dvd.repo

服务端安装vstftp服务和lftp服务,客户端安装lftp服务


yum install vsftpd lftp -y    
systemctl  start vsftpd     打开服务

systemctl  enable vsftpd    开机启动服务


vstftp用于服务端
lftp用于客户端
打开防火墙:systemctl start firewalld

[root@node2 ~]# firewall-cmd --get-services 查看防火墙可以允许的服务


amanda-client bacula bacula-client dhcp dhcpv6 dhcpv6-client dns ftp high-availability http https imaps ipp ipp-client ipsec kerberos kpasswd ldap ldaps libvirt libvirt-tls mdns mountd ms-wbt mysql nfs ntp openvpn pmcd pmproxy pmwebapi pmwebapis pop3s postgresql proxy-dhcp radius rpc-bind samba samba-client smtp ssh telnet tftp tftp-client transmission-client vnc-server wbem-https
[root@node2 ~]# firewall-cmd --permanent --add-service=ftp      给防火墙加ftp
success
[root@node2 ~]# firewall-cmd --reload      更改防火墙加载
success

[root@node2 ~]# firewall-cmd --list-all    查看防火墙状态


public (default, active)
  interfaces: eth0
  sources:
  services: dhcpv6-client ftp ssh
  ports:
  masquerade: no
  forward-ports:
  icmp-blocks:
  rich rules:

在客户端lftp 服务端ip                        连接服务端查看能否连接成功

扫描二维码关注公众号,回复: 872627 查看本文章


二、修改配置vsftpd服务配置文件 vim /etc/vsftpd/vsftpd.conf

用户登录设置

1.匿名用户登陆


 anonymous_enable=YES          是否允许匿名用户登陆

  #anonymous_enable=NO

2.本地用户登陆


  local_enable=YES               是否允许本地用户登陆

  #local_enable=NO

3.本地用户读写

 write_enable=YES      是否允许本地用户读写

#write_enable=NO

登陆用户的读写权限

530  认证失败,密码错误

550  当前用户没有权限

553  文件权限太小

500  文件权限过大

1.匿名用户上传文件权限

修改组 chgrp ftp/var/ftp/pub/

修改权限 chmod 775 /var/ftp/pub/

2.匿名用户删除文件权限

   需要自己添加

3.匿名用户下载文件权限

anon_world_readable_only=NO          是否允许匿名用户下载不属于自己的文件,默认YES不允许,如果需要改为NO

4.匿名用户新建目录权限

#anon_mkdir_write_enable=YES      是否允许匿名用户可以新建目录

用户登陆的相关配置

1.修改默认用户,以student的身份登陆

2.匿名用户的最大上传速度

anon_max_rate=102400             允许匿名用户上传的速度

3.匿名用户登陆的默认目录修改

4.最多同时在线人数设定

5.修改本地用户登陆后,文件默认权限修改

   文件默认权限为644

6.用户登陆,锁定在用户家目录

开启之后,要取消家目录文件w权限,否则会500报错,文件权限过大

7.本地用户登陆黑/白名单

  不锁定用户家目录

开启黑/白名单列表

   列表文件为/etc/vsftpd/chroot_list

#当锁定用户家目录(yes)时,/etc/vsftpd/chroot_list为白名单

当不锁定用户家目录(no)时/etc/vsftpd/chroot_list为黑名单

8.黑名单配置文件

ls /etc/vsftpd/
ftpusers                本地用户永久黑名单
user_list                  本地用户临时黑名单,当修改配置文件后会变成白名单
 pam_service_name=vsftpd

 userlist_enable=YES

userlist_deny=NO                    加入这条参数后临时黑名单将变成白名单

虚拟用户登陆

虚拟ftp用户的建立
    1  cd /etc/vsftpd/

    2  vim users                                   在/etc/vsftpd/下面新建一个文件user,user里包含需要建立的虚拟用户的名称和密码


    3  db_load -T -t hash -f users users.db             将这个文件加密成db文件


    4  cd /etc/pam.d/                    ftp配置文件的默认认证方式为pam方式,在此文件下查看该认证方式的规则
    5  vim vsftpd                        系统认证文件

    6  vim usercheck                    我们自己编写一个认证文件在/etc/oam.d/中


####account         required        pam_userdb.so   db=/etc/vsftpd/users#####    
####auth            required        pam_userdb.so   db=/etc/vsftpd/users#####   
             认证文件规则

    7  vim /etc/vsftpd/vsftpd.conf                      修改配置文件 

             

    8  systemctl restart vsftpd.service                 重启服务


配置虚拟用户独立的家目录

-p表示上层目录不存在,自动建立

修改配置文件,使虚拟用户登陆到自己独立的家目录

虚拟用户分开管理

将匿名用户所有的权限关闭

修改配置文件,给指定虚拟用户特殊权限

user_conf目录中的文件=vip名单

在/etc/vsftpd/user_conf目录下建立文件,以虚拟用户名命名

修改虚拟用户登陆家目录权限

家目录权限改为755

更改虚拟用户登陆家目录组







猜你喜欢

转载自blog.csdn.net/qq_41880412/article/details/80028958