WindTerm icon indicating copy to clipboard operation
WindTerm copied to clipboard

WindTerm crashes when connecting to OpenSSH 9.4 CentOS 7 host|WindTerm 远程连接 OpenSSH9.4 CentOS 7 主机时崩溃

Open tp20c5 opened this issue 5 months ago • 5 comments

windterm version: 2.7.0 os version: Windows 10 22H2

I'm experiencing a crash issue when using WindTerm to connect to a CentOS 7 host after upgrading to OpenSSH 9.4. 在使用WindTerm远程连接到CentOS 7主机时,更新到OpenSSH 9.4版本后出现崩溃问题。 ——————————

Description:

After upgrading the OpenSSH version on the CentOS 7 host from 7.4p1 (OpenSSL 1.0.2k-fips, 26 Jan 2017) to 9.4 (OpenSSL 1.1.1w, 11 Sep 2023), password authentication results in a "connection refused" error and causes WindTerm to crash.

Steps to Reproduce:

Existing OpenSSH version on CentOS 7 host: OpenSSH_7.4p1, OpenSSL 1.0.2k-fips (26 Jan 2017) Compile and upgrade offline to OpenSSH_9.4, OpenSSL 1.1.1w (11 Sep 2023) Attempt to login using WindTerm with a password, but the password has not been entered yet.

Additional Information:

Password authentication using PowerShell is working fine.

问题描述:

当CentOS 7主机上的OpenSSH版本从 7.4p1 (OpenSSL 1.0.2k-fips, 26 Jan 2017) 升级到 9.4 (OpenSSL 1.1.1w, 11 Sep 2023) 后,使用密码登录时会提示连接拒绝,并导致WindTerm闪退。

复现步骤:

CentOS 7主机原有 OpenSSH 版本:OpenSSH_7.4p1, OpenSSL 1.0.2k-fips (26 Jan 2017) 离线编译升级到 OpenSSH_9.4, OpenSSL 1.1.1w (11 Sep 2023) 使用WindTerm进行密码登录,但还没来得及输入密码。

其他信息:

使用PowerShell进行密码登录时,SSH连接是正常的。

4286a71b-dc40-4070-bc74-2dc4dd4c8db3.dmp a1cb0b1e-d264-44f9-8851-e72844c9dd36.dmp

tp20c5 avatar Jul 07 '25 03:07 tp20c5

I found that enabling this option causes a crash, and unchecking it allows me to log in with my password normally. I don't know why this works. default session settings - ssh - authentication,attempt keyboard-interactive authentication

Image

tp20c5 avatar Jul 07 '25 05:07 tp20c5

我今天也遇到了同样的问题。我是把Oracle Linux 8.10自带的OpenSSH 8.0p1升级到最新的OpenSSH 10.0p2,卸载了8.0p1,启动10.0p2之后,WindTerm就出现了这个问题。

据我观察,好像跟OpenSSH的PAM模块有点关系,我在编译OpenSSH 10.0p2的时候启用了--with-pam,然后sshd_config配置文件里把UsePAM设置为yes,然后WindTerm就这样了,输入完用户名,提示输入密码,此时密码框的下面出现红字错误信息,WindTerm闪退。但是在git-bash中使用ssh连接就能正常连接。

UsePAM设置为yes之后,好像必须得在/etc/pam.d/路径下创建一个sshd文件,里面写上一些认证规则之类的,我是直接从其它的服务器上复制了一份过来,然后重启sshd,再用WindTerm连接就没有这个问题了。不太了解/etc/pam.d/sshd这个文件的作用,一开始自己手动编辑的,结果不起作用,后面从其它服务器上直接复制了一份,就OK了。

另外我发现,升级到10.0p2之后,密钥交换算法好像有些变化,我用termscp连接这个服务器的sftp时,会出现类似不支持的加密密钥之类的错误,但是用其它sftp工具就可以正常连接。查了一下资料,最后修改了sshd_config配置文件里的KexAlgorithms,才解决sftp无法连接的问题。

imwers avatar Jul 10 '25 08:07 imwers

我今天也遇到了同样的问题。我是把Oracle Linux 8.10自带的OpenSSH 8.0p1升级到最新的OpenSSH 10.0p2,卸载了8.0p1,启动10.0p2之后,WindTerm就出现了这个问题。

据我观察,好像跟OpenSSH的PAM模块有点关系,我在编译OpenSSH 10.0p2的时候启用了--with-pam,然后sshd_config配置文件里把UsePAM设置为yes,然后WindTerm就这样了,输入完用户名,提示输入密码,此时密码框的下面出现红字错误信息,WindTerm闪退。但是在git-bash中使用ssh连接就能正常连接。

UsePAM设置为yes之后,好像必须得在/etc/pam.d/路径下创建一个sshd文件,里面写上一些认证规则之类的,我是直接从其它的服务器上复制了一份过来,然后重启sshd,再用WindTerm连接就没有这个问题了。不太了解/etc/pam.d/sshd这个文件的作用,一开始自己手动编辑的,结果不起作用,后面从其它服务器上直接复制了一份,就OK了。

和PAM无关,我测试的环境都是最小环境,甚至都没有编译PAM模块

tp20c5 avatar Jul 11 '25 00:07 tp20c5

将openssh升级到10.0p2版本后,我也遇到了同样问题,取消勾选尝试键盘交互认证后,可以正常登录ssh

yyllxxhh avatar Jul 29 '25 02:07 yyllxxhh

我也遇到了相同的问题,我是用WindTerm通过ssh连接开发板的时候出现的,但是当我取消勾选键盘交互认证后,可以正常登录ssh,但是又出现了新的问题: SFTP failed to allocate

ilyton avatar Nov 10 '25 00:11 ilyton