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用户登陆
相关推荐
阿伟实验室20 小时前
debian10部署简易web服务器
运维·服务器·前端
北京阿法龙科技有限公司20 小时前
AR眼镜赋能跨国设备运维:打破空间隔阂,重构高效协作|阿法龙XR云平台
运维·重构·ar
Kathleen10021 小时前
计算机网络——应用层
运维·服务器·计算机网络
java_logo21 小时前
BUSYBOX Docker 容器化部署指南
java·运维·python·nginx·docker·容器·运维开发
Mr.H012721 小时前
多线程文件拷贝:从原理到实现的完整指南
linux·运维
橘子真甜~1 天前
C/C++ Linux网络编程5 - 网络IO模型与select解决客户端并发连接问题
linux·运维·服务器·c语言·开发语言·网络·c++
e***74951 天前
Nginx 常用安全头
运维·nginx·安全
oushaojun21 天前
Linux内核KGDB进阶:源码级调试实战演练(转)
linux·运维·kgdb
( ˶˙⚇˙˶ )୨⚑︎1 天前
VSCode SSH免密连接主机 GitHub添加SSH密钥
vscode·ssh·github
Jason_Orton1 天前
笔记本电脑触摸板失灵另类解决办法(I2C HID设备黄色感叹号)
运维·服务器·计算机网络·网络安全·电脑