SFTP如何启用公钥认证
聊到SFTP的安全配置,公钥认证几乎是绕不开的一步。相比密码登录,它既省去了每次输密码的麻烦,安全性也高出一大截。具体怎么操作?下面几个步骤就能搞定。 首先生成SSH密钥对。在你的客户端机器上打开终端,运行 ssh-keygen 命令。默认情况下,生成的密钥对会存放在 ~/.ssh 目录下:一个是私
聊到SFTP的安全配置,公钥认证几乎是绕不开的一步。相比密码登录,它既省去了每次输密码的麻烦,安全性也高出一大截。具体怎么操作?下面几个步骤就能搞定。
首先生成SSH密钥对。
在你的客户端机器上打开终端,运行ssh-keygen命令。默认情况下,生成的密钥对会存放在~/.ssh目录下:一个是私钥id_rsa(务必妥善保管),另一个是公钥id_rsa.pub(可以放心分享)。接着把公钥复制到服务器。
最简单的方式是使用ssh-copy-id user@server_ip命令,它会自动将你的公钥追加到服务器的~/.ssh/authorized_keys文件中。如果这个命令不可用,手动操作也行——把公钥文件的内容复制出来,登录服务器后直接追加到对应文件里。配置SSH服务器。
登录到服务器,编辑SSH的主配置文件,通常位于/etc/ssh/sshd_config。找到PubkeyAuthentication这一项,确保它被设为yes。同时检查AuthorizedKeysFile的路径是否正确,一般指向~/.ssh/authorized_keys。改完后保存退出。重启SSH服务让配置生效。
在服务器上执行sudo systemctl restart sshd即可。如果你用的是比较老的系统,可能需要sudo service ssh restart。最后一步,测试一下。
回到客户端,尝试用SFTP连接服务器:sftp user@server_ip。如果之前每一步都配置正确,这次应该直接登录成功,不会再弹出密码提示框。
整个流程并不复杂,但提醒一句:操作过程中要确保你有足够的权限,并且留意系统的差异,比如某些发行版的配置文件路径或服务名称可能略有不同。总之,公钥认证用起来是真的省心。

































