• linux 安装 FTP服务


    一,VSFTP服务器概述

    FTP(File Transfer Protocol )是在互联网上提供文件存储和访问的计算机,他们依照FTP协议提供服务VSFTP(Very Secure FTP),是一个安全,高速,稳定的FTP服务器
    模式:C/S模式
    端口:vim /etc/services
    20:传数据    21:传指令

    二、工作流程

    FTP会话包含了两个通道,控制通道和数据通道,FTP的工作有两种方式,一种是主动模式,一种是被动模式。以FTPserver为参照物,主动模式,服务器主动连接客户端传输,被动模式,等待客户端的连接。

     

     三、安装VSFTP

    1.查看是否已安装,yum可安装ftp服务器端(vsftpd)、客户端(lftp)

    # rpm -qa | grep vsftp 
    #
    # yum install -y vsftpd lftp

    2.配置文件

    # ll /etc/vsftpd/
    total 20
    -rw-------. 1 root root 125 Oct 31 2018 ftpusers       #黑名单,用于指定哪些用户不能访问FTP服务器
    -rw-------. 1 root root 361 Oct 31 2018 user_list          #白名单,指定允许使用vsftpd的用户列表文件  
    -rw-------. 1 root root 5116 Oct 31 2018 vsftpd.conf       #主配置文件
    -rwxr--r--. 1 root root 338 Oct 31 2018 vsftpd_conf_migrate.sh    #是vsftp操作的一些变量和设置脚本

    3.启动

    /var/ftp : 默认情况下匿名用户的根目录

    # ll /var/ftp/
    total 0
    drwxr-xr-x. 2 root root 6 Oct 31 2018 pub

    # systemctl start vsftpd
    # systemctl enable vsftpd
    Created symlink from /etc/systemd/system/multi-user.target.wants/vsftpd.service to /usr/lib/systemd/system/vsftpd.service.

    # netstat -lantup | grep ftp
    tcp6 0 0 :::21 :::* LISTEN 3211/vsftpd

    (没有数据传输,所以20端口没活动)

    4.配置

     

     建立用户

    # useradd -s /sbin/nologin team1
    # useradd -s /sbin/nologin team2
    # echo "111" | passwd --stdin team1
    Changing password for user team1.
    passwd: all authentication tokens updated successfully.
    # echo "111" | passwd --stdin team2
    Changing password for user team2.
    passwd: all authentication tokens updated successfully.

    更改配置

    # cp /etc/vsftpd/vsftpd.conf   /etc/vsftpd/vsftpd.conf.bak

    # vim /etc/vsftpd/vsftpd.conf

    chroot_list_enable=YES
    local_root=/var/www/html
    chroot_list_file=/etc/vsftpd/chroot_list
    allow_writeable_chroot=yes

    # vim /etc/vsftpd/chroot_list
    team1
    team2

    创建文件

    # mkdir -p /var/www/html
    # ll -d /var/www/html/
    drwxr-xr-x. 2 root root 6 Sep 28 00:54 /var/www/html/
    #
    # chmod -R o+w /var/www/html/
    # ll -d /var/www/html/
    drwxr-xrwx. 2 root root 6 Sep 28 00:54 /var/www/html/

    重启服务使配置生效

    # systemctl restart vsftpd

    # systemctl stop firewalld

    # setenforce 0

    测试

    # ls
    download project
    #
    # ftp 192.168.10.53
    Connected to 192.168.10.53 (192.168.10.53).
    220 (vsFTPd 3.0.2)
    Name (192.168.10.53:root): team2
    331 Please specify the password.
    Password:
    230 Login successful.
    Remote system type is UNIX.
    Using binary mode to transfer files.
    ftp> bin
    200 Switching to Binary mode.
    ftp> put project
    local: project remote: project
    227 Entering Passive Mode (192,168,10,53,29,240).
    150 Ok to send data.
    226 Transfer complete.
    2390 bytes sent in 0.0108 secs (221.52 Kbytes/sec)
    ftp>

    # cd /var/www/html/
    # ls
    project

    传输成功


    #问题

    ftp登陆报错530 Login incorrect. Login failed.

    # ftp 192.168.10.53
    Connected to 192.168.10.53 (192.168.10.53).
    220 (vsFTPd 3.0.2)
    Name (192.168.10.53:root): team2
    331 Please specify the password.
    Password:
    530 Login incorrect.
    Login failed.
    ftp> exit

    vsftp服务是运行的,但是用户输入正确的密码登录会报530的错误,无法登录成功。

    1、查看ftp登录的账户主目录和登录shell对应的是

    # tail -n 3 /etc/passwd
    svnuser:x:1000:1000::/home/svnuser:/bin/bash
    team1:x:1001:1001::/home/team1:/sbin/nologin
    team2:x:1002:1002::/home/team2:/sbin/nologin

    2、查看/etc/shells是否有ftp用户的主目录和登录的shell,没有进行添加,保存退出。重新尝试登录连接FTP

    # vim /etc/shells
    /bin/sh
    /bin/bash
    /usr/bin/sh
    /usr/bin/bash
    /sbin/nologin

    # ftp 192.168.10.53
    Connected to 192.168.10.53 (192.168.10.53).
    220 (vsFTPd 3.0.2)
    Name (192.168.10.53:root): team2
    331 Please specify the password.
    Password:
    230 Login successful.
    Remote system type is UNIX.
    Using binary mode to transfer files.
    ftp>

  • 相关阅读:
    Chapter01_前言、入门程序、常量、变量
    面向对象知识点总结
    Java快捷键
    上线
    docker
    分页,过滤,搜索,排序
    Celery
    django-redis 缓存使用
    前台登录注册修订
    短信注册接口
  • 原文地址:https://www.cnblogs.com/zwj-linux/p/11609765.html
Copyright © 2020-2023  润新知