最新消息:

SSH认证方式

安全知识 admin 888浏览 0评论

SSH主要包括密码、公钥、GSSAPI等认证方式。
0×01. PasswordAuthentication 密码认证
传统的密码口令认证。配置如下:

PasswordAuthentication yes

0×02. PubkeyAuthentication 公钥认证
非对称密钥进行身份认证。公钥认证经常被用来进行Linux主机管理,可以不用输入密码进行登录。而在拿到主机权限却无法破解用户密码的情况下,也可以用此方法登录目标服务器。内网渗透中信息搜集时,也可以进行敏感私钥的搜集。
使用时需要配置被控制机的相应用户主目录下的.ssh目录下的文件。

      1. 生成非对称密钥对

可以使用RSA或者DSA算法。

ssh-keygen -t [rsa|dsa]

将会生成密钥文件和私钥文件 id_rsa,id_rsa.pub或id_dsa,id_dsa.pub(.pub为公钥)

      1. 把公钥复制到想要登陆的目标主机上

把公钥内容添加到欲授权的用户主目录的.ssh文件夹下的的authorized_key文件内。
将 .pub 文件复制到B机器的 .ssh 目录, 并 cat id_rsa.pub >> ~/.ssh/authorized_keys

      1. 修改sshd_config配置文件

PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys

      1. 重启SSH服务

service sshd restart 或者 /etc/rc.d/init.d/sshd restart

这样的话,本地指定匹配的私钥后,就可直接以相应用户的身份登陆目标主机。

0×03. GSSAPIAuthentication
公共安全事务应用程序接口。配置如下:

UseDNS yes
GSSAPIAuthentication yes
GSSAPICleanupCredentials yes

服务器会先根据客户端的 IP地址进行 DNS PTR反向查询出客户端的主机名,然后根据查询出的客户端主机名进行DNS正向A记录查询,并验证是否与原始 IP地址一致,通过此种措施来防止客户端欺骗。

0x0X. SSH其他相关文件
known_hosts:
该文件记录该主机访问过的ssh主机的公钥,已验证远程主机,每次访问时进行核对远程主机的公钥是否更改,防止劫持。
可以进行以下配置来忽略该验证
1. 手动删除修改known_hsots里面的内容;
2. 修改配置文件“~/.ssh/config”,加上这两行,重启服务器。

StrictHostKeyChecking no
UserKnownHostsFile /dev/null

转自:http://kingx.sinaapp.com/?p=530

转载请注明:jinglingshu的博客 » SSH认证方式


Warning: Use of undefined constant PRC - assumed 'PRC' (this will throw an Error in a future version of PHP) in /usr/share/nginx/html/wp-content/themes/d8/comments.php on line 17
发表我的评论
取消评论

表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址