Debian系统设置SSH密钥登陆

from:怕刺

如果没有安装ssh,root权限运行apt install openssh-server进行安装。

ssh-keygen -t rsa  # 生成配对密钥,后续一路enter即可

会在用户目录(即~这个)下生成.ssh文件夹,里面的id_rsa是私钥,id_rsa.pub是公钥。
输入cd ~/.ssh/进入.ssh文件夹中,将公钥写入到authorized_keys中,将id)rsa下载并保存好。

touch authorized_keyscat id_rsa.pub >> authorized_keys # 写入公钥写入

此时,还需要给文件相应的权限,不然可能无法正常工作

chmod 600 authorized_keyschmod 700 ~/.ssh

现在密钥已经配对好了,还需要修改ssh的配置文件,打开/etc/ssh/sshd_config文件,修改其中的关键文件

PubkeyAuthentication yes # yes表示允许密钥登陆AuthorizedKeysFile      .ssh/authorized_keys .ssh/authorized_keys2 # 指定密钥的文件位置PasswordAuthentication no # 不允许使用密码登陆,等测试密钥登陆成功了再修改此条,以防无法登陆

到此,SSH密钥登陆就配置完成了,重启ssh服务即可systemctl restart ssh

除此之外,我习惯性更改端口,并且禁止root用户用户登陆

Port 12345 # 把默认的22端口改了PermitRootLogin no # 禁止root用户登陆

xhell自动断开的解决

在操作远程管理linux服务器或安装在本地虚拟机上的linux时,xshell是一个很方便的工具,它是基于ssh协议,提供用户命令行模式来操作。

但是有时候会遇到xshell自动断开问题,这和由于xshell工具重新连接设置有关。

1.修改linux系统sshd_config文件内容,vi /etc/ssh/sshd_config 编辑此文件。

  2.找到ClientAliveInterval和ClientAliveCountMax,默认是注释掉的,ClientAliveInterval指服务器向客户端发送时间间隔,ClientAliveCountMax指发送消息的次数。

3.选择会话 “属性->连接->保持活动状态” 中设置每隔60秒发送一个\n。

当然,你可以自由选择空闲间隔时长以及发送的命令。

126 #ClientAliveInterval 30

127 #ClientAliveCountMax 3

 4.打开xhell工具,连接——重新连接——设置连接间隔为20秒

5.系统重启ssh服务,重新打开xshell连接系统即可。

[root@master ~]# systemctl stop sshd

[root@master ~]# systemctl start sshd

[root@master ~]# systemctl status sshd


已发布

分类

,

来自

标签:

评论

《“Debian系统设置SSH密钥登陆”》 有 1 条评论

  1. yxbinghe 的头像

    ssh-keygen -t ed25519 生成 ED25519 的,私钥 ~/.ssh/id_ed25519,公钥 ~/.ssh/id_ed25519.pub。
    ssh-keygen -t rsa -b 4096 生成 RSA 的,私钥 ~/.ssh/id_rsa,公钥 ~/.ssh/id_rsa.pub。

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注