Linux网络配置之FTP配置详细教学

 更新时间:2025年06月20日 09:30:51   作者:我叫黑大帅  
这篇文章主要为大家详细介绍了Linux网络配置中FTP配置的相关知识,文中的示例代码简洁易懂,具有一定的借鉴价值,有需要的小伙伴可以了解下

总体流程

服务端

  • 创建站点主目录/var/xxxftp
  • 配置vsftpd的主配置文件,/etc/vsftpd/vsftpd.conf
  • 创建不能通过 Shell 登录的用户
  • 创建用户操作目录
  • 创建FTP服务中的用户配置文件/etc/vsftpd/vsftpd_user_conf/
  • 配置FTP服务中的用户配置文件/etc/vsftpd/vsftpd_user_conf/shnsftp1
  • 启动服务service vsftpd restart

虚拟用户登录,并且SSL认证

  • 创建用户目录 mkdir /home/shnvftp touch /home/shnvftp/testv1
  • 配置虚拟用户 /etc/vsftpd/login.txt
  • txt转换db db_load -T -t hash -f login.txt login.db
  • 验证虚拟用户 /etc/pam.d/vsftpd
  • 创建FTP服务中的用户配置文件/etc/vsftpd/vsftpd_user_conf/
  • 配置FTP服务中的用户配置文件/etc/vsftpd/vsftpd_user_conf/shnvftp1 目录与权限
  • 创建SSL证书
  • 开启/etc/vsftpd/vsftpd.conf中的SSL
  • 启动服务service vsftpd restart
  • 监听管口 tshark -ni eth0 -R "tcp.port eq 21"

客户端

登录ftp

虚拟用户登录,并且SSL认证

使用高级的图形客户端登录

配置vsftpd

 #允许匿名用户登录
 anonymous_enable=no

 #本地用户登录服务器所访问的路径
 local_root=/var/shnftp

 #登录时显示欢迎信息,如果设置了banner_file则此设置无效
 ftpd_banner=欢迎登录shn'ftp服务器。
 #登录用户允许使用ls -R命令,(一般禁止,服务器开销巨大)
 #ls_recurse_enable=YES
 #是定服务器在StandAlone模式下,不依赖于xinetd,可以独立启动
 listen=YES
 listen_address=10.10.1.10

 # SSL/TLS加密 先No 后面使用SSL再开启
 ssl_enable=No

创建用户

useradd shnsftp1 -s /sbin/nologin
passwd shnsftp1

创建操作目录

mkdir shnsftp
chown -R shnsftp1.shnsftp1 /shnsftp
chmod 777 shnsftp
touch shnsftp/tests1

创建FTP服务中的用户配置文件

cp /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd_user_conf/shnsftp1

shnsftp1:为刚才创建的用户名

配置FTP服务中的用户配置文件

 #全局控制-可以上传
  write_enable=no 
 #设置允许下载
 download_enable=yes

 #本地用户登录服务器所访问的路径
 local_root=/shnsftp
 #允许匿名用户上传
 anon_upload_enable=no

 #设定vsftpd的服务日志保存路径(默认不存在,必须手动touch,并提升权限)
 #xferlog_file=/var/log/xferlog
 #设定日志使用标准的记录格式
  • 权限允许下载,禁止上传,操作目录只限于/xxxsftp下
  • write_enable=yse 就可以增删改
  • 40行注释以后的内容都可以删掉

配置虚拟用户

shnvftp1
shnvftp1
  • 单数行为用户名
  • 双数行为密码

验证虚拟用户

 auth    sufficient /lib/security/pam_userdb.so db=/etc/vsftpd/login

 account sufficient /lib/security/pam_userdb.so db=/etc/vsftpd/login

创建SSL

