Linux服务器密钥安全登录
使用密钥登录的好处:1、省事,不用每次去敲用户名和密码;2、安全,密钥长度一般是1024位,比我们设的密码要长得多;
以下是为新用户jackson添加密钥登录的步骤。
1、添加用户,并添加到sudoer。
useradd jackson
passwd jackson
添加到sudo组
visudo
在 root ALL=(ALL) ALL 后添加 hubery ALL=(ALL) ALL
2、生成并添加公钥到Server
ssh-keygen -t rsa
ssh-copy-id -i ~/.ssh/id_rsa.pub -p [port] user@server
如果当前用户不能ssh登陆(已经关闭了密码登录的情况),则可以
#local
scp -P [port] id_rsa.pub user1@server:/home/user1/
ssh user1@server -p [port]
su user2
cd ~
mkdir .ssh
chmod .ssh
cd .ssh
touch authorized_keys
chmod authorized_keys
sudo cat /home/user1/id_rsa.pub > authorized_keys
注意~/.ssh和~/.ssh/authorized_keys的权限。
本地添加私钥
vim ~/.ssh/config
添加以下内容
#iksdbsrvice
Host 192.168.0.122 IdentityFile ~/.ssh/id_rsa
注意,Host前没有空格,IdentifyFile前为一个tab
3、修改ssh配置文件,路径为/etc/ssh/sshd_config,去注释或修改一下内容
#
Port
#
PermitRootLogin no
#
RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys PermitEmptyPasswords yes
PasswordAuthentication no
UsePAM no
X11Forwarding yes
以上部分修改了sshd的端口,禁止了root用户的远程登陆,开启了密钥登录,禁止了密码登录。对于多个服务器的管理,我是直接替换的文件,这样简单且保持了一致性。
//local
scp -P [port] sshd_config user@server:/your/home/
//server
sudo cp ~/sshd_config /etc/ssh/sshd_config
4、iptables设置
sudo iptables -I INPUT -p tcp --dport -j ACCEPT
sudo service iptables save
5、重启sshd服务,测试登录
sudo service sshd restart
ssh user@server -p [port]
6、ssh登录时响应慢
常见的原因是因为server的sshd会去DNS查找访问client IP的hostname,如果DNS不可用或者没有相关记录,就会耗费大量时间。在server上/etc/ssh/sshd_config文件中修改或加入 UseDNS=no,另外在authentication gssapi-with-mic也有可能出现问题,在server上/etc/ssh/sshd_config文件中修改 GSSAPIAuthentication no。
注意:在没有测试通过之前,不要关闭之前打开的终端,这样即使是改错了,也是可以用这个终端改回来的。
Linux服务器密钥安全登录的更多相关文章
- 为Linux服务器的SSH登录启用Google两步验证
对于Linux服务器而言使用密钥登录要比使用密码登录安全的多,毕竟当前网上存在多个脚本到处进行爆破. 这类脚本都是通过扫描IP端的开放端口并使用常见的密码进行登录尝试,因此修改端口号也是非常有必要的. ...
- Linux ssh密钥自动登录(转)
在开发中,经常需要从一台主机ssh登陆到另一台主机去,每次都需要输一次login/Password,很繁琐.使用密钥登陆就可以不用输入用户名和密码了 实现从主机A免密码登陆到主机B,需要以下几个步骤: ...
- Linux ssh密钥自动登录 专题
在开发中,经常需要从一台主机ssh登陆到另一台主机去,每次都需要输一次login/Password,很繁琐.使用密钥登陆就可以不用输入用户名和密码了 实现从主机A免密码登陆到主机B(即把主机A的pub ...
- Linux服务器限制ssh登录,查看登录日志
网络上的服务器很容易受到攻击,最惨的就是被人登录并拿到root权限.有几个简单的防御措施: 1. 修改ssh服务的默认端口 ssh服务的默认端口是22,一般的恶意用户也往往扫描或尝试连接22端口.所以 ...
- 如何在Windows系统上利用Telnet协议连接Linux服务器
Telnet协议是Internet远程登录服务的标准协议,它为用户提供了在本地计算机上完成远程主机工作的能力.很多终端使用者都习惯在计算机上利用Telnet会话来远程控制服务器.这里小编就分两步为大家 ...
- Mac OS X下配置远程Linux 服务器SSH密钥认证自动登录
1. 在本地机器创建公钥 打开万能的终端,执行如下命令,无视一切输出,一路欢快地回车即可. ssh-keygen -t rsa -C 'your email@domain.com' -t 指定密钥类型 ...
- 使用XShell工具密钥认证登录Linux系统
如果你是一名Linux运维,那么Linux服务器的系统安全问题,可能是你要考虑的,而系统登录方式有两种,密码和密钥.哪一种更加安全呢? 无疑是后者! 这里我为大家分享用Xshell利器使用密钥的方式登 ...
- 使用ssh公钥密钥自动登陆linux服务器
转自:http://7056824.blog.51cto.com/69854/403669 作为一名 linux 管理员,在多台 Linux 服务器上登陆进行远程操作是每天工作的一部分.但随着服务器的 ...
- [zz] 使用ssh公钥密钥自动登陆linux服务器
目录 .生成密匙对 .拷贝公匙到远程机 .启动登陆代理 这种方法处理后每次需要运行命令:ssh-add ~/.ssh/id_dsa 作为一名 linux 管理员,在多台 Linux 服务器上登陆进行远 ...
随机推荐
- 关于MYSQL字符集问题(一)
MySQL的字符集支持(Character Set Support)有两个方面: 字符集(Character set)和排序方式(Collation). 对于字符集的支持细化到四个层次: 服务器(se ...
- Swift 错误记录
最近几天开始学习Swift,作为一个从 OC 转到 Swift 的程序员,我一直以为很简单.但是现在学习一个星期之后,发现问题还是蛮多的! 最大的问题就是 太特么 不习惯了!!!!!!!!!! 好吧, ...
- vue学习视频网址(各种前端视频 网址)
基础信息详解:https://segmentfault.com/blog/vueroad 网址:http://biaoyansu.com/18.1
- Informatica_(2)第一个例子
PowerCenter Repository Manager1.启动客户端程序连接服务器打开客户端(PowerCenter Repository Manager)PCRM;存储库--配置域--添加新域 ...
- C#委托深入学习
一基础学习: .Net delegate类型:委托跟回调函数是很有渊源的.回调其实跟通知机制有关,考虑这样一个基本的事件序列: a对象调用了b对象的某个方法,希望b对象在其方法完成之时调用a对象的某个 ...
- L1-033 出生年(15)(STL-set代码)
L1-033 出生年(15 分) 以上是新浪微博中一奇葩贴:"我出生于1988年,直到25岁才遇到4个数字都不相同的年份."也就是说,直到2013年才达到"4个数字都不相 ...
- hdu 2289 要二分的杯子
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2289 大意是 一个Cup,圆台形,给你它的顶部圆的半径,底部圆的半径,杯子的高度,和此时里面装的水的体 ...
- 修改别人写的Hibernate数据库操作代码
最近正在维护别人写的一个关于Hibernate操作数据库的项目,在运行测试的时候(向表中插入记录),报了一个错误:cannot insert a null into column(XXX字段名,下文统 ...
- BZOJ2730或洛谷3225 [HNOI2012]矿场搭建
BZOJ原题链接 洛谷原题链接 显然在一个点双连通分量里,无论是哪一个挖煤点倒塌,其余挖煤点就可以互相到达,而对于一个点双连通分量来说,与外界的联系全看割点,所以我们先用\(tarjan\)求出点双连 ...
- 在tableviewcell里面嵌入switch控件以及如何获取switch控件数据
主要是通过cell.accessoryView来添加switch控件- (UITableViewCell *)tableView:(UITableView *)tableView cellForRow ...