尧图网络 高端网站定制 · 原创设计
免费咨询热线
400-888-6620
免费获取方案
网络安全赛题加固题避坑:参数生效与取证流量分析
简介《2021年全国职业院校技能大赛网络安全竞赛试题》面向职业院校网络安全竞赛选手、指导教师及备赛人员围绕服务器与Web服务的安全加固、数据库权限管理、流量完整性保护、事件监控和防火墙策略等实战考点组织内容适合赛前系统梳理与查漏补缺。整包仅含1个docx文件约119KB体积轻便便于在本地快速打开、检索和打印文档以任务化方式呈现赛题要点读者可据此对照Windows与Linux双平台的密码及登录策略、MySQL安全运行与权限收敛、HTTP到HTTPS重定向、审核策略配置、SSH/VSFTPD/IIS服务加固以及高危端口封禁等内容。目前已有959人学习。对备赛者而言可借助它理解赛题任务分解、核对配置项覆盖范围、整理易错点与知识短板也可作为网络安全实训课堂的案例素材。1. 加固题才是分差所在一份网络安全赛题里那些「改完不生效」的坑做这份赛题之前我以为网络安全技能大赛的分数大头在 B 模块的渗透和取证。真正打完才发现内存取证和流量分析反而好拿分——线索客观、答案唯一找到了就是找到了反倒是 A 模块那些看起来最简单的加固题我在密码策略、会话超时、防火墙规则顺序上连续出错丢了将近三成分。加固题的技术难度并不高难点全在「改完生效了吗」配置文件改了但服务没重启服务重启了但端口没放行防火墙规则用-A追加到了默认 ACCEPT 后面永远不命中。下面按 A、B 两个模块的顺序把每条任务拆成能照着敲的步骤顺手写清楚评分点在哪里、参数为什么这么填。2. 登录与账户加固Linux 与 Windows 两边的对照做法这一章处理 A-1 任务的全部内容。这类题的特点是「一句话对应一个可验证的状态」判分的人不看你敲了什么只看系统当前状态是否达标。所以每改一处都要有一个能自证的命令或者界面不能凭感觉。2.1 密码策略改 PASS_MIN_LEN 只是第一步赛题要求最小密码长度不少于 16 个字符。Linux 侧的官方答案在/etc/login.defs的PASS_MIN_LEN字段Windows 侧在「本地安全策略 → 账户策略 → 密码策略 → 最小密码长度」。先看 Linux。login.defs是 PAM 体系的全局默认值文件改这里没问题但很多人改完发现新建用户还是能设短密码原因是从 RHEL 7 / CentOS 7 之后实际的密码强度校验由pam_pwquality模块接管login.defs里的PASS_MIN_LEN在很多发行版上已经不再被读取。稳妥做法是两处都改。# 1. 全局默认值改 PASS_MIN_LEN 16 sed -i s/^PASS_MIN_LEN.*/PASS_MIN_LEN 16/ /etc/login.defs # 2. 现代发行版真正的校验点pwquality 的 minlen sed -i s/^#\?minlen.*/minlen 16/ /etc/security/pwquality.conf # 3. 验证新建一个临时用户并尝试设置 8 位密码应当被拒绝 useradd pwtest echo Abc12345 | passwd --stdin pwtest # 预期失败BAD PASSWORD userdel -r pwtestpasswd --stdin在部分发行版上被禁用了如果这条命令本身报错就改用echo Abc12345 | passwd pwtest交互式喂入。验证这一步别省它是唯一能证明「策略真的生效了」的动作光看配置文件不叫验证。Windows 侧走图形界面最稳WinR输入secpol.msc账户策略 → 密码策略 → 最小密码长度改成 16确定后系统会提示需要刷新策略直接执行gpupdate /force。如果赛题环境里机器是域成员本地策略会被域策略覆盖这一点要提前确认——真遇到了就得改域组策略而不是本地。想用命令行做一次留档可以用secedit导出当前策略再 grep# 导出当前本地安全策略到临时文件便于核对和截图留证 secedit /export /cfg C:\secpol_bak.inf findstr /i MinimumPasswordLength C:\secpol_bak.infMinimumPasswordLength 16出现在输出里这条才算闭环。截图也是同理赛题里明确要求截图的项一定要在改完之后截改之前的界面交上去等于没做。2.2 登录提示与远程会话超时Banner 和两个参数的乘积登录提示分本地和远程两条线Linux 上对应/etc/issue和 sshd 的Banner指令Windows 上对应安全选项里的「交互式登录试图登录的用户的消息标题」和「消息文本」。Linux 侧的做法# 本地 tty 登录前的提示写在 /etc/issue echo For authorized users only /etc/issue # 远程 SSH 登录提示需要两个动作建文件 在 sshd_config 里指向它 mkdir -p /etc/ssh echo For authorized users only /etc/ssh/banner chmod 644 /etc/ssh/banner # 权限不对 sshd 会拒绝启动 # 在 sshd_config 里加一行注意不要写成重复项 grep -q ^Banner /etc/ssh/sshd_config \ sed -i s#^Banner.*#Banner /etc/ssh/banner# /etc/ssh/sshd_config \ || echo Banner /etc/ssh/banner /etc/ssh/sshd_config sshd -t systemctl restart sshd # 先语法校验再重启这里有个容易被忽略的细节/etc/issue只在本地终端登录时显示/etc/issue.net才是给 telnet/rlogin 一类服务用的SSH 走的是Banner指令指向的文件三个不是一回事。赛题要求「用户登录系统时有提示信息」本地和远程都要覆盖到只改一处会被扣分。Windows 侧对应「本地安全策略 → 本地策略 → 安全选项」里那两条标题和文本分别填。题目原文写作「交换式登录」实际界面里是「交互式登录」按关键字在列表里找就行。远程非活动会话超时要求小于等于 5 分钟。Linux 的ClientAliveInterval和ClientAliveCountMax分工是前者控制每隔多少秒发一次探测后者控制连续多少次探测无响应就断开。真正决定断开时间的是两者乘积这是最容易出问题的一处。# 60 秒探测一次连续 5 次无响应断开合计 300 秒 5 分钟 sed -i s/^#\?ClientAliveInterval.*/ClientAliveInterval 60/ /etc/ssh/sshd_config sed -i s/^#\?ClientAliveCountMax.*/ClientAliveCountMax 5/ /etc/ssh/sshd_config sshd -t systemctl restart sshd # 验证从另一台机器 ssh 上去什么都不敲计时看是否 5 分钟断开如果只把ClientAliveInterval设成 300 而不动ClientAliveCountMax默认值是 3乘积 900 秒十五分钟才断直接超时。这个坑我踩过血泪经验两个参数是一组任何只改一个的写法都要怀疑一下。Windows 侧走gpedit.msc→ 计算机配置 → 管理模板 → Windows 组件 → 远程桌面服务 → 远程桌面会话主机 → 会话时间限制把「设置活动但空闲的远程桌面服务会话的时间限制」启用并设为 5 分钟。或者用tsconfig.msc打开 RDP-Tcp 属性在「会话」页里改「空闲会话限制」和「断开会话限制」两条路径效果一致赛题原文给的是后者按这个来。2.3 登录时段与网络访问一条 net user 和一个权限分配设置 user1 只能在周一至周五 9:00 到 18:00 登录本地账户用一条命令就能解决# M-F 表示周一到周五时间用 24 小时制中间不加空格 net user user1 /time:M-F,9:00-18:00 # 验证输出里会有一行「允许的登录时间」形如 M-F 9:00 AM-6:00 PM net user user1几个实操细节时间是 24 小时制但允许写9:00系统会理解为上午九点如果写成09:00在部分版本上会被拒。跨天的时间段比如 22:00 到次日 06:00不能写成一个区间要拆成两段或者用Su-Sa的全天写法绕开。命令执行成功返回「命令成功完成」返回「系统错误 5」就是没提权右键管理员运行。域环境下的写法不一样要在「Active Directory 用户和计算机」里双击用户 → 账户标签 → 登录时间图形化框选最小粒度是一小时。赛题里两种都提到了实际比赛环境是单机就先用net user快且不容易点错。「只允许管理员账号从网络访问本机」这一条路径是gpedit.msc→ 计算机配置 → Windows 设置 → 安全设置 → 本地策略 → 用户权限分配 → 从网络访问此计算机。默认列表里通常有Everyone、Users、Power Users、Administrators等把除Administrators之外的条目全部删除。注意是「删除」而不是「拒绝」删除后这些组就不再具备该权限。一个补充判断如果赛题同时要求「拒绝从网络访问此计算机」里保留某些组那是另一条策略SeDenyNetworkLogonRight拒绝优先级高于允许两条都配的时候行为容易反直觉优先看题目要求配哪一条别两条一起加。2.4 数据库加固mysql 用户运行、改名、MD5 与最小权限A-2 任务全部在 Linux 侧五条要求分别对应配置文件、库、账号、密码和权限。逐条过。第一条以普通账户 mysql 运行服务。修改/etc/my.cnf在[mysqld]段里加usermysql# 确认 mysql 用户和组存在不存在就先建 id mysql || groupadd mysql useradd -r -g mysql -s /sbin/nologin mysql # 在 [mysqld] 段落下写入 user 参数 sed -i /^\[mysqld\]/a usermysql /etc/my.cnf # 数据目录属主必须是 mysql否则服务起不来 chown -R mysql:mysql /var/lib/mysql systemctl restart mysqld # 验证看进程的实际运行用户应该是 mysql 而不是 root ps -o user,pid,cmd -C mysqldps那一行的第一列如果是mysql这条就达标了。很多人改完配置忘记chown服务直接起不来赛场上再排查就浪费时间。第二条删除默认数据库 test。注意 MySQL 5.7 之后默认不再创建 test 库先确认再删SHOW DATABASES; DROP DATABASE IF EXISTS test;第三条到第五条集中处理账号体系一并给出-- 5.7 及以前可以直接改 mysql.user 表 UPDATE mysql.user SET userSuperRoot WHERE userroot; UPDATE mysql.user SET passwordMD5(Pssw0rd1!) WHERE useruser1; FLUSH PRIVILEGES; -- 8.0 及以后mysql.user 是视图不能直接 UPDATE必须用专用语句 RENAME USER rootlocalhost TO SuperRootlocalhost; ALTER USER user1localhost IDENTIFIED WITH mysql_native_password BY Pssw0rd1!; -- 第五条最小权限两版本通用 GRANT SELECT, INSERT, DELETE, UPDATE ON testdb.* TO user1localhost; FLUSH PRIVILEGES;这里必须说清楚版本差异否则照抄博客一定翻车。MySQL 8.0 把mysql.user改成了视图UPDATE会直接报ERROR 1288视图不可更新password字段也被authentication_string取代。8.0 里MD5()函数本身还在能返回 32 位十六进制串但要写进账号密码得配合IDENTIFIED WITH mysql_native_password AS或者ALTER USER ... IDENTIFIED BY。赛题环境大概率是 5.x用前一种写法最快但心里要装着后一种企业环境里 8.0 已经很常见了。最后一条权限语句有个细节ON testdb.*表示库级所有表TO user1localhost里的主机部分要和账号实际来源匹配。写成%能连但不符合最小权限原则赛题明确写localhost就按localhost给。3. 服务与边界加固SSH、VSFTPD、IIS 和防火墙的参数级处理A-3 到 A-6 是这一章的范围任务密度最高也最容易因为「改了一半」丢分。判断标准只有一个服务重启后用外部视角重新连一次行为符合预期。3.1 SSH端口改 2222 与禁止 root 的三处联动改端口本身两行就够但只改sshd_config大概率会把自己锁在外面因为还有两道门要一起开。# 1. 改端口把注释掉的 Port 22 改成 2222没有就追加 sed -i s/^#\?Port .*/Port 2222/ /etc/ssh/sshd_config # 2. 禁止 root 远程登录 sed -i s/^#\?PermitRootLogin .*/PermitRootLogin no/ /etc/ssh/sshd_config # 3. 语法校验通过再重启 sshd -t systemctl restart sshd # 4. 放行新端口firewalld 环境 firewall-cmd --permanent --add-port2222/tcp firewall-cmd --reload # 5. SELinux 强制模式下必须给 2222 打上 ssh 端口标签否则 sshd 绑定失败 semanage port -a -t ssh_port_t -p tcp 2222 semanage port -l | grep ssh_port_t第 5 步是最容易被忽略的。SELinux 是 Enforcing 时sshd 只能监听被标记为ssh_port_t的端口改端口不 semanage 的结果是systemctl restart sshd直接失败报Bind to port 2222 on 0.0.0.0 failed: Permission denied。遇到这个报错别再折腾配置文件先看getenforce和/var/log/audit/audit.log。操作顺序也有讲究先用一个新终端ssh -p 2222 userhost验证能连上再关掉旧会话。上来就把旧连接断掉端口又没通就只能去控制台救了。3.2 VSFTPD五个超时参数里只有一个对应「无操作」赛题要求「禁止匿名用户上传」和「无任何操作的超时时间为 5 分钟」。第一条一行配置第二条要看清参数语义。# 禁止匿名登录关闭后匿名上传自然也不成立 sed -i s/^anonymous_enable.*/anonymous_enableNO/ /etc/vsftpd/vsftpd.conf # 无命令操作超时单位秒5 分钟 300 sed -i s/^#\?idle_session_timeout.*/idle_session_timeout300/ /etc/vsftpd/vsftpd.conf grep -q ^idle_session_timeout /etc/vsftpd/vsftpd.conf || echo idle_session_timeout300 /etc/vsftpd/vsftpd.conf systemctl restart vsftpd四个超时参数的真实含义差别很大混用就等于没改参数作用对象赛题「无任何操作」是否对应建议值connect_timeout主动模式下建立数据连接的等待时长否60accept_timeout被动模式下建立数据连接的等待时长否60data_connection_timeout数据连接已建立但无数据传输的时长部分对应300idle_session_timeout控制连接空闲、无任何命令的时长是300idle_session_timeout才是「用户挂着不操作」对应的那一个。data_connection_timeout管的是传输卡住两者一起设成 300 更保险但主判分点是前者。顺带提一句赛题原文给的参考配置里写的是idle_session_timeout600那是 10 分钟和题干要求的 5 分钟对不上。这种情况以题干为准别照抄参考值——这是我在企业加固里也常提醒同事的一点文档和需求冲突时需求优先。3.3 IIS日志字段裁到 5 个并发连接数设 1000IIS 加固两条要求都在图形界面里点得到但字段名要对得上。日志这条IIS 管理器 → 选中站点 → 右侧「日志」→ 格式选 W3C → 点击「选择字段」只勾选日期date、时间time、客户端 IP 地址c-ip、用户名cs-username、方法cs-method其余全部取消。判断依据是 W3C 扩展日志格式的字段名赛题描述里说的「日期、时间、客户端 IP、用户名、方法」对应的就是这五个标识符勾错一个字段日志里就少一列。并发连接数这条IIS 管理器 → 站点 → 右键「高级设置」→ 行为 → 最大并发连接数改成 1000。改完重启站点或应用池。这一步要区分清楚「最大并发连接数」站点级限制和「应用程序池队列长度」请求排队上限赛题说的是前者。两个都在高级设置里名字接近点错了改的是另一个东西。3.4 HTTP 到 HTTPSURL 重写规则与三个必查项A-3 这条要求「仅使用 HTTPS 协议访问网站」实现方式是在 IIS 上装 URL Rewrite 模块然后在站点的web.config里写重写规则。configuration system.webServer rewrite rules rule nameForceHTTPS stopProcessingtrue match url(.*) / conditions !-- 核心条件当前请求不是 HTTPS 才重定向缺了这句会无限循环 -- add input{HTTPS} pattern^OFF$ / /conditions action typeRedirect urlhttps://{HTTP_HOST}/{R:1} redirectTypePermanent / /rule /rules /rewrite /system.webServer /configuration参数含义match url(.*)捕获全部路径{HTTPS}是服务器变量值为ON/OFF{R:1}引用捕获组保证原始路径被带过去redirectTypePermanent对应 301。三个必查项一是站点必须先绑定好 443 端口并挂上证书证书的 CN 要和访问用的域名一致赛题里给的那个测试域名我这里用example.com代指否则浏览器报证书错误重定向本身却是通的二是 80 端口的绑定不能删删了就没法接收 HTTP 请求做跳转只能靠用户在地址栏手敲 https三是规则写完要清一次浏览器缓存301 是永久重定向浏览器会记住改错了很难立刻看到效果。3.5 防火墙445/23 端口、禁 ping 与 SSH 白名单A-6 是整份赛题里最容易因为规则顺序丢分的一节。先看 Windows 侧两条封端口# 禁用 445SMB入站勒索病毒常用的横向入口 netsh advfirewall firewall add rule nameBlock_TCP_445 dirin actionblock protocolTCP localport445 # 禁用 23Telnet入站 netsh advfirewall firewall add rule nameBlock_TCP_23 dirin actionblock protocolTCP localport23 # 验证列出规则确认存在且已启用 netsh advfirewall firewall show rule nameBlock_TCP_445Linux 侧封 23 端口一行搞定但要用-I而不是-A# -I 插入到链首保证先于任何 ACCEPT 规则命中 iptables -I INPUT -p tcp --dport 23 -j DROP # 验证查看规则编号确认 DROP 在 ACCEPT 之前 iptables -L INPUT -n --line-numbers禁 ping 有三种做法适用场景不同选一个用别三个一起上造成互相干扰方法命令生效范围是否持久临时内核参数echo 0 /proc/sys/net/ipv4/icmp_echo_ignore_all全局重启失效永久内核参数/etc/sysctl.conf加net.ipv4.icmp_echo_ignore_all1全局持久需sysctl -p防火墙丢弃iptables -I INPUT -p icmp --icmp-type 8 -j DROP受规则顺序影响需iptables-save赛题里写了「在不改默认配置的情况下」用防火墙方案那就按第三种来。注意--icmp-type 8是 echo request只丢请求不丢响应这样本机主动 ping 别人仍然是通的符合「禁止别人 ping 通」的语义。最后一条 SSH 白名单赛题给的参考命令只有一条 ACCEPTiptables -A INPUT -s 172.16.1.1 -p tcp --dport 22 -j ACCEPT只写这一条是无效的——因为 INPUT 链的默认策略通常是 ACCEPT没有被上面规则匹配到的包照样放行。完整写法必须补一条 DROP# 先放行指定源再拒绝其余顺序不能反 iptables -A INPUT -s 172.16.1.1 -p tcp --dport 22 -j ACCEPT iptables -A INPUT -p tcp --dport 22 -j DROP # 持久化否则重启就没了 iptables-save /etc/sysconfig/iptables执行前先想好怎么保命用at挂一条十分钟后清空规则的定时任务或者确保自己有控制台权限。这条规则一旦生效而你的来源 IP 不在白名单里下一次连接就进不去了这是最经典的「把自己锁在门外」。审核策略那条A-4放在这里一并说因为命令行比点界面快# 登录事件成功/失败 auditpol /set /subcategory:登录 /success:enable /failure:enable # 特权使用、策略更改、进程跟踪 auditpol /set /subcategory:特权使用 /success:enable auditpol /set /subcategory:审核策略更改 /success:enable /failure:enable auditpol /set /subcategory:进程跟踪 /success:enable /failure:enable # 验证 auditpol /get /category:*子类别的中文名跟系统语言绑定英文环境下要换成Logon、Privilege Use、Audit Policy Change、Process Tracking。命令返回「命令成功完成」后用auditpol /get确认状态列是「成功和失败」而不是「无审核」。4. 取证与流量分析内存镜像、pcap 和渗透链路的还原顺序B 模块的三条题链有明显的先后依赖顺序错了会反复返工。我的习惯是先做流量、再做内存、最后做渗透因为流量题最依赖工具熟练度进入状态最快。4.1 内存取证先认镜像再找四样东西拿到内存镜像第一件事不是急着跑插件而是识别 profile猜错 profile 所有插件都会报Invalid profile。# 第一步识别镜像对应的系统版本输出里的 Suggested Profile(s) 就是答案 vol.py -f /root/mem.raw imageinfo # 第二步用识别出的 profile 提取用户 hashWin 环境示例 vol.py -f /root/mem.raw --profileWin2008R2SP1x64 hashdump # 输出形如 admin:1000:aad3b...:b7569...::: # 冒号分隔的第三、四段是 LM 和 NTLM hash取第四段进 hashcat破解 6 位密码用掩码攻击最快比字典命中率高得多# -m 1000 表示 NTLM-a 3 是掩码模式?d 代表一位数字 hashcat -m 1000 -a 3 ntlm.txt ?d?d?d?d?d?d如果题目没说字符集先试全数字几秒钟出结果没出来再换?l?l?l?l?l?l全小写。这一步是整份赛题里唯一可能需要等的地方别在赛场上瞎猜。剩下三个问题对应三个插件IP 和主机名看netscan它会列出所有连接和监听端口本地地址那一列就是 IP主机名可以用envars过滤COMPUTERNAME或者systeminfo直接读注册表里的机器名。挖矿进程的矿池地址同样在netscan里找——特征很明显对外连接指向 3333、5555、7777、14444 这类常见矿池端口进程名往往是一串随机字符。注册的服务名用svcscan重点看SERVICE_NAME是无意义字符串、BINARY_PATH_NAME指向临时目录或者不存在的路径那些条目。浏览器搜索关键词稍微麻烦一点chromehistory插件直接读 Chrome 的 History 库输出的 URL 里带q参数的就是搜索词如果没有 Chrome 就换iehistory或者用filescan定位 History 文件再dumpfiles出来单独解析。4.2 pcap 分析把 FTP 会话拆成时间线流量题的五问是一条链账号密码 → 登录时间 → 第一条命令 → 下载的文件名 → 文件内容。用 Wireshark 图形界面能做但用tshark命令行一次性打出来效率高得多。# 1. 只看 FTP 协议的命令和响应不拉无关流量 tshark -r capture.pcapng -Y ftp -T fields \ -e frame.number -e frame.time -e ip.src -e ftp.request.command -e ftp.request.arg # 2. 精确定位登录成功的会话230 是登录成功的响应码 tshark -r capture.pcapng -Y ftp.response.code 230 -T fields \ -e frame.number -e frame.time -e ip.src -e ip.dst # 3. 列出所有命令按时间排序后第一条就是登录后的首条操作 tshark -r capture.pcapng -Y ftp.request.command -T fields \ -e frame.time -e ftp.request.command -e ftp.request.arg关键判断在于「成功」二字。pcap 里往往有多次登录尝试前面几次是530 Login incorrect只有一条是230 Login successful账号密码要取那条成功响应之前的USER和PASS。只看ftp过滤结果容易把失败的尝试当成答案这是最常见的误判。登录时间的取法有两种ftp.response.code 230那一帧的frame.time或者对应PASS命令那一帧的时间。两者可能差几毫秒到几秒赛题一般按响应帧算先用前一种对不上再试后一种。下载的文件名看RETR命令的参数文件内容则要还原数据流Wireshark 里右键任意一帧 → 追踪 TCP 流或者用「文件 → 导出对象 → FTP-DATA」直接把传输的文件抓出来。文件内容可能是明文的一行 flag也可能是个压缩包需要解开导出后在本地打开看最快。4.3 渗透链路从 nmap 到 MSF 的六步B-3 的五问全部围绕「你做这一步用了什么参数或命令」属于送分题前提是工具用熟。# 1. 服务与版本扫描-oX 是输出 XML 格式的参数这题答案就是 -oX nmap -sV -oX /root/scan.xml 172.16.1.20 # 2. 初始化 MSF 数据库对应答案 msfdb init msfdb init # 3. 进入控制台后导入扫描结果并查看 msfconsole -q # msf6 db_import /root/scan.xml # msf6 hosts - 这个命令就是查看导入的主机数据 # msf6 services - 查看端口服务 # 4. 搜索漏洞模块回显里 Disclosure Date 那一列就是答案 # msf6 search cve-2019-0708 # 5. 调用模块检测目标是否存在漏洞 # msf6 use auxiliary/scanner/rdp/cve_2019_0708_bluekeep # msf6 set RHOSTS 172.16.1.20 # msf6 check # 回显形如The target is vulnerable. 最后一个单词即答案几个实操提醒db_import之后如果hosts报数据库未连接说明第 2 步没做或者msfdb init中途失败重新初始化一次再进控制台。search的回显里Disclosure Date是模块的公开披露时间不是 CVE 的发布时间两者偶尔不同以回显为准。check的回显最后可能是vulnerable也可能是safe取决于靶机状态别默认答案一定是 vulnerable。5. 常见问题排查五个把人锁在门外的翻车现场这一节都是我自己或者身边人真实踩过的按「现象 → 原因 → 解决」写清楚遇到了直接对照。5.1 改完 sshd_config 重启失败SSH 直接连不上现象systemctl restart sshd返回失败或者返回成功但新端口连不上旧会话一断就彻底失联。原因通常有三个端口被 SELinux 拦了Enforcing 下 sshd 只能绑定ssh_port_t标记的端口防火墙没放行新端口Banner指向的文件不存在或权限是 600sshd 启动时读不到直接退出。解决重启前一定先sshd -t做语法校验它会明确指出哪一行有问题然后getenforce看 SELinux 状态Enforcing 就补semanage port -a -t ssh_port_t -p tcp 2222firewalld 环境补firewall-cmd --permanent --add-port2222/tcp firewall-cmd --reload。验证顺序是从另一台机器开新连接试成功了再关旧连接别反过来。5.2 会话超本文还有配套的精品资源点击获取
RELATED

