使用SSH可信证书登录Ubuntu 22.04服务器时PTY分配失败及无正常Shell显示问题求助
使用SSH可信证书登录Ubuntu 22.04服务器时PTY分配失败及无正常Shell显示问题求助
大家好,我最近在配置基于HashiCorp Vault生成的SSH可信证书登录Ubuntu 22.04服务器时遇到了棘手的问题,想请教下各位有没有解决思路。
问题详情
我用普通SSH密钥登录服务器是完全正常的,比如执行这条命令:
ssh -i test-key-for-vault -o IdentitiesOnly=yes -t bob@<server-ip>
登录后能正常看到标准的Shell提示符(比如bob@ip-xxx-xxx-xxx:/home/bob),所有操作都没问题。
但当我配置了SSH可信证书认证后,情况就不对了:
我在服务器的/etc/ssh/sshd_config文件末尾添加了以下配置:
TrustedUserCAKeys /etc/ssh/lgt-trusted-user-ca-keys.pem Match User bob AllowTcpForwarding yes PermitTTY yes AuthorizedPrincipalsFile /etc/ssh/bob_principals
之后用证书登录的命令是:
ssh -i test-key-for-vault-rsa -o CertificateFile=signed-cert-rsa.pub -o IdentitiesOnly=yes bob@<server-ip>
虽然能成功登录,但看不到正常的Shell提示符;如果我强行加上-t参数强制分配TTY:
ssh -i test-key-for-vault-rsa -o CertificateFile=signed-cert-rsa.pub -o IdentitiesOnly=yes -t bob@<server-ip>
就会直接报错:
PTY allocation request failed on channel 0
已尝试的解决方案
我已经谷歌过相关问题,试了一些常见的排查方案,但都没能解决问题:
- 试过在
sshd_config的Match User bob块里把PermitTTY设为yes或者no,两种情况都没用 - 试过在
/etc/fstab里添加none /dev/pts devpts defaults 0 0,然后重启服务器,还是没有改善
有没有人遇到过类似的情况?或者能给我一些其他的排查方向、配置检查点或者解决建议吗?
备注:内容来源于stack exchange,提问作者Sim Sca
相关产品推荐
相关产品推荐

