当前位置:首页>Linux>Linux 系统基线安全加固小要点

Linux 系统基线安全加固小要点

  • 2026-02-26 00:53:24
Linux 系统基线安全加固小要点

Linux服务器的基线安全,核心在前置加固。与其等基线扫描扫出一堆高危项再熬夜整改,不如在系统初始化、上线前就按标准闭环配置,从源头把风险堵死。本文聚焦前期必做的基线加固动作,覆盖安装、账户、权限、网络、内核、日志、补丁全环节,附带具体操作步骤、命令及配置修改细节,兼顾CentOS(7/8)、Ubuntu(20.04/22.04)主流发行版,做到一次配置、长期合规,彻底杜绝后期基线扫描隐患。

1、账户与认证

账户安全是基线必查项(高频告警:root远程登录、弱密码、无用账户),前期收紧配置。

禁用root远程登录
# 禁止root直接远程SSH登录,仅允许普通用户通过sudo提权,所有发行版通用# 先创建一个普通管理员账户(避免禁用root后无法登录)useradd yw# 设置用户密码passwd yw# 配置sudo权限,wheel组默认有sudo权限usermod -aG wheel yw# Ubuntu配置sudousermod -aG sudo yw# 修改SSH配置文件,禁用root远程登录vi /etc/ssh/sshd_configPermitRootLogin no  # 禁用root远程登录PermitEmptyPasswords no  # 禁止空密码登录PasswordAuthentication yes  # 暂时保留密码登录(配置完密钥后可改为no)AllowUsers yw  # 仅允许yw用户远程登录(可选,更严格,多个用户用空格分隔)systemctl restart sshd
强密码策略

配置密码复杂度、有效期、锁定策略,杜绝弱密码

# CentOS系统(通过pam模块配置)# 编辑密码策略配置文件vi /etc/pam.d/system-auth# 在文件中添加/修改以下内容(确保在password sufficient pam_unix.so行之前)# 密码复杂度:至少1位大写、1位小写、1位数字、1位特殊符号,长度≥12位password    requisite     pam_cracklib.so try_first_pass retry=3 minlen=12 dcredit=-1 ucredit=-1 lcredit=-1 ocredit=-1# 密码历史:禁止重复使用前5次密码password    sufficient    pam_unix.so sha512 shadow nullok try_first_pass use_authtok remember=5# 编辑账户有效期配置文件vi /etc/login.defs# 修改以下参数(无则添加)PASS_MAX_DAYS   90  # 密码有效期90天PASS_MIN_DAYS   7   # 密码最小修改间隔7天(防止频繁改密码绕过历史限制)PASS_WARN_AGE   7   # 密码过期前7天提醒UID_MIN         1000  # 普通用户UID从1000开始(避免与系统用户冲突)# 配置登录失败锁定(编辑sshd配置文件)vi /etc/pam.d/sshd# 添加以下内容(登录连续3次失败,锁定10分钟)auth    required    pam_tally2.so deny=3 unlock_time=600 even_deny_root root_unlock_time=600# Ubuntu系统(通过pam模块配置)# 安装密码复杂度工具(若未安装)apt install -y libpam-cracklib# 编辑密码策略配置文件vi /etc/pam.d/common-password# 添加/修改以下内容(在password [success=1 default=ignore] pam_unix.so行之前)password    requisite     pam_cracklib.so try_first_pass retry=3 minlen=12 dcredit=-1 ucredit=-1 lcredit=-1 ocredit=-1password    [success=1 default=ignore]  pam_unix.so sha512 shadow nullok try_first_pass use_authtok remember=5# 编辑账户有效期配置文件(与CentOS一致)vi /etc/login.defs# 修改参数同CentOS:PASS_MAX_DAYS 90、PASS_MIN_DAYS 7、PASS_WARN_AGE 7、UID_MIN 1000# 配置登录失败锁定(编辑sshd配置文件)vi /etc/pam.d/sshd# 添加内容同CentOS:auth    required    pam_tally2.so deny=3 unlock_time=600 even_deny_root root_unlock_time=600
清理无用账户

删除系统默认冗余账户、无业务用途账户,禁用无交互shell账户