# openssl req -x509 -days 365 -newkey rsa:2048 -nodes -keyout /etc/vsftpd/vsftpd.pem -out /etc/vsftpd/vsftpd.pem                                   // 创建 SSL
Generating a 2048 bit RSA private key
.............................................+++
....+++
writing new private key to '/etc/vsftpd/vsftpd.pem'
-----
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [GB]:cn                                  // 国家
State or Province Name (full name) [Berkshire]:ln                     // 省
Locality Name (eg, city) [Newbury]:ltu                                // 城市
Organization Name (eg, company) [My Company Ltd]:soft                 // 组织
Organizational Unit Name (eg, section) []:network                     // 单位名称
Common Name (eg, your name or your server's hostname) []:localhost    // 主机名称        
Email Address []:
# chmod 600 vsftpd.pem                                                // 授权权限

登录ftp

# ftp 10.10.1.10                                                // 连接 ftp
Connected to 10.10.1.10.
220 欢迎登录shn'ftp服务器。
530 Please login with USER and PASS.
530 Please login with USER and PASS.
KERBEROS_V4 rejected as an authentication type
Name (10.10.1.10:root): shnmftp1                              // 登录
331 Please specify the password.
Password:                                                     // 密码
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> ls                                                       // 查看
227 Entering Passive Mode (10,10,1,10,247,9)
150 Here comes the directory listing.
-rw-r--r--    1 0        0               0 May 13 06:14 m1
drwx------    2 603      603          4096 May 20 03:31 shnm
226 Directory send OK.
ftp> get m1 /var/m99                                          // 下载
local: /var/m99 remote: m1
227 Entering Passive Mode (10,10,1,10,35,242)
150 Opening BINARY mode data connection for m1 (0 bytes).
226 File send OK.
ftp> put /var/m99 ./s99                                      // 上传
local: /var/m99 remote: ./s99
227 Entering Passive Mode (10,10,1,10,244,124)
150 Ok to send data.
226 File receive OK.
ftp> delete s99                                              // 删除
250 Delete operation successful.
ftp> quit                                                    // 退出
221 Goodbye.

高级的图形客户端登录

到此这篇关于Linux网络配置之FTP配置详细教学的文章就介绍到这了,更多相关Linux FTP配置内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Linux的truncate命令用法及说明

    Linux的truncate命令用法及说明

    本文介绍了Linux的truncate命令,可精确控制文件大小,适用于系统管理和开发,文中详细描述了命令的基本语法、操作模式(缩小和扩展文件)、底层实现、完整选项说明,并提供了多个应用场景和技术细节
    2026-05-05
  • NTP时间同步、ntpdate实现过程

    NTP时间同步、ntpdate实现过程

    本文主要介绍了NTP时间同步的方法,包括直接与外网时间服务器同步、搭建本地时间服务器同步,以及使用ntpdate命令手动同步时间,最后,还特别说明了Windows服务器设置NTP同步的方法
    2026-04-04
  • Linux文件和文件夹权限操作方法

    Linux文件和文件夹权限操作方法

    这篇文章主要介绍了Linux文件和文件夹权限操作方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-05-05
  • Linux远程登录实现教程解析

    Linux远程登录实现教程解析

    这篇文章主要介绍了Linux远程登录实现教程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-05-05
  • Linux上进行常用软件的配置方法

    Linux上进行常用软件的配置方法

    这篇文章主要介绍了Linux上进行常用软件的配置方法,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-08-08
  • Linux中chmod权限设置方式

    Linux中chmod权限设置方式

    本文介绍了Linux系统中文件和目录权限的设置方法,包括chmod、chown和chgrp命令的使用,以及权限模式和符号模式的详细说明,通过这些命令,用户可以灵活地控制文件和目录的访问权限
    2025-01-01
  • Linux环境宿主机进入Docker容器实现过程

    Linux环境宿主机进入Docker容器实现过程

    文章介绍了如何在Linux宿主机中进入Docker容器,并提供了进入MySQL容器的示例命令,还介绍了如何在Docker和宿主机之间复制文件
    2025-10-10
  • Win7下XAMPP集成环境中Apache无法启动的问题解决

    Win7下XAMPP集成环境中Apache无法启动的问题解决

    这篇文章主要介绍了Win7下XAMPP集成环境中Apache无法启动的问题解决,通常是端口冲突,文中也讲到了PotgreSQL的相关问题,需要的朋友可以参考下
    2015-07-07
  • Linux内核的死锁检测工具—Lockdep的使用案例

    Linux内核的死锁检测工具—Lockdep的使用案例

    文章主要介绍了Linux内核中的死锁问题,包括死锁的类型(递归死锁和AB-BA死锁)、lockdep模块的使用方法以及实际项目中的死锁案例,通过lockdep模块,可以有效地跟踪和调试死锁问题,帮助开发者快速定位和解决问题
    2024-11-11
  • 解决linux环境下时区无法设置的问题

    解决linux环境下时区无法设置的问题

    在本篇文章里小编给大家整理的是关于解决linux环境下时区无法设置的问题的方法,需要的朋友们学习下。
    2020-01-01

最新评论