相关推荐

S1切换数据转发验证:用TEID与End Marker检查点定位业务中断

S1切换数据转发验证:用TEID与End Marker检查点定位业务中断

简介:围绕S1数据转发测试的docx小结,面向移动通信核心网、无线侧测试工程师及LTE切换学习者,聚焦切换过程中用户面数据连续性验证这一关键问题。内容从数据流向入手,梳理切换前SGW经源eNodeB至终端、切换中经SGW回传再转目标eNode…

📅 2026/10/30 8:35:49
Pikachu靶场暴力破解与XSS通关配置复盘

Pikachu靶场暴力破解与XSS通关配置复盘

简介:pikachu靶场全通关教程是一份面向网络安全渗透初学者的PDF学习资料,围绕Pikachu靶场常见关卡整理通关思路与练习心得,适合刚接触Web安全、需要按模块巩固实验操作的学习者。压缩包内共1个PDF文件,大小16.9MB,内容…

📅 2026/10/30 8:35:49
MDVR机器AD芯片 TP9950 TP9951 TP9963 mipi 芯片有什么区别?

MDVR机器AD芯片 TP9950 TP9951 TP9963 mipi 芯片有什么区别?

MDVR机器AD芯片 TP9950 TP9951 TP9963 mipi 芯片有什么区别? 品牌:TechPoint(科点),模拟同轴高清(TVI/AHD/CVI/CVBS)转 MIPI CSI2 解码芯片,车载 / 安防常用,QFN40 封装TI E2E sup... 价格为深圳现货 1K 批量、原装新料、未税参考(2026.10 行情);散买、翻新 / 拆机…

