服务器免密登陆

配置 SSH 免密登录(Mac)

方案的原理是:在 Mac 电脑上生成一对“密钥”(一个公钥,一个私钥),然后把“公钥”(相当于一把锁)放到远程服务器上账户的“钥匙串”里。之后,你每次用 scpssh 连接时,你的电脑会自动用“私钥”(你的钥匙)去开服务器上的那把锁,整个过程无需输入密码。

操作步骤 (只需要做一次):

  1. 检查是否已有 SSH 密钥
    打开终端,输入:

    1
    ls -l ~/.ssh/id_rsa.pub
    • 如果显示文件存在,说明你已经有密钥了,可以跳到第 3 步。
    • 如果提示 No such file or directory,你需要先生成一对密钥。
  2. 生成新的 SSH 密钥 (如果需要)

    1
    ssh-keygen -t rsa -b 4096
    • 它会提示你保存文件的位置,直接按回车(默认是 ~/.ssh/id_rsa)。
    • 它会提示你输入 passphrase (密码短语),为了方便自动化,直接按回车,留空即可。再按一次回车确认。
    • 执行完毕后,~/.ssh/ 目录下就会生成 id_rsa (私钥) 和 id_rsa.pub (公钥)。
  3. 将你的公钥复制到远程服务器
    这有一条非常方便的命令 ssh-copy-id 来自动完成这件事。请注意,这条命令需要你指定正确的端口号

    1
    ssh-copy-id username@ip
    • 这条命令会提示你输入一次用户的密码。这是最后一次你需要为这个连接输入密码了。
    • 它会自动把你的公钥 (~/.ssh/id_rsa.pub 的内容) 追加到远程服务器的 ~/.ssh/authorized_keys 文件中。
Author

Cofeesy

Posted on

2025-08-29

Updated on

2025-09-09

Licensed under

Comments