登录
首页 >  文章 >  linux

LinuxSFTP配置SSH密钥认证详解

时间:2025-05-04 12:21:31 291浏览 收藏

在Linux系统中,通过SFTP进行文件传输时,设置SSH密钥认证可以显著增强安全性。本文详细介绍了配置SSH密钥认证的步骤,包括生成SSH密钥对、将公钥复制到服务器、配置SSH服务器、重启SSH服务以及使用SFTP进行连接。此外,还提供了如何配置SSH客户端以简化连接过程的可选步骤。通过这些操作,可以确保文件传输的安全性并降低密码泄露的风险。

在Linux系统中,通过SFTP(SSH文件传输协议)进行文件传输时,可以通过设置SSH密钥认证来增强安全性。以下是详细的配置步骤:

1. 生成SSH密钥对

首先,在客户端计算机上创建SSH密钥对。如果已有密钥对,可以跳过此步骤。

ssh-keygen -t rsa -b 4096 -C "your_email@example.com"

运行上述命令后,系统会要求你指定文件保存路径和设置密码短语(可选)。默认情况下,生成的密钥对将存储在~/.ssh/id_rsa(私钥)和~/.ssh/id_rsa.pub(公钥)。

2. 将公钥复制到服务器

接下来,将生成的公钥添加到服务器的~/.ssh/authorized_keys文件中。可以使用ssh-copy-id命令来实现此操作。

ssh-copy-id user@server_ip

运行上述命令后,系统会提示输入服务器用户的密码。成功执行后,公钥将被添加到服务器的authorized_keys文件中。

3. 配置SSH服务器

确保服务器的SSH配置文件/etc/ssh/sshd_config启用了密钥认证。编辑该文件:

sudo nano /etc/ssh/sshd_config

找到并确保以下配置项已被激活:

PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys

如果这些配置项被注释掉(以#开头),请删除注释并保存文件。

4. 重启SSH服务

修改配置文件后,重启SSH服务以应用更改。

sudo systemctl restart sshd

5. 使用SFTP进行连接

现在,你可以使用SFTP通过密钥认证连接到服务器。

sftp user@server_ip

系统会提示输入密码短语(如果设置了的话)。成功连接后,你将进入SFTP命令行界面。

6. 配置SSH客户端(可选)

为了方便使用,可以在客户端的~/.ssh/config文件中添加服务器的配置。

nano ~/.ssh/config

添加以下内容:

Host server_ip
    HostName server_ip
    User user
    IdentityFile ~/.ssh/id_rsa

保存并退出编辑器。之后,你可以直接使用sftp server_ip命令连接到服务器,而无需每次都输入用户名和私钥路径。

通过上述步骤,你已经成功设置了Linux SFTP的SSH密钥认证。这不仅提高了文件传输的安全性,还减少了密码泄露的风险。

Linux SFTP如何配置SSH密钥认证

文中关于的知识介绍,希望对你的学习有所帮助!若是受益匪浅,那就动动鼠标收藏这篇《LinuxSFTP配置SSH密钥认证详解》文章吧,也可关注golang学习网公众号了解相关技术文章。

相关阅读
更多>
最新阅读
更多>
课程推荐
更多>