菜鸟学Linux 第064篇笔记 ftp概念,vsftp配置

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
运维安全中心(堡垒机),企业双擎版 50资产 7天
简介:

菜鸟学Linux 第064篇笔记 ftp概念,vsftp配置




Name Resolve (名称解析): 

Username--> UID, Group-->GID, Service Name --> Port, Hostname --> IP


Username --> UID /etc/passwd

hostname --> IP DNS, /etc/hosts

Service Name --> Ports /etc/services, 

只要有一种数据存储格式格式: 解析库;不同的解析库需要不同的查询方式;


NS Switch (Name Server Switch)



S/MIME

Openssl, GPG(PGP) GNU Is Guard



FTP (File Transfer Protocol) 21/tcp

文件共享服务; 

工作在应用层;

RPC:Remote Procedure Call, 远程过程调用, 基于二进制格式实现数据通信

NFS:Network File System (RFC)

Samba: CIFS/SMB,通用网络文件系统(跨平台


FTP: tcp 两个连接

命令连接(控制连接) 21/tcp

数据连接 

主动模式 20/tcp  服务器主动发送连接请求

被动模式 端口随机, 由服务器随机打开一个端口通过控制连接发送给客户端

 由客户端发起连接 (避免被客户端Firewall阻止)如果server也有Firewall

Firewall 具有连接追踪功能,可以觉察出进程间的联系,而做出相应反应(以后细讲)


数据传输模式(自动模式):

文本(ASCII America Standard Code for Information InterChange)

二进制


结构化数据、半结构化数据、非结构化数据




FTP 实现 

服务器端程序

wu-ftpd: Warshington University

vsftpd: Very Secure ftp Daemon

proftpd:

pureftpd:

Filezilla

Serv-U(windows)


客户端程序

CLI:

ftp

lftp


GUI:

gftpd

FlashFXP

Cuteftp

Filezilla



vsftpd

/etc/vsftpd 配置文件夹

/etc/init.d/vsftpd 服务脚本

/usr/sbin/vsftpd 主程序

/var/ftp  该目录除管理员之外其它用户没有写权限,FTP的根目录


基于PAM实现用户认证 (Pluggable Authentication Modules)

类似nsswitch 一种框架认证机制

/etc/pam.d/*

/lib/security/*

支持虚拟用户



ftp 用户

匿名用户-->系统用户 anonymous

系统用户 local-enable

虚拟用户-->系统用户 


/var/ftp ftp用户家目录 

匿名用户访问目录 anonymous

chroot 

禁锢用户锁定其只可在家目录内



下面开始安装FTP 服务器vsftpd (默认开启匿名访问)

# yum install vsftpd

# service vsftpd start

# chkconfig --list vsftpd

(服务器安装成功,并可以访问)


分析配置文件

/etc/vsftpd/vsftpd.conf

用来配置用户权限

记录日志

定义会议日志

文本模式上传下载

配置用户使其禁锢在其家目录中

#chroot_list_enable=YES

# (default follows)

#chroot_list_file=/etc/vsftpd/chroot_list

或直接使用chroot_local_user=YES

配置vsftpd是启动为独立守护进程

基于pam认证的文件名字

用户列表是否启用

用户列表是否允许登录

Userlist_deny={YES|NO}

max_clients=

max_per_ip=


守护进程

独立守护

瞬时守护

由xinetd



ftp安全通信方式

ftps: ftp+ssl/tls

sftp: OpenSSH, subsystem, sftp(SSH)


建立CA服务器

生成ftp私钥、密钥请求文件、

使用CA 服务器为ftp服务器颁发证书

在/etc/vsftpd/vsftpd.conf 添加如下配置


ssl_enable=YES

ssl_tlsv1=YES

ssl_sslv3=YES

allow_anon_ssl=NO

force_local_data_ssl=YES

force_local_logins_ssl=YES

rsa_cert_file=/etc/vsftpd/ssl/vsftpd_cert.pem

rsa_private_key_file=/etc/vsftpd/ssl/vsftpd_key.pem



ftp 虚拟用户实现PAM(手动配置PAM文件)

基于mysql: VSFTPD user:name,password

基于file /etc/vsftpd/vusers: -->db_load

USERNAME

PASSWORD


基于mysql实现虚拟用户

安装mysql mysql-devel mysql-server

安装pam mysql模块使其可支持其于mysql来进行认证

在mysql创建数据库,表,字段和专用来访问该数据库的用户, 供pam调用

在表中创建几条数据供vsftp服务器用户登录

建立pam认证所需文件/etc/pam.d/vsftp.mysql并配置

本文转自Winthcloud博客51CTO博客,原文链接http://blog.51cto.com/winthcloud/1887774如需转载请自行联系原作者


Winthcloud
相关文章
|
24天前
|
Ubuntu Unix Linux
Linux网络文件系统NFS:配置与管理指南
NFS 是 Linux 系统中常用的网络文件系统协议,通过配置和管理 NFS,可以实现跨网络的文件共享。本文详细介绍了 NFS 的安装、配置、管理和常见问题的解决方法,希望对您的工作有所帮助。通过正确配置和优化 NFS,可以显著提高文件共享的效率和安全性。
162 7
|
2月前
|
数据库连接 Linux Shell
Linux下ODBC与 南大通用GBase 8s数据库的无缝连接配置指南
本文详细介绍在Linux系统下配置GBase 8s数据库ODBC的过程,涵盖环境变量设置、ODBC配置文件编辑及连接测试等步骤。首先配置数据库环境变量如GBASEDBTDIR、PATH等,接着修改odbcinst.ini和odbc.ini文件,指定驱动路径、数据库名称等信息,最后通过catalog.c工具或isql命令验证ODBC连接是否成功。
|
2月前
|
缓存 资源调度 安全
深入探索Linux操作系统的心脏——内核配置与优化####
本文作为一篇技术性深度解析文章,旨在引领读者踏上一场揭秘Linux内核配置与优化的奇妙之旅。不同于传统的摘要概述,本文将以实战为导向,直接跳入核心内容,探讨如何通过精细调整内核参数来提升系统性能、增强安全性及实现资源高效利用。从基础概念到高级技巧,逐步揭示那些隐藏在命令行背后的强大功能,为系统管理员和高级用户打开一扇通往极致性能与定制化体验的大门。 --- ###
89 9
|
2月前
|
存储 安全 数据管理
如何在 Rocky Linux 8 上安装和配置 Elasticsearch
本文详细介绍了在 Rocky Linux 8 上安装和配置 Elasticsearch 的步骤,包括添加仓库、安装 Elasticsearch、配置文件修改、设置内存和文件描述符、启动和验证 Elasticsearch,以及常见问题的解决方法。通过这些步骤,你可以快速搭建起这个强大的分布式搜索和分析引擎。
86 5
|
3月前
|
Java Linux 网络安全
NIFI在Linux服务区上的部署配置过程是什么?
【10月更文挑战第21天】NIFI在Linux服务区上的部署配置过程是什么?
103 2
|
3月前
|
Linux 网络安全
FTP被动模式配置
FTP被动模式配置
166 1
|
3月前
|
Ubuntu Linux 编译器
Linux/Ubuntu下使用VS Code配置C/C++项目环境调用OpenCV
通过以上步骤,您已经成功在Ubuntu系统下的VS Code中配置了C/C++项目环境,并能够调用OpenCV库进行开发。请确保每一步都按照您的系统实际情况进行适当调整。
859 3
|
3月前
|
监控 安全 网络协议
快速配置Linux云服务器
【10月更文挑战第3天】快速配置Linux云服务器
|
3月前
|
Ubuntu Java Linux
Linux操作系统——概念扫盲I
Linux操作系统——概念扫盲I
65 4
|
3月前
|
应用服务中间件 Linux Shell
Linux 配置 Nginx 服务的详细步骤,绝对干货
Linux 配置 Nginx 服务的详细步骤,绝对干货
130 0