为了简化您的设置,您可以设置一个 SSH 配置文件,该文件位于~/.ssh/config
. 在文件中添加一个条目,如:
Host server
User l33t
HostName server.example.org
Run Code Online (Sandbox Code Playgroud)
如果 HostName 指令与 Host 中给出的名称匹配,则该指令是可选的。这基本上是输入的别名l33t@server.example.org
。s
如果您想避免大量输入,您可以在 Host 行中将名称缩短为 a 。当远程用户名与您的本地用户名相同时,您也可以忽略 User 行。有了上面的配置,你只需要输入ssh server
, scp file-to-copy server:
, 等等。
OpenSSH 不支持存储密码,因为这通常是一个坏主意,但它提供了一种更安全的替代方法,称为公钥身份验证。使用公钥,即使每个服务器的密码不同,您也可以自动登录到多个服务器。公钥使用私钥,该私钥通常与密码一起存储在磁盘上。此密码用于加载私钥,然后用于向远程服务器进行身份验证。为了避免一直输入私钥的密码,可以将私钥加载到 SSH 公钥代理中,例如ssh-agent
或 GNOME 钥匙圈。当代理使用加载的私钥运行时,您可以自动向任何服务器进行身份验证,无需密码。您也可以在没有密码的情况下将私钥存储到磁盘,但这安全性较低,相当于将纯文本密码存储到磁盘。看看设置 ssh public key。