蓝桉云顶

Good Luck To You!

如何在Linux系统中创建SSH连接?

在Linux中创建SSH密钥对,使用ssh-keygen命令,按提示操作即可。

Linux 创建 SSH

SSH(Secure Shell)是一种加密网络协议,用于在不安全的网络上安全地操作远程计算机,本文将详细介绍如何在 Linux 系统上创建 SSH 连接,并配置相关参数。

安装 OpenSSH

我们需要在本地和远程计算机上安装 OpenSSH 软件包,大多数 Linux 发行版都默认包含 OpenSSH 客户端,但可能没有安装服务器端,以下是一些常见的安装命令:

Ubuntu/Debian

sudo apt update
sudo apt install openssh-server

CentOS/RHEL

sudo yum install openssh-server

Fedora

sudo dnf install openssh-server

启动和启用 SSH 服务

安装完成后,需要启动并设置 SSH 服务在系统启动时自动运行。

启动 SSH 服务

sudo systemctl start sshd

设置开机自启

sudo systemctl enable sshd

配置 SSH 服务

SSH 的配置文件通常位于/etc/ssh/sshd_config,你可以使用文本编辑器如vimnano 来编辑这个文件。

sudo vim /etc/ssh/sshd_config

修改常用配置项

配置项 说明
Port 修改默认端口号(Port 2222)
ListenAddress 绑定地址(ListenAddress 0.0.0.0)
PermitRootLogin 是否允许 root 用户登录(建议设置为 no)
PasswordAuthentication 是否允许密码验证(可以设置为 no,强制使用密钥认证)
PubkeyAuthentication 是否允许公钥认证
AllowUsers 允许登录的用户(AllowUsers alice bob)
AllowGroups 允许登录的用户组(AllowGroups sshusers)

保存并关闭文件后,重新启动 SSH 服务使配置生效。

sudo systemctl restart sshd

生成 SSH 密钥对

为了提高安全性,推荐使用 SSH 密钥对进行认证,而不是密码,可以使用以下命令生成密钥对:

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

执行上述命令后,会提示你输入文件保存路径和密码短语(passphrase),按回车即可使用默认值,生成的密钥对包括公钥和私钥,默认保存在~/.ssh/id_rsa~/.ssh/id_rsa.pub

配置公钥认证

将生成的公钥复制到远程服务器上的~/.ssh/authorized_keys 文件中,可以使用ssh-copy-id 命令简化这个过程:

ssh-copy-id user@remote_host

如果远程主机的~/.ssh 目录不存在,你需要手动创建并设置正确的权限:

mkdir -p ~/.ssh
chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys

测试 SSH 连接

一切配置完成后,可以使用以下命令测试 SSH 连接:

ssh user@remote_host

首次连接时,会提示你是否信任该主机的指纹,输入yes 后按回车即可。

高级配置

使用 SSH 代理

SSH 代理可以使你在多个终端会话中复用一个身份验证,而不需要每次都输入密码或密钥短语,可以使用以下命令启动 SSH 代理:

eval "$(ssh-agent -s)"
ssh-add ~/.ssh/id_rsa

配置多重跳转(SSH 隧道)

有时你需要通过多个中间服务器才能到达目标服务器,这可以通过 SSH 隧道实现,通过bastion 主机跳转到target 主机:

ssh -J user@bastion ssh user@target

故障排除

无法连接到 SSH 服务

检查 SSH 服务状态:

sudo systemctl status sshd

确保防火墙允许 SSH 端口(默认是22):

sudo ufw allow 22/tcp

权限问题

确保~/.ssh 目录及其父目录的权限正确:

chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys

FAQs

Q: 如何更改 SSH 默认端口?

A: 编辑/etc/ssh/sshd_config 文件,找到Port 配置项,将其改为所需的端口号(Port 2222),然后重启 SSH 服务:sudo systemctl restart sshd

Q: 如何禁用密码认证,只使用密钥认证?

A: 编辑/etc/ssh/sshd_config 文件,将PasswordAuthentication 设置为no,然后重启 SSH 服务:sudo systemctl restart sshd,确保你已经配置了公钥认证。

小伙伴们,上文介绍了“linux 创建ssh”的内容,你了解清楚吗?希望对你有所帮助,任何问题可以给我留言,让我们下期再见吧。

  •  王晓光
     发布于 2024-01-22 07:30:35  回复该评论
  • 香港拨号VPS租用好处多,速度快、稳定性高,适用于各种业务需求,是拓展互联网业务的理想选择。
  •  云水谣
     发布于 2024-03-01 17:34:12  回复该评论
  • 香港拨号VPS租用具有高速连接、稳定运行和灵活配置等多方面优势,是企业拓展业务、提升网络性能的理想选择。

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

«    2024年11月    »
123
45678910
11121314151617
18192021222324
252627282930
控制面板
您好,欢迎到访网站!
  查看权限
网站分类
搜索
最新留言
文章归档
网站收藏
友情链接