debian

Debian SFTP如何启用公钥认证

小樊
43
2025-03-30 04:14:27
栏目: 智能运维

在Debian系统上启用SFTP公钥认证,可以按照以下步骤进行操作:

1. 安装必要的软件包

首先,确保你已经安装了openssh-server。如果没有安装,可以使用以下命令进行安装:

sudo apt update
sudo apt install openssh-server

2. 创建SSH密钥对

如果你还没有SSH密钥对,可以使用以下命令生成:

ssh-keygen -t rsa -b 4096

按照提示操作,通常会生成两个文件:~/.ssh/id_rsa(私钥)和~/.ssh/id_rsa.pub(公钥)。你可以选择将公钥添加到服务器的authorized_keys文件中。

3. 将公钥复制到服务器

使用ssh-copy-id命令将公钥复制到服务器的~/.ssh/authorized_keys文件中:

ssh-copy-id user@server_ip

其中,user是你在服务器上的用户名,server_ip是服务器的IP地址。执行该命令后,系统会提示你输入服务器用户的密码。

4. 配置SSH服务器

编辑服务器上的SSH配置文件/etc/ssh/sshd_config,确保以下配置项正确设置:

PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys
PasswordAuthentication no  # 如果你只想使用公钥认证,可以禁用密码认证

保存并关闭文件后,重启SSH服务以应用更改:

sudo systemctl restart sshd

5. 测试SFTP连接

现在,你可以尝试使用SFTP连接到服务器,验证公钥认证是否成功:

sftp user@server_ip

如果一切配置正确,你应该能够无需输入密码即可登录。

6. 防火墙设置

确保服务器的防火墙允许SSH连接。如果你使用的是ufw,可以运行以下命令:

sudo ufw allow ssh
sudo ufw reload

如果你使用的是其他防火墙工具,请相应地配置规则。

通过以上步骤,你应该能够在Debian系统上成功启用SFTP公钥认证。

0
看了该问题的人还看了