实战 ➾【Red Hat 搭建部署VSFTPd服务】

news2024/11/17 19:51:09

实战 ➾【Red Hat 搭建部署VSFTPd服务】

    • 🔻 前言
    • 🔻 一、vsFTPd服务部署
      • 🚥 1.1 vsFTPd服务安装
      • 🚥 1.2 vsFTPd服务的启动与关闭
    • 🔻 二、vsFTPd相关配置
      • 🚥 2.1 vsFTPd的相关配置文件
      • 🚥 2.2 配置匿名用户登录环境
      • 🚥 2.3 监听地址与控制端口
      • 🚥 2.4 FTP模式与数据端口
      • 🚥 2.5 ASCII模式
      • 🚥 2.6 超时选项
      • 🚥 2.7 负载控制
      • 🚥 2.8 用户设置
      • 🚥 2.9 用户登录控制
      • 🚥 2.10 目录访问控制
      • 🚥 2.11 文件操作控制
      • 🚥 2.12 新增文件权限设置
      • 🚥 2.13 日志设置
    • 🔻 三、测试vsftpd服务
    • 🔻 四、配置vsftpd服务禁止匿名访问、并控制用户切换目录
    • 🔻 总结—温故知新

🔻 前言

在Red Hat Enterprise Linux 下,有Red Hat ContentAcceletatot和vsFTPd 两款内置的FTP 服务器软件。其中,Red Hat Content Acceletatot 提供了Web和FTP 两种服务,并具有高效的特点,但功能较弱。而 vsFTPd 在提供FTP 服务方面具有高效性外还具有很强的安全性和稳定性,因此这里将主要讲解vsFTPd服务的安装。

🔻 一、vsFTPd服务部署

🚥 1.1 vsFTPd服务安装

由于安装 VSFTPd 服务时,没有要依赖的软件包,因此安装起来极为方便,只要安装一个RPM 软件包即可。在安装前,首先需要确认该服务在系统中是否已经安装。

[root@ftp-server ~]# rpm -q vsftpd

在这里插入图片描述

进行安装(前提----系统光盘镜像挂载):

如果检测到系统中还没有安装该服务,则可通过yum实现安装。

[root@ftp-server ~]# yum -y install vsftpd

在这里插入图片描述

执行命令后的结果如下所示,显示了“vsftpd-3.0.2-28.el7.x86_64”的字样表明该服务已经安装。

[root@ftp-server -]# rpm -q vsfipd
vsftpd-3.0.2-28.el7.x86_64

🚥 1.2 vsFTPd服务的启动与关闭

启动VsFTPd服务

要启动VsFTPd服务,只需要执行以下命令。

[root@ftp-server -]# systemctl start vsftpd 

vsftpd 状态查看

执行命令查看vsftpd 状态结果如下所示,表明启动成功。

[root@ftp-server -]# systemctl ststus vsftpd 

在这里插入图片描述
重新启动vsFTPd服务

[root@ftp-server -]# systemctl restart vsftpd 

停止vsFTPd服务

[root@ftp-server -]# systemctl stop vsftpd 

设置自动启动vsFTPd服务

启动的VSFTPd服务只能保持到此次计算机关闭之前,下次重启计算机后,又需要手动启动VsFTPd 服务。

为了避免此种情况的发生,则可以设置VSFTPd 服务随系统启动而自动加载具体方法如下。
方式一(推荐):

####设置服务开机启动
[root@ftp-server -]# systemctl enable vsftpd

#####关闭服务开机启动
[root@ftp-server -]# systemctl disable vsftpd

#####查询服务是否是自启动的
[root@ftp-server -]# systemctl is-enabled vsftpd

在这里插入图片描述

方式二GUI方式设置(不推荐):

首先安装ntsysv,再执行“ntsysv”命令启动自动服务配置程序,然后找到“vsftpd”服务选项,按Space键在其前面加上星号“ * ”—》空格键添加 * 号,最后按 Tab键,选择“确定”按钮即可,如图所示。

[root@ftp-server ~]# yum -y install ntsysv
[root@ftp-server ~]# ntsysv

