提示工程深度指南:如何让AI模型精准理解你的意图?
2025/12/18 2:46:57
目标:
- 提升文件句柄数(nofile)
- 提升进程数(nproc)
- 避免启用 UsePAM 后“密码正确却登录失败”的坑
prlimit强制修改当前 Shell适合:
- 立即排障
- 临时调优
- 不想重启服务
prlimit --pid$$--nofile=65535:65535 --nproc=65535:65535--pid $$:当前 Shell 进程nofile:最大文件句柄数nproc:最大进程数ulimit-n输出应为:
65535⚠️注意:
该方式仅对当前 Shell 有效,重新登录即失效。
vim/etc/security/limits.conf追加:
* soft nproc 65535 * hard nproc 65535 * soft nofile 65535 * hard nofile 65535编辑 SSH 配置:
vim/etc/ssh/sshd_config确保存在并且未注释:
UsePAM yes PasswordAuthentication yes修改后重启 SSH:
systemctl restart sshd很多人卡在这里
👉 只开了UsePAM yes,但PAM 认证链不完整
/etc/pam.d/sshd直接覆盖(最稳妥方式):
cat>/etc/pam.d/sshd<<'EOF' #%PAM-1.0 auth required pam_sepermit.so auth include password-auth account required pam_nologin.so account include password-auth password include password-auth # pam_selinux.so close should be the first session rule session required pam_selinux.so close session required pam_loginuid.so # pam_selinux.so open should only be followed by sessions to be executed in the user context session required pam_selinux.so open env_params session required pam_namespace.so session optional pam_keyinit.so force revoke session include password-auth session include postlogin # ★ 关键:资源限制生效必须有它 session required pam_limits.so EOFpam_limits.sopassword-auth⚠️重要:
已登录的 SSH 会话不会继承新 limits
ulimit-nulimit-u期望输出:
65535sshd -T|egrep'usepam|passwordauthentication'tail-n50/var/log/securepam_tally2 --user 用户名解锁:
pam_tally2 --user 用户名 --reset
- 临时调试:
prlimit- 永久生效:
limits.conf + pam_limits.so- UsePAM yes 必须配合完整 PAM 文件
- 否则就是“密码正确但登录失败”