用SSH 密钥登录VPS
🕐 by pyList at 2018-10-21 12:00
以前没有在VPS 上部署重要的东西,设置一个稍复杂的密码就可以。下面对记录一下VPS 禁止用户名+密码登录,仅使用密钥登录的过程。
生成SSH 公钥
确认是否已经有一个公钥,即检查.ssh
文件夹,以及文件夹中是否存在id_rsa
和 id_rsa.pub
文件,有.pub后缀的文件就是公钥,另一个文件则是密钥。如果不存在,或者干脆连.ssh
文件夹都没有,可以进行创建。如果存在,就直接把id_rsa.pub
内容输出,粘贴的服务器的相关文件。
$ cd ~/.ssh
$ ls
可以用ssh-keygen
来创建
默认公钥的位置(.ssh/id_rsa),然后它会让你重复一个密码两次,如果不想在使用公钥的时候输入密码,可以留空。
更改VPS sshd 配置
编辑sshd 配置文件 /etc/ssh/sshd_config
找到并修改为下面的样子:
RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile %h/.ssh/authorized_keys
PasswordAuthentication no
添加公钥
打开文件~/.ssh/authorized_keys
, 把本地的id_rsa.pub
内容粘贴到里面,保存退出
重启sshd 服务
service sshd restart
其它安全措施
上面所说的登录方式只是最基本的安全措施,还有比如更改ssh 默认端口、禁止root用户登录、使用denyhosts、启用iptables限制等等。
查看尝试暴力破解机器密码的人
grep "Failed password for root" /var/log/auth.log | awk '{print $11}' | sort | uniq -c | sort -nr | more
查看成功登录信息
查看当前登录用户信息
who命令:
who缺省输出包括用户名、终端类型、登陆日期以及远程主机。
who /var/log/wtmp
last
last 用户名
last -t 20181206160404
显示这个时间戳之前的登陆历史
客户端密钥备份
如果电脑重装了,就很难登录服务器,可以备份密钥,直接复制id_rsa
、id_rsa.pub
两个文件。当电脑重装或者想在其他电脑上登录主机,直接把这两个文件复制到 ~/.ssh/
目录下就行。
如果使用备份的id_rsa
文件出现下面的错误提示
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ WARNING: UNPROTECTED PRIVATE KEY FILE! @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
Permissions 0644 for 'id_rsa' are too open.
It is required that your private key files are NOT accessible by others.
This private key will be ignored.
可以用更改文件属性的方法来解决
chmod 0600 id_rsa
去除 id_rsa 密码
ssh-keygen -f id_rsa -p
或
1.使用openssl命令去掉私钥的密码
openssl rsa -in ~/.ssh/id_rsa -out ~/.ssh/id_rsa_new
2.备份旧私钥
mv ~/.ssh/id_rsa ~/.ssh/id_rsa.backup
3.使用新私钥
mv ~/.ssh/id_rsa_new ~/.ssh/id_rsa
4.设置权限
chmod 600 ~/.ssh/id_rsa
本文网址: https://pylist.com/t/1540094439 (转载注明出处)
如果你有任何建议或疑问可以在下面 留言
发表第一条评论!
相关推荐
小工具
标签
ssdb
vps
内存
配置
app
mac
store
登录
未知
qq
时隔多年
网页
github
tornado
帐号
实现
ip
ramnode
更换
访问
国外
nginx
反向
bottle
bjoern
小站
廉价
mysql
128
webdriver
微博
golang
selenium
requests
xsrf
验证
网站
虚拟机
virtualbox
很慢
网络
解决
低功耗
web
爬虫
服务器
组装
sublime
换行
字符串
替换
time
timestamp
小结
时间
caddy
https
部署
多个
python
判断
当前
是否
google
身份验证
authenticator
迁移
手机
api
搜索引擎
网址
提交
自动
变砖
arris
ac1750
sbr
路由
硬件加速
ubnt
er
固件
openwrt
usb
上网卡
共享
解析
电子书
信息
u盘
diskutil
格式化
顽固
文件
wkwebview
ios
载入
灵活
bbr
开启
cjson
lua
module
错误
自动更新
microsoft
关闭
静音
风扇
主机
笔记本
改造
微信
尝鲜
视频
体验
cpu
debian
ubuntu
查看
温度
chrome
server
浏览
gnu
linux
安装
系统启动
编译
宅家
坑记
屏幕
动手
quic
抢先
useragent
蜘蛛
真假
识别
最近发表
- Mac 关闭 Microsoft 自动更新
- Mac 登录 App Store 出现“发生了未知错误”的解决方法
- 老笔记本改造为无风扇静音主机方案
- 自己组装21瓦低功耗家庭爬虫、文件、web服务器
- 微信视频号尝鲜体验
- Ubuntu/Debian 查看CPU温度的方法
- 在Ubuntu/debian Server 系统使用Chrome 无头浏览模式
- 换手机后 Google 身份验证器 Google Authenticator 数据迁移的简单方法
- 使用Golang selenium WebDriver 自动登录微博
- 在 Ubuntu 或其它 GNU/Linux 系统下安装 Debian
- Mac 下制作 USB ubuntu/debian 系统启动、安装盘的几种方法
- ubuntu/debian 下自行编译 OpenWRT 固件
- 宅家自己动手换手机屏幕掉坑记
- 路由 UBNT ER-X 官方固件升级及开启硬件加速的方法
- 在 Nginx 和 Golang web 上抢先体验 QUIC
- 从UserAgent识别搜索引擎并判断真假蜘蛛
最近浏览
- VirtualBox 虚拟机里网络很慢的解决方法
- 自己组装21瓦低功耗家庭爬虫、文件、web服务器
- Sublime 把字符串替换为换行
- golang timestamp time 时间戳小结
- 使用caddy 快速部署多个https 网站
- python 判断当前时间是否在某两个时间点之间
- 换手机后 Google 身份验证器 Google Authenticator 数据迁移的简单方法
- 利用 API 自动向搜索引擎提交网址
- ARRIS SBR-AC1750 路由变砖拆解折腾
- 路由 UBNT ER-X 官方固件升级及开启硬件加速的方法
- Openwrt 使用USB 4G 上网卡共享网络
- python 解析电子书的信息
- 在终端使用Mac diskutil 命令格式化顽固U盘
- IOS WKWebView 灵活载入本地文件和网络文件
- Openwrt 路由上开启BBR
- 出现 lua module 'cjson' not found 错误的解决方法