在这里插入图片描述

🔻 二、vsFTPd相关配置

🚥 2.1 vsFTPd的相关配置文件

VsFTPd 服务的配置都是通过相关配置文件实现的。该服务的配置文件有多个,包括其主配置文件/etc/vsftpd/vsftpd.conf,以及加强VSFTPd 服务器用户认证的/etc/pamd/vsftpd 文件等。

/etc/pam.d/vsftpd
vsFTPd的The Pluggable Authentication Modules(PAM)配置文件。它主要用来加强VSFTPd服务器的用户认证。

/etc/vsftpd.ftpusers
所有位于此文件内的用户都不能访问 vsFTPd 服务。当然,为了安全起见,这个文件中默认已经包括了root、bin和daemon等系统账号。

/etc/vsftpd/user_list
这个文件中包括的用户有可能是被拒绝访问 vsFTPd 服务的,也可能是允许访问的,这主要决定于vsFTPd的主配置文件/etc/vsftpd/vsftpd.conf 中的“userlist_deny”参数设置的是“Yes(默认值)还是“No”。

/var/ftp
VsFTPd 提供服务的文件集散地,包括一个pub子目录。默认配置下,所有的目录都是只读的,不过只有root用户有写权限。

主配置文件/etc/vsftpd/vsftpd.conf配置默认参数及含义:

# 允许匿名访问
anonymous_enable=YES

# 允许本地用户访问
local_enable=YES

# 开放本地用户的写权限
write_enable=YES

# 出于安全考虑,设置本地用户文件生成掩码umask为022,默认值为077,若本地文件具有执行权限,则
# 上传到服务器后为777-022=755,若本地文件不具有执行权限,则上传后权限为644
local_umask=022

# 允许匿名用户上传,该条默认注释了,就是禁止,下同
#anon_upload_enable=YES

# 允许匿名用户创建目录及写入
#anon_mkdir_write_enable=YES

# 当切换目录时,显示该目录下的.message隐含文件内容
dirmessage_enable=YES

# 激活上传和下载日志
xferlog_enable=YES

# 启用FTP数据端口的连接请求
connect_from_port_20=YES

# 使用标准的ftpd_xferlog日志格式
xferlog_std_format=YES

# 设置PAM认证服务的配置文件名称
pam_service_name = vsftpd

# 激活vsftpd检查userlist_file指定的用户是否可以访问csftpd服务器
userlist_enable = YES

# 使vsftpd处于独立启动模式
listen = YES

# 使用tcp_wrappers作为主机访问控制方式
tcp_wrappers = YES

拓展参数详解:
chroot_local_user=NO // 用户不能修改自己根目录
chroot_list_enable=YES //开启chroot_list 配置,该配置文件下的用户只能访问自己的目录,不在该列表的用户,可以访问自己目录以为的目录
chroot_list_file=/etc/vsftpd/chroot_list // chroot_list 配置文件存放路径, 如果没有该配置,可以手动添加/etc/vsftpd/chroot_list 用户清单文件格式要求每个用户名各占一行。
userlist_enable=YES //激活vsftpd检查userlist_file指定的用户是否可以访问csftpd服务器
userlist_deny=NO //开启ftp用户登录白名单,只允许/etc/vsftpd/chroot_list 的用户访问ftp,

🚥 2.2 配置匿名用户登录环境

在vsFTPd 的配置文件 /etc/vsftpd/vsftpd.conf 中,注释行应以“#”开头,每个选项设置为一行,在该文件中,默认情况下会存在以下语句。
在这里插入图片描述

anonymous_enable=YES,表明vsFTPd服务是允许匿名访问的,且这里的匿名服务器是必须配置的。

匿名访问默认的下载文件目录地址为/var/ftp/pub,该目录为空。

🚥 2.3 监听地址与控制端口

如果需要改变FTP的用来提供服务的默认端口,可以通过修改 vsFTPd 的主配置文件/etc/vsftpd/vsftpd.conf来实现。

设置监听地址

配置文件中默认只有是否监听的参数,没有关于监听地址的配置参数。若要监听地址则需要添加如下内容。

