我必须通过SSHlogin到虚拟主机服务器。 不幸的是,login名称等于超过30个字符的域名。 基于debian的linux系统上的OpenSSH客户端在两种语法上都将login名限制为30个字符的限制:
ssh [email protected] ssh -l login example.com
SSH协议的规格是否有限制? 仅仅是OpenSSH的限制吗? 这是基于Unix系统用户名的限制吗?
有没有办法绕过这样的限制?
对于主机,您可以通过man useradd或getconf LOGIN_NAME_MAX来检查getconf LOGIN_NAME_MAX ,但大多数情况下您在Linux上限制为32个字符。 alias-hostname.example.com但是,一种可能的解决方法是将您的用户名放入~/.ssh/config文件中。
我不知道OpenSSH是否可以在configuration文件中处理更长的用户名。 但值得一试。
Host alias-hostname.example.com HostName realname.example.com Port 875 User reallylongusername
一旦你有~/.ssh/config文件,你可以使用ssh alias-hostname.example.com或者ssh realname.example.com ssh alias-hostname.example.com与你的主机ssh alias-hostname.example.com ,而不需要在命令行上指定ssh alias-hostname.example.com ssh realname.example.com或其他选项。 标签完成也将开始为主机名工作,所以你可以inputssh alias[tab] ,它将展开到ssh alias-hostname.example.com 。