Linux离线搭建FTP文件服务器

一、下载安装配置

1.下载

1.1 下载服务端 vsftpd(链接:https://www.aliyundrive.com/s/5cdciNjSafV

1.2 下载客户端 ftp(链接:https://www.aliyundrive.com/s/ewuJRyt3NFD

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

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

3.执行安装命令

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

4.修改配置文件

#修改服务端配置文件
[root@fan102 ~]# vi /etc/vsftpd/vsftpd.conf

#添加内容如下
reverse_lookup_enable=NO
pam_service_name=vsftpd
userlist_enable=YES
tcp_wrappers=YES
#listen_port=21 //默认端口号是21,如果需要改端口号,则需编辑 /etc/services 文件,将其中的 ftp 21/tcp 改为对应的端口号

5.启动

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

二、新增用户

#新增用户并指定文件用户文件,示例用户为zion
[root@fan102 ~]# useradd -d /home/zion zion
#设置密码
[root@fan102 ~]# passwd zion 123123
#限定用户不能telnet,只能ftp
[root@fan102 ~]# usermod -s /sbin/nologin zion
#将该用户加入到用户列表中
[root@fan102 ~]# vi /etc/vsftpd/user_list

三、登录校验

1.重启服务器

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

2.连接服务端

#连接ftp服务
[root@fan102 ~]# ftp 172.16.1.102 21
Connected to 172.16.1.102 (172.16.1.102).
220 (vsFTPd 3.0.2)
Name (172.16.1.102:root): zion
331 Please specify the password.
Password:
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> quit
221 Goodbye.

3.连接成功

230代表成功,请点赞+关注,您的鼓励是我最大的动力,加油🆙

四、登录失败

1.错误代码:530

530 Login incorrect

#查看日志
[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类型才能登陆。

解决

#第四行 设置为nologin,或者注释掉

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

2.错误代码:500

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

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

解决

第一步:

#修改配置文件
[root@fan102 ~]# /etc/vsftpd/vsftpd.conf

#内容如下
chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list

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

#创建chroot_list并将用户加入该文件
[root@fan102 ~]# /etc/vsftpd/vsftpd/chroot_list
#文件内容
zion

文章有用的话,请点赞+关注,您的鼓励是我最大的动力,更多好帖敬请期待,加油🆙

+++++++++++++++++++++++++++++++++++++++++
+         如有问题可+Q:1602701980 共同探讨           +
+++++++++++++++++++++++++++++++++++++++++

 

  • 3
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要在Linux上进行离线安装FTP服务器,你需要按照以下步骤进行操作: 1. 首先,你需要下载FTP服务器软件的压缩包。你可以在网上搜索适合你的Linux发行版和版本的FTP服务器软件,并将其下载到一个可访问的位置,如USB驱动器或本地磁盘。 2. 进入你下载的压缩包所在的目录,并解压缩该文件。你可以使用命令行工具如tar或zip来解压缩文件。例如,使用以下命令解压缩tar.gz文件: ``` tar -zxvf filename.tar.gz ``` 3. 解压缩后,进入解压缩后的文件夹,并查看其中是否有一个名为"INSTALL"或"README"的文件。打开该文件,查看其中的指示和要求,以便正确安装FTP服务器。 4. 根据安装指南,执行所需的命令来安装FTP服务器。这可能包括在命令行中使用configure、make和make install等命令。这些命令将根据你的系统设置和配置文件来编译和安装FTP服务器。 5. 安装完成后,你可以根据安装指南启动FTP服务器。通常,你需要使用命令行输入启动命令。例如,对于常用的vsftpd服务器软件,你可以使用以下命令启动FTP服务器: ``` sudo service vsftpd start ``` 6. 确保你的防火墙设置允许FTP服务器的入站和出站连接。你可以使用iptables或ufw等工具来配置防火墙规则。具体操作请参考你Linux发行版所使用的防火墙工具的文档。 通过按照以上步骤,在离线环境中成功安装FTP服务器。请注意,具体步骤可能因所使用的FTP服务器软件和Linux发行版而有所不同,因此请参考相关文档和指南以确保正确安装和配置FTP服务器
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值