listen_address=ip address

在这里插入图片描述

此参数在VsFTPd 使用独立模式 (standalone)时有效,定义了在主机的哪个IP 地址上监听FTP请求,即在哪个P地址上提供FTP 服务。对于只有一个IP地址的主机,不需要使用此参数。对于多址主机,不设置此参数,即将监听所有IP 地址,默认值为无。

控制端口

控制端口是vsFTPd服务器监听的端口号。与监听地址一样,控制端口在独立模式下有效默认值为21,配置控制端口需要在配置文件中添加关于控制端口的参数,格式如下。

listen_port=port_value

🚥 2.4 FTP模式与数据端口

FTP有两种工作模式,建立控制连接时都是由客户端和 FTP 服务器的控制端口(默认值为21)建立控制连接,然后传输操作指令的。

区别在于使用数据传输端口(FTP-DATA)的方式不同,主动模式由FTP服务器指定数据传输所使用的端口,默认值为20。被动模式由FTP客户端决定数据传输的端口。在 /etc/vsftpd/vsftpd.conf配置文件中,也可以针对主动模式和被动模式对vsFTPd服务器进行配置。

主动模式

主动模式的相关配置参数:
####如果要在数据连接时取消主动模式时设此选项为NO,默认值为YES
port_enable=YES/NO

###控制以主动模式进行数据传输时是否使用20端口(FTP-DATA)。YES使用,NO不使用,默认值为NO。RHL自带的vsftpdconf 文件中此参数设为YES
connetc_from_port20=YES/NO

###设定FTP数据传输端口(FTP-DATA)值,默认值为20。此参数用于主动模式。
ftp_data_port=port number

###默认值为NO。如果为YES,取消主动安全检查,该检查确保外出的数据只能连接到客户端上.打开此选项时要小心
port_promiscuous=YES/NO

被动模式

被动模式的相关配置参数
###YES,表示数据传输时允许使用被动模式;NO,则表示不允许使用。默认值为 YES
pasv_enable=YES/NO

###设定在被动模式下,建立数据传输可以使用 port 范围的下界和上界。0表示任意,默认值为0把端口范围设在数值比较高的一段范围内,比如50000~60000,将有助于安全性的提高
pasy_min_port=port number

###此选项被激活时,将关闭被动模式的安全检查。该检查确保数据连接和控制连接是来自同一个IP地址的。小心打开此选项。此选项唯一合理的用法是,存在于由安全隧道方案构成的组织,默认值为NO
pasv_promiscuous=YES/NO

###此选项为一个数字IP 地址,作为被动命令的响应。默认值为 one,即地址是从呼入的连接套接字中获取的
pasv_address= IP address

🚥 2.5 ASCII模式

默认情况下,VSFTP 是禁止使用ASCII传输模式的,以下选项参数控制VSFTPd 是否使用ASCII传输模式,/etc/vsftpd/vsftpd.conf中配置。

ascii_download_enable=YES/NO

控制是否允许使用ASCII模式下载文件,YES 允许,NO不允许,默认为 NO。

ascii_upload_enable=YES/NO

控制是否允许使用ASCI模式上传文件,YES 允许,NO不允许,默认为 NO。

🚥 2.6 超时选项

为了节约系统资源,vsFTPd 还提供了超时定义设置,以防止客户端无限制时间地连接在FTP服务器上。

idle_session_timeout=xxx(以秒为单位)

空闲用户会话的超时时间,如果超出这个时间没有数据的传送或是指令的输入,就会强迫断线。单位为s,默认值为“300”。

data_connection_timeout=xxx(以秒为单位)

