部署AWS Transfer Family SFTP服务器后创建用户遇SSH公钥格式错误求助
解决AWS Transfer Family SFTP用户SSH公钥格式错误的方案
我之前碰到过完全相同的问题,折腾了半天终于搞定,给你几个亲测有效的关键点:
- 认准OpenSSH格式:AWS Transfer Family只支持OpenSSH格式的公钥,PuTTYgen默认通过「Save public key」导出的是SSH2格式(开头为
---- BEGIN SSH2 PUBLIC KEY ----),这种格式一定会报错。正确操作是:打开PuTTYgen加载你的.ppk私钥后,直接复制「Public key for pasting into OpenSSH authorized_keys file」文本框里的内容,这才是AWS认可的格式。 - 转换已有SSH2格式公钥:如果手里已经有SSH2格式的公钥文件,可通过
ssh-keygen工具转换为OpenSSH格式,执行命令:
之后使用转换生成的文件内容即可。ssh-keygen -i -f 你的SSH2公钥文件.pub > 转换后的公钥.pub - 检查密钥类型与长度:AWS支持RSA(2048/4096位)、ECDSA(nistp256/384/521)、ED25519类型的密钥,避免使用DSA这类已淘汰的密钥类型,生成时务必选对类型。
- 复制时保证格式完整:Windows环境下复制公钥容易带入隐藏换行符,建议先将公钥粘贴到记事本中,确认是完整的单行文本后,再复制到AWS控制台的输入框,不要遗漏字符或额外添加空格。
按以上步骤操作,应该就能解决这个格式错误问题。
内容的提问来源于stack exchange,提问作者Dreski
相关产品推荐
相关产品推荐

