chan

朝生暮死不足笑 但悲百年不足道

【SSH】配置无密码 SSH 密钥认证



配置无密码 SSH 密钥认证

1. 在本地服务器上生成 SSH 密钥

运行以下命令生成 SSH 密钥对:

ssh-keygen -t rsa -b 4096
  • 默认会生成两个文件:
  • 私钥~/.ssh/id_rsa
  • 公钥~/.ssh/id_rsa.pub
  • 在生成密钥过程中,你可以直接按 Enter 使用默认路径,不设置密码短语(方便自动化任务)。

2. 将公钥复制到远程服务器

运行以下命令将公钥传输到远程服务器:

ssh-copy-id root@8.138.2.44
  • 系统会提示输入远程服务器的密码。
  • 公钥会自动被添加到远程服务器的 ~/.ssh/authorized_keys 文件中。

3. 验证 SSH 无密码登录

尝试从本地服务器登录远程服务器:

ssh root@8.138.2.44

如果不再提示输入密码,则说明配置成功。


4. 修改脚本以实现无密码传输

配置完成后,原脚本中的 scp 命令无需修改,scp 将直接使用 SSH 密钥认证实现文件传输:

sync_command = f"scp {backup_filepath} {REMOTE_USER}@{REMOTE_SERVER}:{REMOTE_DIR}"

运行脚本时,scp 会自动使用配置的密钥认证登录到远程服务器并传输文件。


评论
还没有评论
    发表评论 说点什么