# 查看所有系统账户(UID<1000的为系统账户,除root外,按需清理)cat /etc/passwd | cut -d: -f1,3# 删除无用系统账户(示例:删除lp、games、ftp等无业务用途账户,确认无依赖后执行)userdel -r lpuserdel -r gamesuserdel -r ftpuserdel -r nobody  # 谨慎:部分服务依赖nobody,无业务依赖再删除# 禁用无交互shell账户(无法登录,仅用于服务运行,如nfsnobody)usermod -s /sbin/nologin nfsnobody# 验证:查看账户shell,确认已改为/sbin/nologincat /etc/passwd | grep nfsnobody# 禁止非必要用户登录(临时禁用,无需删除)usermod -L test  # 锁定test用户(解锁:usermod -U test)
最小化sudo授权

禁止sudo泛授权(如ALL=(ALL) ALL),精准配置命令权限

# 编辑sudo配置文件(必须用visudo,防止语法错误导致sudo失效)visudo# 注释/删除泛授权行(若存在)以及先前指定wheel组的用户,按需求来确认是放开组还是单独配置# %wheel  ALL=(ALL)       ALL  # CentOS默认泛授权,注释掉# %sudo   ALL=(ALL:ALL) ALL  # Ubuntu默认泛授权,注释掉# 精准配置yw用户的sudo权限(示例:仅允许yw执行重启、查看日志命令)yw  ALL=(ALL)  /usr/bin/systemctl restart sshd,/usr/bin/tail,/usr/bin/less,/usr/bin/cat# 配置sudo操作日志(添加以下内容,记录所有sudo操作)Defaults    logfile="/var/log/sudo.log"Defaults    loglinelen=0# 保存退出后,验证sudo权限su - ywsudo systemctl restart sshd  # 可正常执行sudo rm -rf /# 查看sudo日志(验证日志是否正常记录)cat /var/log/sudo.log
登录安全

设置终端闲置自动登出,限制SSH登录用户与来源IP

# 编辑全局配置文件vi /etc/profile# 在文件末尾添加以下内容(闲置10分钟自动登出,单位:秒)TMOUT=600export TMOUT# 保存退出后,生效配置source /etc/profile# 验证:闲置10分钟后,终端自动断开连接`# 限制SSH登录来源IP(仅允许指定IP登录,更严格,可选)vi /etc/ssh/sshd_config# 添加以下内容(替换为允许登录的IP,多个IP用空格分隔,0.0.0.0/0表示所有IP,不限制)AllowUsers yw@192.168.1.100 yw@192.168.1.101# 重启SSH服务生效systemctl restart sshd

文件与权限

基线高频告警:关键文件权限过松、SUID/SGID程序过多,固化权限,一劳永逸

关键文件权限加固

限制普通用户对账户、sudo配置文件的读取/修改权限

# 加固账户配置文件权限chmod 644 /etc/passwd  # 所有用户可读,仅root可写chmod 000 /etc/shadow  # 仅root可读可写(普通用户无法读取密码哈希)chmod 440 /etc/sudoers  # 仅root和wheel组可读,仅root可写chmod 700 /etc/sudoers.d/  # sudo补充配置目录,仅root可操作# 加固系统配置文件权限chmod 600 /etc/ssh/sshd_config  # SSH配置文件,仅root可读写chmod 600 /etc/sysctl.conf  # 内核配置文件,仅root可读写chmod 700 /root/  # root家目录,仅root可操作# 验证权限(查看权限是否正确)ls -l /etc/passwd /etc/shadow /etc/sudoers /etc/ssh/sshd_config
锁定系统文件

用chattr命令锁定核心配置文件,防止误改、恶意篡改

# 锁定关键配置文件(添加i属性,无法修改、删除、重命名)chattr +i /etc/passwdchattr +i /etc/shadowchattr +i /etc/sudoerschattr +i /etc/ssh/sshd_configchattr +i /etc/sysctl.conf# 解锁文件(需修改文件时执行,修改完成后重新锁定)chattr -i /etc/passwd  # 解锁# 修改文件后,重新锁定chattr +i /etc/passwd# 验证文件锁定状态(查看文件属性,含i表示已锁定)lsattr /etc/passwd
默认umask设置

全局配置umask,确保新建文件/目录默认权限最小化

# 编辑全局umask配置文件vi /etc/profile# 找到umask相关行,修改为027(新建目录权限750,新建文件权限640)umask 027# 编辑用户默认umask配置文件,确保所有用户生效vi /etc/bashrcumask 027# 生效配置source /etc/profilesource /etc/bashrc# 验证umask(查看当前umask值)umask# 测试:新建目录和文件,查看权限mkdir test_dirtouch test_filels -l test_dir test_file# 应显示drwxr-x---(目录)、-rw-r--r--(文件)
清理SUID/SGID风险

