linux下ssh公钥验证的设置和远程登录
来源:互联网 发布:c语言控制台界面编程 编辑:程序博客网 时间:2024/06/18 12:19
使用linux
有一段时间了,最近在服务器上假设了一个git
仓库,每次提交时都使用密码实在是比较反人类,因此就特意研究了一下如何使用ssh密钥
来登录服务器。
公钥和私钥的生成
ssh-keygen
命令专门是用来生成密钥的。该命令有很多选项,这里列出了最基本的四个:
-t
用来指定密钥类型(dsa | ecdsa | ed25519 | rsa | rsa1
);-P
用来指定密语-f
用来指定生成的密钥文件名-C
用来添加注释
ssh-keygen -t rsa -P 123456 -f host -C 'my host key'
意思就是新建了密语为123456
注释为my host key
文件名为host
的密钥。此命令会生成host
和host.pub
两个文件,前者为私钥文件
,后者为公钥文件
。如果你想免密登录的话,请将密语设置为空。
将公钥部署到服务器
上一步生成了公钥和私钥后,需要将公钥部署到服务器并用私钥登录。因此首先需要将创建的公钥上传到服务器。使用scp
或者你的工具将公钥上传到服务器并将文件内容追加到~/.ssh/authorized_keys
中。例如:
#在本机上执行此命令,上传公钥scp -P your_port host.pub user@hostname:/tmp#在服务器上执行此命令,追加到authorized_keyscd /tmp && cat host.pub >> ~/.ssh/authorized_keys#更改权限chmod 600 ~/.ssh/authorized_keys
更改服务器配置
打开/etc/ssd/sshd_config
文件,将如下的配置打开:
RSAAuthentication yesPubkeyAuthentication yesAuthorizedKeysFile .ssh/authorized_keys
重启sshd
,service sshd restart
或者systemctl restart sshd.service
。重启之后,服务器已经支持远程ssh
连接了
连接服务器
本人是通过ssh
命令来远程连接服务器的,通过ssh -p your_port username@domain -i your_private_certification
命令,就可以连接到服务器了。如果你是通过xshell
或者putty
来连接的话,导入你的私钥并连接就可以了。
其他
如果你想只允许服务器通过公钥和私钥的方式来连接服务器的话,可以将服务器配置文件/etc/ssh/sshd_config
中的PasswordAuthentication yes
改为PasswordAuthentication No
,不过在重启sshd
时不要关闭当前的连接,确认通过私钥能连接到服务器才可以关闭。否则,一旦私钥连不上,密码连接方式又被禁用了,恐怕你就要告别你的服务器了。
- linux下ssh公钥验证的设置和远程登录
- Linux下修改ssh端口和禁止root远程登录
- Linux下修改ssh端口和禁止root远程登录
- Linux下修改ssh端口和禁止root远程登录
- Linux下修改ssh端口和禁止root远程登录
- Ubuntu下SSH设置,实现远程登录
- linux下ssh远程登录/scp远程复制文件/rsync远程同步命令的自动登录
- linux下ssh远程登录/scp远程复制文件/rsync远程同步命令的自动登录
- linux下ssh远程登录/scp远程复制文件/rsync远程同步命令的自动登录
- SecureCRT中ssh远程登录Linux设置
- Linux 设置ssh远程登录端口
- linux下开通ssh,允许远程登录
- Window下SSH远程登录Linux
- linux下使用ssh登录远程
- Linux-Ubuntu 远程登录服务器--ssh的安装和配置
- Mac ssh 远程登录 无需密码验证 设置
- Linux远程登录--ssh 和 vnc
- Linux ssh远程登录
- 约瑟夫环
- 数据结构上机实践第八周项目4-字符串加密
- 优雅的缓存开发,看这一篇文章就可以了「干货」
- 人脸识别之PCA 和 LDA
- mybatis Example Criteria like 模糊查询
- linux下ssh公钥验证的设置和远程登录
- MQTT QoS
- linux mysql卸载
- latex cjk.sty not found
- rman 日常管理
- 在Red Hat上安装rpm包时显示error: Failed dependencies:错误
- 计算机网络自顶向下——计算机网络与因特网
- ofbiz实战6——预约实验室管理系统所有实体定义
- mysql无法连接服务器数据库(not allowed to connect )