📅 2026/10/30 8:25:21
MORE NEWS

更多资讯

📰

Java Swing+JDBC+MySQL毕业设计选题系统:事务控制与避坑指南

简介:这份资源是Java SwingJDBCMySQL实现的毕业设计选题管理系统完整项目包,面向计算机相关专业学生、Java桌面开发初学者及需要课程设计或毕设参考的开发者,帮助解决选题分配流程信息化的问题。系统覆盖学生选题、教师命题、管理员审核等环节…

📰

Node.js与React构建AI Agents框架:paperclip环境搭建与编排实践

1. 从"paperclip"这个名字说起:它到底想解决什么问题第一次看到"paperclip"这个项目名,我脑子里蹦出来的其实是那个经典的"回形针"思想实验——一个不断自我进化、最终把整个世界都变成回形针的AI。用这个名字给一个基于N…

📰

DeepSeek-V4-GGUF量化食谱大公开:从Q2_K到IQ2_XXS的参数优化策略

DeepSeek-V4-GGUF量化食谱大公开:从Q2_K到IQ2_XXS的参数优化策略 DeepSeek-V4-GGUF是针对DS4推理引擎优化的量化模型集合,提供从Q2_K到IQ2_XXS等多种参数优化策略,帮助用户在不同硬件配置下实现高效的文本生成能力。本文将详细解析这些量化方…

📰

Scuttlebutt: 基于社交网络的数据同步协议

Scuttlebutt: 基于社交网络的数据同步协议 Scuttlebutt 是一种基于社交网络的数据同步协议,旨在解决分布式系统中的数据同步问题。该项目最初由 Dominic Tarr 开发,并在 GitCode 上开源。 什么是 Scuttlebutt? Scuttlebutt 是一个轻量级的、去…

📰

adb logcat 命令使用

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

📰

国内环境快速搭建ESP-IDF开发框架:基于Gitee镜像的完整指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

TODAY

今日更新

THIS WEEK

本周精选

THIS MONTH

本月热门

读完文章,想聊聊您的网站?

告诉我们您的行业与需求,资深顾问一对一梳理方案与报价,全程免费。

📞 💬