定义数据传输过程中被阻塞的最长时间(以s为单位,一旦超出这个时间,客户端的连接将被关闭。单位为s,默认值为“300”。
以下两个选项是针对客户端的,客户端空闲1min后将自动中断连接,并在中断1min后自动激活连接。

accept_timeout=xxx(以秒为单位)

接受建立链接的超时设定。单位为s,默认值为“60”。

connect_timeout=xxx(以秒为单位)

响应主动模式的数据连接的超时设定,单位为s,默认值为“60”

🚥 2.7 负载控制

FTP客户端占用过大的宽带将影响服务器的正常运行。为防止客户端占用过大的带宽,保证服务器正常运行,可以通过设置以下参数来实现。

####此参数在vsFTPd使用独立模式下有效。定义了FTP服务器最大的并发连接数,当超过此连接数时,FTP服务器拒绝客户端连接。默认值为0,表示不限制最大连接数
max_clients=numerical value

###此参数在VsFTPd使用独立模式下有效。定义了每个IP 地址最大的并发连接数目,超过这个数目将拒绝连接。此选项的设置将影响到如迅雷、BT 等多线程下载软件。默认值为0,表示不限制。
max_per_ip=numerical value

###设定匿名用户的最大数据传输速度value,以b/s为单位,默认值无
anon_max_rate=value

###设定本地用户的最大数据传输速度 value,以 b/s 为单位,默认值无。此选项对所有的用户都生效还可以在用户个人配置文件中使用此选项,以指定特定用户可获得的最大数据传输速率
local_max_rate=value

🚥 2.8 用户设置

FTP中有匿名用户(匿名账号anonymous,密码为空)、本地用户和虚拟用户3种。相应的配置参数如下。

匿名用户

匿名用户配置参数说明

####控制是否允许匿名用户登录。YES 允许,NO 不允许,默认值为 YES
anonymous_enable=YES/NO

###控制匿名用户登入时是否需要密码。YES 不需要,NO需要,默认值为NO
no_anon_password=YES/NO

###指定匿名用户与本地账号相对应,该用户的家目录即为匿名用户访问 FTP 服务器时的家目录。默认值为“ftp”
ftp_username=ftp

###此参数默认值为NO当值为YES 时,拒绝使用 banned_email_file 参数指定文件中所列出的用 E-mail地址进行录的匿名用户。
###即当匿名用户使用 banned email file文件中所列出的用 E-mail进行登录时将被拒绝,这对于阻击某些Dos攻击有效。
###当此参数生效时,需追加 banned email_file参数banned_emailfile指定包含被拒绝的E-mail地址的文件默认文件为/etc/vsftpd.banned_emails
banned_email_file=/etc/vsftpd.banned_emails

###设定匿名用户的根目录,即匿名用户登入后,被定位到此目录下。主配置文件中默认无此项,默认值为/var/ftp/
anon_root=/var/ftp/

###控制是否只允许匿名用户下载可阅读文档。当值为YES 时,允许匿名用户下载可阅读的文件,为NO时,则允许匿名用户浏览整个服务器的文件系统。
###默认值为YES,控制是否允许匿名用户上传文件,YES 为允许,N 为不允许,默认是不设值,即为 NO。
###除了这个参数外,匿名用户如果要上传文件,还需要两个条件wite enable 参数为YES;以及在文件系统上FTP匿名用户对某个目录有写权限
anon_world_readable_only=

###控制是否允许匿名用户创建新目录,YES 为允许,NO 为不允许,默认是不设值,即为 NO。在文件系统上,FTP匿名用户必须对新目录的上层目录拥有写权限
anon_upload_enable=YES/NO

###控制匿名用户是否拥有除了上传和新建目录之外的其他权限,如删除、更名等。YES 为拥有,NO为不拥有,默认值为 NO。
anon mkdir_write_enable=YES/NO

###是否修改匿名用户所上传文件的所有权,当值为 YES 时,匿名用户所上传的文件所有权将改为另外一个不同的用户所有,用户由chown username参数指定。此选项默认值为NO
anon_other_write_enable=YES/NO

###指定拥有匿名用户上传文件所有权的用户。
chown_uploads

###此参数与chown_uploads 联用。不推荐使用root 用户
chown_username

本地用户

在使用FTP服务的用户中,除了匿名用户外,还有一类在FTP服务器所属主机上拥有账号的用户,在VsFTPd中称此类用户为本地用户(localusers)。

本地用户配置参数说明

###是否允许本地用户登录。默认值为“YES”,也就是允许本地用户访问 VSFTPd服务器。以下选项只有在local_enable=YES”的前提下才有效
local_enable=YES/NO

###当设置为“YES”时,本地用户只能访问到家目录,不能切换到家目录之外
chroot_local_user=YES/NO

###当设置为“YES”时,表示本地用户也有例外,可以切换到家目录之外,例外的用户在“chroot_list_fle 指定的文件中(默认文件是“/etc/vsftpd.chroot_list”)
chroot_list_enable=YES/NO

###当设置为“YES”时,以本地用户登录的客户端可以通过“SITECHMOD”指令来修改文件的权限
chmod_enable=YES/NO

###设置文件创建的掩码(操作方法与 Liux 下文件属性设置相同),默认值为“022”,也就是其他用户具有只读属性
local umask

###指定本地用户登录 vsFTPd 服务器时切换到的目录。没有设置默认值
local root

虚拟用户

考虑到安全方面的问题,vSFTPd 除了支持本地用户和匿名用户之外,还支持虚拟用户虚拟用户的具体配置参数如下。

guest_enable

当设置为“YES”时,所有非匿名用户都被映射为一个特定的本地用户。该用户通过guest_username”指令指定。默认值为“No”。

guest_username

设置虚拟用户映射到的本地用户,默认值为“ftp”。

🚥 2.9 用户登录控制

VSFTPd 提供了丰富的登录控制选项,包括登录后客户端可以显示的信息、允许执行的指令以及一些登录中的控制选项等。

登录控制选项
###设置客户端登录VSFTPd 服务器后,服务器显示在客户端的信息被保存在“banner_fle”指定的文本文件中
banner_file=文本文件路径

###设置客户端登录 VSFTPd 服务器后客户端可以执行的指令集合。需要注意的是,如果设置了该指令,则其他没有列在其中的指令都拒绝执行,没有设置默认值
cmds_allowed

###设置客户端登录 sFTPp 服务器后客户端显示的欢迎或者其他相关信息。需要注意的是,如果设置了“banner file”.本指令将被忽略,没有设置默认值
ftpd_banner

###此选项被激活后,VSFTPd 将读取 userlist_fle 参数所指定的文件中的用户列表。当列表中的用户登录 FTP 服务器时,该用户在提示输入密码之前就被禁止了。即该用户名输入后,VSFTPd 查到该用户名在列表,VSFTPd 就直接禁止该用户,不再进行询问密码等后续步聚。默认值为 NO
userlist_enable=YES/NO

###决定禁止还是只允许由 userlist_file 指定文件中的用户登录FTP服务器。此选项在userlist_enable 选项启动后才生效。默认值为 YES,禁止文件中的用户登求,同时也不向这些用户发出输入口令的提示。设置为 NO,只允许文件中的用户登录FTP服务器
userlist_deny=YES/NO

###在VSFTPd中使用TCP_Wrappers 远程访问控制机制,默认值为YES
cp_wrappers=YES/NO

🚥 2.10 目录访问控制

vsFTPd对目录的访问也设置了一些控制选项。

目录访问控制选项
###隐藏文件的所有者和组信息,匿名用户看到的文件所有者和组全部变成FTP
hide_ids

###用于指定目录切换时显示的信息所在的文件,默认值为“message”
message_file

###设置是否显示以“.”开头的文件,默认不显示
force_dot_files

###设置当用户切换到一个目录时,是否显示目录切换信息。如果设置为“YES”,则显示“message_file”指定文件中的信息(默认显示message文件信息
dirmessage_enable

###设置是否允许用户列目录,默认值为“YES”一允许列目录
dirlist_enable

🚥 2.11 文件操作控制

控制上传和下载的参数
###设置是否允许下载。默认值为“YES”,即允许下载
download_enable

####设置匿名用户上传的文件的拥有者,默认值“root”
chown_username

###当设置为“YES”时,所有匿名用户上传的文件其拥有者被设置为“chown_usemame”指令指定的用户
chown_uploads

###默认值“NO”当设置为“YES”时FTP 客户端登录后允许使用 DELE(删除文件)、RNFR(重命名)和STOR(断点续传)指令
write_enable

🚥 2.12 新增文件权限设置

vsFTPd可以记录服务器的工作状态,包括客户端的上传、下载操作等。

log_ftp_protocol

是否记录所有的FTP命令信息。默认值为“NO”。

dual log enable

如果启用则生成两个相似的日志文件,分别为/var/log/xferlog和/var/log/vsftpd.log。前者是Wu-ftpd类型的传输日志,可以用于标准工具分析,后者是VSFTPd类型的日志。默认值为NO”。

syslogenable

设置为“YES”时将本来应记录在/var/log/vsftpdlog 的信息传给syslogd daemon,由syslogd的配置文件决定存储位置。默认值为“NO”。

🚥 2.13 日志设置

vsFTPd还可以进行传输日志文件的设置,具体配置选项如下

xferlog_std_format=YES/NO

启用后,传输日志文件将以标准 xferlog 的格式书写,如同 Wu-ftpd一样。此格式的日志文件默认为/var/log/xferlog,也可以通过xferlog_file选项来设定。

xferlog_enable=YES/NO

如果启用此选项将维护一个日志文件,用于详细记录上传和下载。默认情况下,这个日志文件是/var/log/vsftpd.log。但是也可以通过配置文件中的vsftpd_log_file选项来指定。默认值为“NO”。

🔻 三、测试vsftpd服务

  • windows shell 界面

匿名用户访问
匿名访问默认的下载文件目录地址为/var/ftp/pub。

1、先在FTP服务器上的/var/ftp/pub目录下建立一个file-test文件。

[root@ftp-server pub]# cd /var/ftp/pub
[root@ftp-server pub]# touch file-test
[root@ftp-server pub]# ll
总用量 0
-rw-r--r-- 1 root root 0 7月  16 13:47 file-test
[root@ftp-server pub]# 

2、Windows下访问vsftpd服务,使用匿名账号anonymous登录,密码为空。

1、 ls #列表显示匿名FTP服务目录

在这里插入图片描述

2、cd pub #进入匿名FTP服务匿名下载目录
在这里插入图片描述

3、mget file-test #利用mget命令下载file-test 文件
在这里插入图片描述

4、!dir + 文件名 ,显示本地已下载的文件列表
在这里插入图片描述

本地用户访问
若FTP服务器存在本地用户zyl,则vsftpd服务不需要配置即可使用本地账号zyl进行登录,登录后访问的FTP服务目录地址为该用户账号默认路径/home/zyl。

本地用户可以离开当前目录并切换到有权访问的其他目录,并在权限允许的情况下进行文件的上传与下载。

1、本地用户zyl登录在这里插入图片描述

2、创建update目录,测试上传刚才匿名用户下载的文件file-test。
在这里插入图片描述

3、检查
在这里插入图片描述
在这里插入图片描述

  • 浏览器访问ftp

匿名用户访问

ftp://192.168.181.12/

在这里插入图片描述
在这里插入图片描述

🔻 四、配置vsftpd服务禁止匿名访问、并控制用户切换目录

本地用户访问

在vsFTPd 的配置文件 /etc/vsftpd/vsftpd.conf 中,修改anonymous_enable=NO

在这里插入图片描述

创建ftpuser和设置用户密码–ftpuser

[root@ftp-server ~]# useradd ftpuser
[root@ftp-server ~]# passwd ftpuser

浏览器访问:ftp://192.168.181.12/

在这里插入图片描述
在这里插入图片描述
3、配置本地用户只能访问到家目录,不能切换到家目录之外

在vsFTPd 的配置文件 /etc/vsftpd/vsftpd.conf 中,修改内容。

###添加
local_root=/home/ftpuser
write_enable=YES

###取消注释
chroot_local_user=NO
chroot_list_enable=YES
# (default follows)
chroot_list_file=/etc/vsftpd/chroot_list

修改vim /etc/vsftpd/chroot_list,添加用户ftpuser

在这里插入图片描述

重启vsFTPd

[root@ftp-server ~]# systemctl restart vsftpd

浏览器访问:ftp://192.168.181.12/

在这里插入图片描述

只能看到家目录下/home/ftpuser/的文件

在这里插入图片描述

🔻 总结—温故知新

🟢 该章详细介绍了【Red Hat 搭建部署VSFTPd服务】,vsFTPd的相关配置,如登录环境、监听控制端口、模式、数据端口、禁止匿名访问等配置。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/756848.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【无标题】使用html2canvas和jspdf生成的pdf在不同大小的屏幕下文字大小不一样

问题:使用html2canvas和jspdf生成的pdf在不同大小的屏幕下文字大小不一样,在mac下,一切正常,看起来很舒服,但是当我把页面放在扩展屏幕下(27寸),再生成一个pdf,虽然排版一…

深入理解Windows操作系统机制(二)

我是荔园微风,作为一名在IT界整整25年的老兵,今天我们来重新审视一下Windows这个我们熟悉的不能再熟悉的系统。 我们每天都在用Windows操作系统,但是其实我们每天直接在打交道的并不是Windows操作系统的内核,而是Windows操作系统…

Linux 磁盘满了的解决方案

步骤说明: 第一步:查看磁盘情况 我们要知道哪个磁盘,我们首先要知道各个磁盘占用情况!可以使用以下命令 # 查看磁盘状态 df -h 解释一下: df: 用于显示目前在Linux系统上的文件系统的磁盘使用情况统计。 -h&…

为 GitHub 设置 SSH 密钥

1. 起因 给自己的 github 改个名,顺便就给原来 Hexo 对应的仓库也改了个名。然后发现 ubhexo clean && hexo generate && hexo deploy 失败了,报错如下: INFO Deploying: git INFO Clearing .deploy_git folder... INFO …

【淘宝API接口系列】,商品详情接口响应参数有哪些?响应示例是否满足

商品数据:淘宝提供了商品的基本信息,包括商品名称、描述、规格、价格、销量、库存等信息。此外,也可以通过淘宝提供的API接口来获取商品的图片、评价、物流信息等详细数据。 响应参数 Version: Date:2022-04-04 名称类型必须示例值描述 ite…

设计模式概述及七大原则

一、设计模式的目的 编写软件过程中,我们会面临着来自耦合性,内聚性以及可维护性,可扩展性,重用性,灵活性等多方面的挑战,设计模式是为了让程序(软件),具有更好: 代码重用性 (即&a…

微信小程序下拉刷新获取数据和触底事件刷新实现

一、下拉刷新 1.json文件 说明:开启下拉刷新,然后设置窗口的背景色,方便观看。 "enablePullDownRefresh": true,"backgroundColor":"#FFC0CB" 2. js文件 说明:重新发起请求,并显示加…

c++11 标准模板(STL)(std::basic_istream)(八)

定义于头文件 <istream> template< class CharT, class Traits std::char_traits<CharT> > class basic_istream : virtual public std::basic_ios<CharT, Traits> 类模板 basic_istream 提供字符流上的高层输入支持。受支持操作包含带格式的…

【AT89C52单片机项目】音乐播放器的设计

实验目的 用51系列单片机设计一个可以切歌的音乐播放器。 实验仪器 AT89C52单片机。 音乐播放模块。 设计要求 采用重装定时器计数方式1的初值来实现发出不同频率的声音&#xff0c;通过控制延时长度来实现不同的节拍&#xff0c;之后将音乐数据表填入&#xff0c;即可实…

【python】python汽车保险数据分析(数据+代码+报告)【独一无二】

&#x1f449;博__主&#x1f448;&#xff1a;米码收割机 &#x1f449;技__能&#x1f448;&#xff1a;C/Python语言 &#x1f449;公众号&#x1f448;&#xff1a;测试开发自动化 &#x1f449;荣__誉&#x1f448;&#xff1a;阿里云博客专家博主、51CTO技术博主 &#x…

【C++/嵌入式笔试面试八股】三、01.ARM体系架构 | 中断与异常

ARM体系架构 ARM 01.ARM产品线、 02.ARM体系结构 03.ARM硬件系统组成和运行原理🍊 直接在flash上执行较慢(NOR flash可以直接运行,NAND flash不行,按块访问),搬到内存运行,叫重定位 控制器负责取值译码 ALU负责运算 寄存器负责暂存数据 一条机器指令的执行过程,包含

SpringBoot中整合Sharding Sphere实现数据加解密/数据脱敏/数据库密文,查询明文

场景 为防止数据泄露&#xff0c;需要在插入等操作时将某表的字段在数据库中加密存储&#xff0c;在需要查询使用时明文显示。 Sharding Sphere ShardingSphere是一套开源的分布式数据库中间件解决方案组成的生态圈&#xff0c; 它由Sharding-JDBC、Sharding-Proxy和Shardi…

如何采集来赞达Lazada虾皮shopee各区域商品详情页面数据

以虾皮shopee根据ID取商品详情 API 返回值说明为例 shopee.item_get 公共参数 名称类型必须描述keyString是调用key&#xff08;必须以GET方式拼接在URL中&#xff09;注册Key和secret接入secretString是调用密钥api_nameString是API接口名称&#xff08;包括在请求地址中&am…

C++学习之static关键字小结

static在C编程中随处可见&#xff0c;但是其真实的使用方式没有总结过&#xff0c;因此在使用中经常出一些问题&#xff0c;下面就C编程中static关键字在的几种用法进行相关总结说明如下。 1、在函数内部定义带有static关键字的变量时&#xff0c;则变量是保存在静态存储区的&…

[QT编程系列-13]:QT快速学习 - 1- 初识

目录 第1章 QT的介绍 1.1 QT VS MFC 1.2 QT历史 1.3 QT的应用 1.4 QT学习方法 1.5 QT对象树 1.6 2-8定律 1.7 QT优势&#xff1a; 1.8 QT支持的平台 第2章 QT UI是各种控件对象的堆积 第3章 QT UI是各种控件的堆积 第4章 控件窗口的控制 第1章 QT的介绍 1.1 QT V…

【广州华锐互动】VR石油化工作业实训平台

VR石油化工作业实训平台是一种基于虚拟现实技术的教学、科研辅助工具&#xff0c;可以提供交互式的实验环境&#xff0c;让学生和研究人员在虚拟环境中进行实验。该系统可以帮助学生更好地理解石油炼制过程中的各个环节&#xff0c;包括原油加工、分离、精制等。 通过这种方式…

Python 数据管理

数据管理是收集、收集原始数据并将其转换为另一种格式的过程&#xff0c;以便在更短的时间内更好地理解、决策、访问和分析。 数据管理的重要性 数据管理是数据科学项目中非常重要的一步。下面的例子将解释它的重要性&#xff1a; 图书销售网站希望显示不同领域的畅销书&#…

推荐一款IDEA神级插件【Bito】而且免费!

什么是Bito&#xff1f; Bito是一款在IntelliJ IDEA编辑器中的插件&#xff0c;Bito插件是由ChatGPT团队开发的&#xff0c;它是ChatGPT团队为了提高开发效率而开发的一款工具。ChatGPT团队是一支专注于自然语言处理技术的团队&#xff0c;他们开发了一款基于GPT的自然语言处理…

轮播图,用vue来写一个简单的轮播图

轮播图&#xff0c;用vue来写一个简单的轮播图 写的很简单&#xff0c;就是一个小练习&#xff0c;哈哈哈&#xff0c;下面的几张图分别是轮播图的第一张&#xff0c;中间图&#xff0c;最后一张的效果图。 使用了vue 中的属性绑定 v-bind ,v-show 以及 事件监听 v-on 指令。 思…

NZ13:VBA给数据加密处理

【分享成果&#xff0c;随喜正能量】爱出者爱返&#xff0c;福往者福来。怀揣一颗善良的心&#xff0c;本本分分&#xff0c;坦坦荡荡&#xff0c;多去帮助需要的人&#xff0c;坚持善良做人&#xff0c;才能不负于人&#xff0c;不负自己。。 我的教程一共九套及VBA汉英手册一…