• linux搭建ftp服务器


    参考链接:https://www.freesion.com/article/41911387635/

    一、下载安装配置

    1.下载(下载地址

    1.1 下载服务端(链接: https://pan.baidu.com/s/19ec7yab3WMsK-gb7Auh-DA  密码: hnom)

    1.2 下载客户端(链接: https://pan.baidu.com/s/1cqM45TsSem5iGrImCfBhrQ  密码: qglt)

    注:客户端必须安装,否则ftp命令无法使用(-bash: ftp: command not found)

    2.上传安装包到服务器,放在安装目录,比如/home/ 下

    3.执行安装命令

    1 #fpt服务端安装   
    2 [root@fan102 ~]# rpm -Uvh vsftpd-3.0.2-27.el7.x86_64.rpm
    3 #fpt客户端安装   
    4 [root@fan102 ~]# rpm -Uvh ftp-0.17-67.el7.x86_64.rpm

    4.修改配置文件

     1 #修改服务端配置文件   
     2 [root@fan102 ~]# vi /etc/vsftpd/vsftpd.conf
     3 #anonymous_enable=YES修改为anonymous_enable=NO
     4 #添加内容如下 
     5 reverse_lookup_enable=NO
     6 pam_service_name=vsftpd
     7 userlist_enable=NO
     8 tcp_wrappers=YES 
     9 #listen_port=21 
    10 #默认端口号是21,如果需要改端口号,则需编辑 /etc/services 文件,将其中的 ftp 21/tcp 改为对应的端口号

    5.启动

    1 #服务启动
    2 [root@fan102 ~]# systemctl start vsftpd.service

    二、新增用户

     1 #新增用户并指定文件用户文件,示例用户为ftpuser
     2 [root@fan102 ~]# useradd -d /home/vsftpd ftpuser
     3 #设置密码,先输用户名,回车后再输密码
     4 [root@fan102 ~]# passwd ftpuser 123456
     5 #限定用户不能telnet,只能ftp
     6 [root@fan102 ~]# usermod -s /sbin/nologin ftpuser
     7 #将该用户加入到用户列表中
     8 [root@fan102 ~]# vi /etc/vsftpd/user_list
     9 #修改配置文件/etc/pam.d/vsftpd
    10 [root@fan102 ~]# vi /etc/pam.d/vsftpd
    11 #第三行 auth required pam_shells.so改为auth required pam_nologin.so

    三、登录校验

    1.重启服务器

    1 #服务重启
    2 [root@fan102 ~]# systemctl restart vsftpd.service

    2.连接服务端

     1 #连接ftp服务
     2 [root@fan102 ~]# ftp 172.16.1.102 21
     3 Connected to 172.31.12.215 (172.31.12.215).
     4 220 (vsFTPd 3.0.2)
     5 Name (172.31.12.215:root): zion
     6 331 Please specify the password.
     7 Password:
     8 230 Login successful.
     9 Remote system type is UNIX.
    10 Using binary mode to transfer files.
    11 ftp> quit
    12 221 Goodbye.

    230代表成功

    四、登录失败

    1.错误代码:530

    530 Login incorrect

    1 #查看日志
    2 [root@fan102 ~]# tail /var/log/secure

    日志内容:pam_unix(vsftpd:auth): authenticatio,pam_unix(vsftpd:auth): check pass

    pam_unix(vsftpd:auth): authentication failure,logname= uid=0

    原因

    这个是因为你创建的用户是不需要登陆的你设置了nologin,然后登陆的时候会去/etc/passwd下面检查这个用户,必须为/etc/shells类型才能登陆。所以你就报错了,现在你应该去这里改

    解决

     1 #修改配置文件
     2 [root@fan102 ~]# vi /etc/pam.d/vsftpd
     3 #第四行 设置为nologin,或者注释掉
     4  
     5 #%PAM-1.0
     6 session optional pam_keyinit.so force revoke
     7 auth required pam_listfile.so item=user sense=deny file=/etc/vsftpd/ftpusers onerr=succeed
     8 auth required pam_nologin.so
     9 auth include password-auth
    10 account include password-auth
    11 session required pam_loginuid.so
    12 session include password-auth

    2.错误代码:500

    500 OOPS: could not read chroot() list file:/etc/vsftpd/chroot_list

    原因:用户没有变更根目录的权限,ftp用户默认的根目录是/home/zion,如果要切换登陆目录,需要给予权限

    解决

    第一步:

    1 #修改配置文件
    2 [root@fan102 ~]# /etc/vsftpd/vsftpd.conf
    3 
    4 #内容如下
    5 chroot_local_user=YES
    6 chroot_list_enable=YES
    7 chroot_list_file=/etc/vsftpd/chroot_list

    第二步:在/etc/vsftpd/vsftpd创建chroot_list并将用户(zion)加入该文件

    1 #创建chroot_list并将用户加入该文件
    2 [root@fan102 ~]# /etc/vsftpd/vsftpd/chroot_list
    3  
    4 #文件内容
    5 ftpuser
  • 相关阅读:
    POJ1741
    聪聪可可
    [USACO07NOV]Cow Relays
    Android 程序的反破解技术
    在Android上实现SSL握手(客户端需要密钥和证书),实现服务器和客户端之间Socket交互
    vmware中的bridge、nat、host-only的区别
    史上最易懂的Android jni开发资料--NDK环境搭建
    使用javah生成.h文件, 出现无法访问android.app,Activity的错误的解决
    Android apk反编译基础(apktoos)图文教程
    Smali文件语法解析
  • 原文地址:https://www.cnblogs.com/zhncnblogs/p/16427497.html
Copyright © 2020-2023  润新知