1.2 服务器连接
1. 用 ssh 连接服务器
第一件事就是登录服务器。
Windows 用户可以用 PowerShell,或者更推荐直接装 WSL。如果你更习惯图形化终端工具,也可以先用 Xshell 、MobaXterm 这类软件连接服务器。
macOS/Linux 用户直接打开终端即可。(应该不会有人用 Linux 吧,不会吧,不会吧。)
最常见的连接命令是:
bash
ssh -p port username@hostname # 用指定端口连接远程服务器
# -p 后面是端口号,如果端口是默认值 22 可以不写
# username 是用户名
# hostname 一般是 IP 或者域名回车执行后,一般会提示输入密码。
注意:终端里输入密码时通常不会有任何回显,这是正常的,不是键盘没反应。
2. 配置 ~/.ssh/config
如果你经常登录同一台服务器,建议尽早把别名配好。
ssh-config
Host alias # 给这台服务器起一个本地别名
HostName hostname # 服务器地址,通常是 IP 或域名
User username # 登录用户名
Port port # SSH 端口
IdentityFile path/to/private/key # 私钥路径这里的 alias 是你自己定义的本地名字。
配置好之后,连接命令就会简化成:
bash
ssh alias # 使用别名连接服务器这个别名不只对 ssh 有用,后面的:
scprsyncsftp
通常也都可以直接复用。
3. 用密钥登录代替密码
如果你每次登录都要输入密码,长期来看会很烦。更稳的做法是配置密钥登录。
使用 ssh-keygen 生成密钥对
bash
ssh-keygen # 生成一对 SSH 密钥
# 一直按回车就可以,后面再按需细化默认情况下,一般会生成:
text
~/.ssh/id_rsa
~/.ssh/id_rsa.pub其中:
id_rsa是私钥id_rsa.pub是公钥
~/.ssh/config 里的 IdentityFile 对应的就是私钥路径。
使用 ssh-copy-id
如果本地有 ssh-copy-id,这是最省事的做法:
bash
ssh-copy-id alias # 将本地公钥复制到服务器 authorized_keys它会把你的公钥自动追加到服务器的 ~/.ssh/authorized_keys 里。
手动复制公钥
如果本地没有 ssh-copy-id,也可以手动把 id_rsa.pub 的内容复制到服务器的:
text
~/.ssh/authorized_keys如果里面已经有内容,就另起一行追加,不要覆盖原有内容。
配置好再试试连接,如果不需要输入密码,直接登入服务器就说明连接成功了!