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用户登陆
相关推荐
Jaygee-8 分钟前
个人网盘越来越贵?我用 Nginx 自建了一个 WebDAV
运维·nginx
j_xxx404_9 分钟前
面试官灵魂拷问:Linux软链接与硬链接到底有什么区别?(附底层Inode级深度图解)
linux·运维·服务器
lThE ANDE6 小时前
最完整版Linux安装Redis(保姆教程)
linux·运维·redis
yyuuuzz9 小时前
企业出海:技术部署与运维避坑
运维
workflower10 小时前
人机交互部分OOD
运维·人工智能·自动化·集成测试·人机交互·软件需求
农村小镇哥10 小时前
nginx服务器的介绍
运维·服务器·nginx
小夏子_riotous10 小时前
Docker学习路径——3、常用命令
linux·运维·服务器·学习·docker·容器·centos
IMPYLH12 小时前
Linux 的 rm 命令
linux·运维·服务器·网络·bash
white-persist13 小时前
【vulhub shiro 漏洞复现】vulhub shiro CVE-2016-4437 Shiro反序列化漏洞复现详细分析解释
运维·服务器·网络·python·算法·安全·web安全
代码中介商14 小时前
手把手教你Linux 打包压缩与 gcc 编译详解
linux·运维·服务器·编译·打包·压缩