SUID/SGID程序允许普通用户临时获得root权限,卸载非必要程序

# 查找系统中所有SUID/SGID程序find / -perm -4000 -o -perm -2000 2>/dev/null# 清理非必要SUID/SGID程序(卸载sudo以外的SUID程序,确认无业务依赖后执行)# 先查看程序用途,避免误删which passwd  # 查看passwd程序路径which sudo    # 查看sudo程序路径# 卸载无用SUID程序(删除find命令的SUID权限,或直接卸载程序)chmod -s /usr/bin/find  # 移除SUID权限(-s:删除SUID/SGID权限)# 若程序无用,直接卸载yum remove -y findutils  # CentOSapt remove -y findutils  # Ubuntu# 验证:重新查找SUID/SGID程序,确认无多余程序find / -perm -4000 -o -perm -2000 2>/dev/null

3、网络与端口

基线高频告警:端口开放过多、SSH弱配置、不安全协议启用,前期收敛即可避免

防火墙默认拒绝

启用防火墙,默认拒绝所有入站连接,仅放行业务必需端口

# CentOS系统(firewalld防火墙)# 启动并设置firewalld开机自启systemctl start firewalldsystemctl enable firewalld# 验证防火墙状态(确保active)systemctl status firewalld# 配置默认策略(默认拒绝入站,允许出站)firewall-cmd --permanent --set-default-zone=drop# 重新加载防火墙生效firewall-cmd --reload# 开放必需端口(开放SSH端口22、HTTP端口80、HTTPS端口443,根据业务调整)firewall-cmd --permanent --add-port=22/tcpfirewall-cmd --permanent --add-port=80/tcpfirewall-cmd --permanent --add-port=443/tcp# 重新加载生效firewall-cmd --reload# 验证开放的端口firewall-cmd --list-ports# 验证默认策略firewall-cmd --get-default-zone  # 应显示drop
# Ubuntu系统(ufw防火墙)# 启动并设置ufw开机自启ufw enable# 验证防火墙状态(确保active)ufw status# 配置默认策略(默认拒绝入站,允许出站)ufw default deny incomingufw default allow outgoing# 开放必需端口(示例:开放22、80、443端口)ufw allow 22/tcpufw allow 80/tcpufw allow 443/tcp# 验证开放的端口和策略ufw status verbose
SSH深度加固

修改默认端口、禁用密码登录、强制密钥认证

# 修改SSH默认端口(避免暴力破解,自定义端口,如2222):vi /etc/ssh/sshd_config# 找到Port参数,修改为自定义端口(如2222,建议10000-65535之间)Port 2222# 保存退出后,重启SSH服务systemctl restart sshd# 验证SSH端口(确认监听在自定义端口)netstat -tulnp | grep sshd  # 需安装net-tools:yum install -y net-tools / apt install -y net-tools# 注意:防火墙需开放自定义SSH端口(如2222),否则无法登录# CentOS:firewall-cmd --permanent --add-port=2222/tcp && firewall-cmd --reload# Ubuntu:ufw allow 2222/tcp# 配置SSH密钥登录(禁用密码登录,更安全)可选# 在本地机器(如Windows/Xshell、Linux终端)生成密钥对(无需登录服务器)ssh-keygen -t rsa -b 4096  # 生成RSA密钥对,按回车默认路径,无需设置密码(或设置密钥密码)# 生成后,本地密钥路径:~/.ssh/id_rsa(私钥,妥善保管)、~/.ssh/id_rsa.pub(公钥,上传服务器)# 将本地公钥上传到服务器yw用户家目录# 本地执行(替换yw、服务器IP、自定义SSH端口)ssh-copy-id -p 2222 yw@192.168.1.100# 输入yw用户密码,上传成功后,公钥会保存到服务器~/.ssh/authorized_keys# 服务器端配置密钥登录(确保权限正确)su - ywchmod 700 ~/.ssh/chmod 600 ~/.ssh/authorized_keys# 回到root用户,编辑SSH配置文件vi /etc/ssh/sshd_config# 修改以下参数(禁用密码登录,强制密钥登录)PasswordAuthentication noPubkeyAuthentication yesAuthorizedKeysFile      .ssh/authorized_keys  # 公钥文件路径(默认,无需修改)# 重启SSH服务生效systemctl restart sshd# 验证:本地用密钥登录(无需输入密码)ssh -p 2222 yw@192.168.1.100# 验证密码登录:用其他机器尝试密码登录,应提示“Permission denied”`# 限制SSH登录并发数(可选,防止暴力破解):# 编辑SSH配置文件vi /etc/ssh/sshd_config# 添加以下内容(限制并发登录数为3)MaxStartups 3# 重启SSH服务生效systemctl restart sshd
关闭无用网络服务

