Debian系统设置SSH密钥登陆

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

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

会在用户目录(即~这个)下生成.ssh文件夹,里面的id_rsa是私钥,id_rsa.pub是公钥。

输入cd ~/.ssh/进入.ssh文件夹中,将公钥写入到authorized_keys中,将id)rsa下载并保存好。

bash 复制代码
touch authorized_keys
cat id_rsa.pub >> authorized_keys # 写入公钥写入

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

bash 复制代码
chmod 600 authorized_keys
chmod 700 ~/.ssh

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

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

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

bash 复制代码
systemctl restart ssh

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

bash 复制代码
Port 12345 # 把默认的22端口改了
PermitRootLogin no # 禁止root用户登陆
相关推荐
zengshitang5206 小时前
ACRN 实战应用:在一台电脑上同时安装Windows10、Ubuntu22.04、Ubuntu PREEMPT_RT实时系统并流畅运行
linux·运维·ubuntu
UP_Continue6 小时前
Linux权限
linux·运维·服务器
努力也学不会java6 小时前
【docker】Docker Image(镜像)
java·运维·人工智能·机器学习·docker·容器
LSL666_6 小时前
云服务器安装MySQL
运维·服务器·mysql
gaize12136 小时前
服务器的性能如何评估
运维·服务器·php
牛奶咖啡136 小时前
制作无人值守自动化系统镜像并实现自动化安装——万能系统引导U盘版本
运维·制作万能系统引导u盘·实现对整个系统的安装备份·制作自动化无人值守系统镜像·使用自动化无人值守系统镜像部署·使用再生龙实现系统的自动化安装
ShiLiu_mtx6 小时前
Keepalived,Haproxy负载均衡集群
linux·运维·负载均衡
橘颂TA6 小时前
【Linux】进程池
linux·运维·服务器·c++
p***32356 小时前
Nginx 配置前端后端服务
运维·前端·nginx
草莓熊Lotso6 小时前
Git 多人协作全流程实战:分支协同 + 冲突解决 + 跨分支协助
linux·运维·服务器·人工智能·经验分享·git·python