停用ftp、tftp、rsh等不安全协议,关闭ipv6(无业务需求时

# 查看当前运行的网络服务systemctl list-unit-files --type=service --state=enabled | grep -E "ftp|tftp|rsh|telnet|rpcbind"# 禁用并停止无用网络服务systemctl stop rpcbindsystemctl disable rpcbindsystemctl mask rpcbind  # 屏蔽服务,防止误启动# 批量禁用(确认无业务依赖后执行)for service in ftp tftp rsh telnet rpcbind; do  systemctl stop $service && systemctl disable $service && systemctl mask $servicedone# 关闭ipv6(无业务需求时,避免ipv6漏洞)vi /etc/sysctl.conf# 添加以下内容net.ipv6.conf.all.disable_ipv6 = 1net.ipv6.conf.default.disable_ipv6 = 1net.ipv6.conf.lo.disable_ipv6 = 1# 生效配置sysctl -p# 验证:查看ipv6是否关闭(无输出即关闭成功)ip addr | grep inet6
防扫描与洪水

通过内核参数配置,防止SYN洪水、广播ping探测

# 编辑内核配置文件vi /etc/sysctl.conf# 添加以下内核安全参数net.ipv4.tcp_syncookies = 1  # 启用SYN洪水防护net.ipv4.icmp_echo_ignore_broadcasts = 1  # 忽略广播ping(防止ping扫描)net.ipv4.icmp_ignore_bogus_error_responses = 1  # 忽略虚假ICMP错误响应net.ipv4.conf.all.log_martians = 1  # 记录异常IP包(便于审计)net.ipv4.tcp_max_syn_backlog = 1024  # 增大SYN队列长度net.ipv4.tcp_synack_retries = 2  # 减少SYN-ACK重试次数# 生效配置sysctl -p# 验证:查看内核参数是否生效(示例:查看SYN洪水防护)sysctl net.ipv4.tcp_syncookies  # 应显示1

4、内核与服务

内核参数、无用服务、安全模块

内核安全参数

优化/etc/sysctl.conf,关闭IP转发、限制内核信息泄露

# 编辑内核配置文件vi /etc/sysctl.conf# 补充以下关键参数(已有的无需重复添加)net.ipv4.ip_forward = 0  # 关闭IP转发(非路由服务器禁用)net.ipv4.conf.all.accept_source_route = 0  # 禁止源路由(防止IP欺骗)net.ipv4.conf.all.accept_redirects = 0  # 禁止ICMP重定向(防止中间人攻击)net.ipv4.conf.all.send_redirects = 0  # 禁止发送ICMP重定向kernel.kptr_restrict = 2  # 限制内核符号信息泄露(避免漏洞利用)kernel.dmesg_restrict = 1  # 限制普通用户读取dmesg日志(防止内核信息泄露)fs.protected_symlinks = 1  # 保护符号链接(防止权限绕过)fs.protected_hardlinks = 1  # 保护硬链接(防止权限绕过)# 生效配置sysctl -p# 验证:查看所有内核安全参数sysctl -a | grep -E "ip_forward|accept_source_route|kptr_restrict|dmesg_restrict"
关闭无用服务

禁用非业务必需的开机启动服务,减少攻击面

# 查看所有开机启动服务systemctl list-unit-files --type=service --state=enabled# 禁用无用服务(示例:禁用打印服务、邮件服务、蓝牙服务等)# CentOS系统systemctl stop cups postfix bluetoothsystemctl disable cups postfix bluetoothsystemctl mask cups postfix bluetooth# Ubuntu系统systemctl stop cups postfix bluetooth avahi-daemonsystemctl disable cups postfix bluetooth avahi-daemonsystemctl mask cups postfix bluetooth avahi-daemon# 批量禁用无用服务(谨慎,确认无业务依赖)# 查看无用服务列表(筛选出非业务服务)systemctl list-unit-files --type=service --state=enabled | grep -v "sshd|firewalld|network|crond"# 禁用筛选出的服务(替换service_name为实际服务名)for service in 服务名1 服务名2; do  systemctl stop $service && systemctl disable $service && systemctl mask $servicedone# 验证:查看剩余开机启动服务,确认无无用服务systemctl list-unit-files --type=service --state=enabled
启用安全模块

开启SELinux(CentOS)/AppArmor(Ubuntu),增强系统安全

# CentOS系统(SELinux)# 查看SELinux状态(默认可能为enforcing/enabled,若为disabled则开启)getenforce  # 显示Enforcing/Permissive/Disabledsestatus# 开启SELinux(若当前为Disabled)vi /etc/selinux/config# 修改SELINUX参数为permissive(宽容模式,先审计不阻断,后续可改为enforcing)SELINUX=permissiveSELINUX_TYPE=targeted  # 目标模式,仅保护关键服务# 保存退出后,重启服务器生效(必须重启)reboot# 重启后验证getenforce  # 应显示Permissive# 查看SELinux审计日志(确认无异常阻断)grep "SELinux is preventing" /var/log/audit/audit.log# 生产环境稳定后,可改为enforcing模式(强制阻断)setenforce 1  # 临时生效# 永久生效:修改/etc/selinux/config,SELINUX=enforcing,重启服务器
# Ubuntu系统(AppArmor)# 查看AppArmor状态(默认已启用)aa-status# 启用AppArmor(若未启用)systemctl start apparmorsystemctl enable apparmor# 查看AppArmor配置文件(默认已配置关键服务防护)ls /etc/apparmor.d/# 启用特定服务的AppArmor防护(示例:启用SSH服务防护)aa-enforce /etc/apparmor.d/usr.sbin.sshd# 验证:查看AppArmor运行状态,确认防护已启用aa-status | grep "profiles are in enforce mode"

5、日志与审计:全流程可追溯

基线必查:日志缺失、权限不当、无审计,

启用系统日志

确保rsyslog/syslog-ng开机自启,记录关键操作日志

# CentOS系统(rsyslog)# 启动并设置rsyslog开机自启systemctl start rsyslogsystemctl enable rsyslog# 验证日志服务状态systemctl status rsyslog# 查看日志文件(确认日志正常记录)ls -l /var/log/  # 关键日志:/var/log/messages(系统日志)、/var/log/secure(认证日志)# Ubuntu系统(默认rsyslog,部分版本用syslog-ng)# 启动并设置rsyslog开机自启systemctl start rsyslogsystemctl enable rsyslog# 验证状态systemctl status rsyslog# 查看日志文件(关键日志:/var/log/syslog(系统日志)、/var/log/auth.log(认证日志))ls -l /var/log/
开启审计服务

启动auditd,监控关键目录修改、用户登录、权限变更

# 安装auditd(若未安装)yum install -y audit  # CentOSapt install -y auditd  # Ubuntu# 启动并设置auditd开机自启systemctl start auditdsystemctl enable auditd# 验证审计服务状态systemctl status auditd# 配置审计规则(监控关键目录和操作)vi /etc/audit/rules.d/audit.rules# 添加以下审计规则(监控/etc目录修改、用户登录、sudo操作)-w /etc/ -p wa -k etc_modify  # 监控/etc目录的写、属性修改,标记为etc_modify-w /var/log/ -p wa -k log_modify  # 监控日志目录修改-w /usr/bin/sudo -p x -k sudo_exec  # 监控sudo执行-a always,exit -F arch=b64 -S execve -F euid=0 -k root_exec  # 监控root用户执行命令# 加载审计规则生效augenrules --load# 查看审计规则(确认配置生效)auditctl -l# 查看审计日志(验证日志记录)ausearch -k etc_modify  # 查看/etc目录修改日志
日志权限与轮转

限制日志权限,配置日志轮转,防止日志泄露、占满磁盘

# 日志权限加固# 仅root可读写日志文件,普通用户无权限chmod -R 600 /var/log/# 日志目录权限加固(仅root可操作)chmod 700 /var/log/# 验证权限ls -l /var/log/`# 配置日志轮转(防止日志占满磁盘)# 编辑日志轮转配置文件vi /etc/logrotate.conf# 修改以下参数(根据需求调整)weekly  # 每周轮转一次rotate 4  # 保留4份轮转日志create  # 轮转后创建新日志文件dateext  # 日志文件名添加日期后缀(便于区分)compress  # 压缩旧日志(节省磁盘空间)# 为关键日志配置单独轮转规则vi /etc/logrotate.d/rsyslog# 添加以下内容(针对/var/log/secure、/var/log/messages)/var/log/secure/var/log/messages {    daily    rotate 7    compress    missingok    notifempty    create 0600 root root}# 验证日志轮转(手动执行一次轮转测试)logrotate -f /etc/logrotate.conf# 查看轮转后的日志(确认生成压缩旧日志)ls -l /var/log/ | grep .gz`

自动化加固与前置核查

避免人工遗漏,用工具与脚本实现一键加固、前置扫描,所有发行版通用。(脚本不够完善,视情况而定吧~~没到无脑执行的地步)

1、脚本化加固
# 创建自动化加固脚本(示例:linux_baseline_harden.sh)vi linux_baseline_harden.sh# 脚本内容(复制以下内容,根据发行版调整命令,添加执行权限)#!/bin/bash# 定义颜色(便于查看输出)red='\033[0;31m'green='\033[0;32m'yellow='\033[1;33m'clear='\033[0m'echo -e "${yellow}=== 开始执行Linux基线前置加固 ===${clear}"# 1. 系统初始更新echo -e "${green}1. 执行系统安全更新...${clear}"if [ -f /etc/redhat-release ]; then  # CentOS系统  yum clean all && yum makecache && yum update -y && yum install -y net-tools rkhunter auditelif [ -f /etc/lsb-release ]; then  # Ubuntu系统  apt update && apt upgrade -y && apt install -y net-tools rkhunter auditd libpam-cracklibfi# 2. 创建普通管理员账户echo -e "${green}2. 创建普通管理员账户yw...${clear}"useradd ywecho "yw@123456!" | passwd --stdin yw  # 密码可自定义,建议合规密码if [ -f /etc/redhat-release ]; then  usermod -aG wheel ywelif [ -f /etc/lsb-release ]; then  usermod -aG sudo ywfi# 3. 禁用root远程登录、修改SSH端口(后续可补充其他SSH加固步骤)echo -e "${green}3. SSH安全加固...${clear}"sed -i 's/^PermitRootLogin yes/PermitRootLogin no/' /etc/ssh

最新文章

随机文章

基本 文件 流程 错误 SQL 调试
  1. 请求信息 : 2026-02-28 18:05:32 HTTP/2.0 GET : https://f.mffb.com.cn/a/476966.html
  2. 运行时间 : 0.146912s [ 吞吐率:6.81req/s ] 内存消耗:4,715.77kb 文件加载:140
  3. 缓存信息 : 0 reads,0 writes
  4. 会话信息 : SESSION_ID=c5bbdf0a930f0696f9ea6f43deece9a0
  1. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/public/index.php ( 0.79 KB )
  2. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/autoload.php ( 0.17 KB )
  3. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/composer/autoload_real.php ( 2.49 KB )
  4. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/composer/platform_check.php ( 0.90 KB )
  5. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/composer/ClassLoader.php ( 14.03 KB )
  6. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/composer/autoload_static.php ( 4.90 KB )
  7. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/helper.php ( 8.34 KB )
  8. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-validate/src/helper.php ( 2.19 KB )
  9. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/helper.php ( 1.47 KB )
  10. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/stubs/load_stubs.php ( 0.16 KB )
  11. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Exception.php ( 1.69 KB )
  12. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-container/src/Facade.php ( 2.71 KB )
  13. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/deprecation-contracts/function.php ( 0.99 KB )
  14. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/polyfill-mbstring/bootstrap.php ( 8.26 KB )
  15. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/polyfill-mbstring/bootstrap80.php ( 9.78 KB )
  16. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/var-dumper/Resources/functions/dump.php ( 1.49 KB )
  17. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-dumper/src/helper.php ( 0.18 KB )
  18. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/var-dumper/VarDumper.php ( 4.30 KB )
  19. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/App.php ( 15.30 KB )
  20. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-container/src/Container.php ( 15.76 KB )
  21. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/psr/container/src/ContainerInterface.php ( 1.02 KB )
  22. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/provider.php ( 0.19 KB )
  23. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Http.php ( 6.04 KB )
  24. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/helper/Str.php ( 7.29 KB )
  25. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Env.php ( 4.68 KB )
  26. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/common.php ( 0.03 KB )
  27. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/helper.php ( 18.78 KB )
  28. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Config.php ( 5.54 KB )
  29. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/app.php ( 0.95 KB )
  30. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/cache.php ( 0.78 KB )
  31. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/console.php ( 0.23 KB )
  32. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/cookie.php ( 0.56 KB )
  33. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/database.php ( 2.48 KB )
  34. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/facade/Env.php ( 1.67 KB )
  35. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/filesystem.php ( 0.61 KB )
  36. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/lang.php ( 0.91 KB )
  37. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/log.php ( 1.35 KB )
  38. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/middleware.php ( 0.19 KB )
  39. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/route.php ( 1.89 KB )
  40. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/session.php ( 0.57 KB )
  41. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/trace.php ( 0.34 KB )
  42. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/view.php ( 0.82 KB )
  43. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/event.php ( 0.25 KB )
  44. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Event.php ( 7.67 KB )
  45. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/service.php ( 0.13 KB )
  46. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/AppService.php ( 0.26 KB )
  47. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Service.php ( 1.64 KB )
  48. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Lang.php ( 7.35 KB )
  49. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/lang/zh-cn.php ( 13.70 KB )
  50. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/initializer/Error.php ( 3.31 KB )
  51. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/initializer/RegisterService.php ( 1.33 KB )
  52. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/services.php ( 0.14 KB )
  53. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/service/PaginatorService.php ( 1.52 KB )
  54. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/service/ValidateService.php ( 0.99 KB )
  55. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/service/ModelService.php ( 2.04 KB )
  56. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-trace/src/Service.php ( 0.77 KB )
  57. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Middleware.php ( 6.72 KB )
  58. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/initializer/BootService.php ( 0.77 KB )
  59. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/Paginator.php ( 11.86 KB )
  60. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-validate/src/Validate.php ( 63.20 KB )
  61. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/Model.php ( 23.55 KB )
  62. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/Attribute.php ( 21.05 KB )
  63. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/AutoWriteData.php ( 4.21 KB )
  64. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/Conversion.php ( 6.44 KB )
  65. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/DbConnect.php ( 5.16 KB )
  66. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/ModelEvent.php ( 2.33 KB )
  67. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/RelationShip.php ( 28.29 KB )
  68. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/contract/Arrayable.php ( 0.09 KB )
  69. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/contract/Jsonable.php ( 0.13 KB )
  70. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/contract/Modelable.php ( 0.09 KB )
  71. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Db.php ( 2.88 KB )
  72. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/DbManager.php ( 8.52 KB )
  73. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Log.php ( 6.28 KB )
  74. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Manager.php ( 3.92 KB )
  75. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/psr/log/src/LoggerTrait.php ( 2.69 KB )
  76. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/psr/log/src/LoggerInterface.php ( 2.71 KB )
  77. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Cache.php ( 4.92 KB )
  78. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/psr/simple-cache/src/CacheInterface.php ( 4.71 KB )
  79. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/helper/Arr.php ( 16.63 KB )
  80. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/cache/driver/File.php ( 7.84 KB )
  81. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/cache/Driver.php ( 9.03 KB )
  82. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/contract/CacheHandlerInterface.php ( 1.99 KB )
  83. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/Request.php ( 0.09 KB )
  84. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Request.php ( 55.78 KB )
  85. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/middleware.php ( 0.25 KB )
  86. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Pipeline.php ( 2.61 KB )
  87. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-trace/src/TraceDebug.php ( 3.40 KB )
  88. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/middleware/SessionInit.php ( 1.94 KB )
  89. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Session.php ( 1.80 KB )
  90. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/session/driver/File.php ( 6.27 KB )
  91. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/contract/SessionHandlerInterface.php ( 0.87 KB )
  92. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/session/Store.php ( 7.12 KB )
  93. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Route.php ( 23.73 KB )
  94. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/RuleName.php ( 5.75 KB )
  95. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/Domain.php ( 2.53 KB )
  96. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/RuleGroup.php ( 22.43 KB )
  97. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/Rule.php ( 26.95 KB )
  98. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/RuleItem.php ( 9.78 KB )
  99. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/route/app.php ( 1.72 KB )
  100. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/facade/Route.php ( 4.70 KB )
  101. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/dispatch/Controller.php ( 4.74 KB )
  102. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/Dispatch.php ( 10.44 KB )
  103. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/controller/Index.php ( 4.81 KB )
  104. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/BaseController.php ( 2.05 KB )
  105. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/facade/Db.php ( 0.93 KB )
  106. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/connector/Mysql.php ( 5.44 KB )
  107. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/PDOConnection.php ( 52.47 KB )
  108. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/Connection.php ( 8.39 KB )
  109. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/ConnectionInterface.php ( 4.57 KB )
  110. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/builder/Mysql.php ( 16.58 KB )
  111. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/Builder.php ( 24.06 KB )
  112. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/BaseBuilder.php ( 27.50 KB )
  113. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/Query.php ( 15.71 KB )
  114. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/BaseQuery.php ( 45.13 KB )
  115. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/TimeFieldQuery.php ( 7.43 KB )
  116. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/AggregateQuery.php ( 3.26 KB )
  117. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/ModelRelationQuery.php ( 20.07 KB )
  118. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/ParamsBind.php ( 3.66 KB )
  119. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/ResultOperation.php ( 7.01 KB )
  120. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/WhereQuery.php ( 19.37 KB )
  121. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/JoinAndViewQuery.php ( 7.11 KB )
  122. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/TableFieldInfo.php ( 2.63 KB )
  123. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/Transaction.php ( 2.77 KB )
  124. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/log/driver/File.php ( 5.96 KB )
  125. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/contract/LogHandlerInterface.php ( 0.86 KB )
  126. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/log/Channel.php ( 3.89 KB )
  127. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/event/LogRecord.php ( 1.02 KB )
  128. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/Collection.php ( 16.47 KB )
  129. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/facade/View.php ( 1.70 KB )
  130. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/View.php ( 4.39 KB )
  131. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Response.php ( 8.81 KB )
  132. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/response/View.php ( 3.29 KB )
  133. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Cookie.php ( 6.06 KB )
  134. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-view/src/Think.php ( 8.38 KB )
  135. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/contract/TemplateHandlerInterface.php ( 1.60 KB )
  136. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-template/src/Template.php ( 46.61 KB )
  137. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-template/src/template/driver/File.php ( 2.41 KB )
  138. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-template/src/template/contract/DriverInterface.php ( 0.86 KB )
  139. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/runtime/temp/067d451b9a0c665040f3f1bdd3293d68.php ( 11.98 KB )
  140. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-trace/src/Html.php ( 4.42 KB )
  1. CONNECT:[ UseTime:0.000527s ] mysql:host=127.0.0.1;port=3306;dbname=f_mffb;charset=utf8mb4
  2. SHOW FULL COLUMNS FROM `fenlei` [ RunTime:0.000779s ]
  3. SELECT * FROM `fenlei` WHERE `fid` = 0 [ RunTime:0.000340s ]
  4. SELECT * FROM `fenlei` WHERE `fid` = 63 [ RunTime:0.000266s ]
  5. SHOW FULL COLUMNS FROM `set` [ RunTime:0.000561s ]
  6. SELECT * FROM `set` [ RunTime:0.000230s ]
  7. SHOW FULL COLUMNS FROM `article` [ RunTime:0.000495s ]
  8. SELECT * FROM `article` WHERE `id` = 476966 LIMIT 1 [ RunTime:0.008500s ]
  9. UPDATE `article` SET `lasttime` = 1772273132 WHERE `id` = 476966 [ RunTime:0.004038s ]
  10. SELECT * FROM `fenlei` WHERE `id` = 67 LIMIT 1 [ RunTime:0.001968s ]
  11. SELECT * FROM `article` WHERE `id` < 476966 ORDER BY `id` DESC LIMIT 1 [ RunTime:0.000503s ]
  12. SELECT * FROM `article` WHERE `id` > 476966 ORDER BY `id` ASC LIMIT 1 [ RunTime:0.003510s ]
  13. SELECT * FROM `article` WHERE `id` < 476966 ORDER BY `id` DESC LIMIT 10 [ RunTime:0.000968s ]
  14. SELECT * FROM `article` WHERE `id` < 476966 ORDER BY `id` DESC LIMIT 10,10 [ RunTime:0.016836s ]
  15. SELECT * FROM `article` WHERE `id` < 476966 ORDER BY `id` DESC LIMIT 20,10 [ RunTime:0.042050s ]
0.148703s