免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 5107 | 回复: 12
打印 上一主题 下一主题

[OpenBSD] 在OpenBSD上通过密钥来远程连接服务器 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2006-05-22 01:26 |只看该作者 |倒序浏览
此方法在VMWARE5.5上测试成功。在本文里远程服务器的地址是192.168.0.30 。大家可以使用域名IP地址来替换。本文中服务器和客户端的系统都是OpenBSD。
1. 安装OpenBSD。关于安装OpenBSD的方法就不在此说明,网上有很多教程。
2. 生成认证密钥
正常安装OpenBSD的话,Openssh是默认被安装的。用ssh-keygen在客户端的openbsd系统上生成认证密钥对。
语法:ssh-keygen [-b bits] -t type
说明:-b 后面接数字 1024,2048,3072,4096 数字越大破解更困难,1024 基本可以满足网上商业活动。-t 后面接加密算法类型,详情请看Openssh manual 页。
例:
先用一个用户登录到客户端。再这里我是用root。
# ssh-keygen -b 1024 -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa): (输入存储路径,一般默认即可)
Enter passphrase (empty for no passphrase): (输入密码来保护私钥,针对私钥暴露的情况)
Enter same passphrase again: (重新输入密码)
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
fc:cc:ab:48:68:b1:e2:13:ab:91:d9:89:47:ad:85:18 root@bnn.my.domain
3  使用公钥
   现在~/.ssh/目录里面已经生成了此用户的认证密钥对。(id_rsa和 id_rsa.pub)id_rsa.pub就是公钥。把这个公钥复制到要登录的远程服务器的~/.ssh/目录里 ,改文件名为authorized_keys 。在这里我用的是root。
# scp /root/.ssh/id_rsa.pub root@192.168.0.30:/root/.ssh/authorized_keys
RSA key fingerprint is ef:05:e5:1c:26:31:59:b8:fb:3f:50:55:67:dd:3f:9e.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '192.168.0.30' (RSA) to the list of known hosts.
root@192.168.0.30's password: (输入远程服务器用户密码)
id_rsa.pub                                               100%  229     0.2KB/s   00:00
现在可以用密钥来登录
# ssh root@192.168.0.30
Enter passphrase for key '/root/.ssh/id_rsa': (输入私钥密码)
Last login: Fri May 19 09:54:03 2006
Welcome to OpenBSD: The proactively secure Unix-like operating system.

Please use the sendbug(1) utility to report bugs in the system.
Before reporting a bug, please try to reproduce it with the latest
version of the code.  With bug reports, please try to ensure that
enough information to reproduce the problem is enclosed, and if a
known fix for it exists, include that as well.

Terminal type? [vt100]
Read the afterboot(8) man page for administration advice.                              
#
现在用密钥可以登录到远程服务器。但是如果没有密钥,有用户密码也可以登录到远程服务器。那么我们修改一下/etc/ssh/sshd_config 来禁止用密码远程登录。在远程服务器
# vi /etc/ssh/sshd_config
#PasswordAuthentication yes 改成 去掉注释#号 PasswordAuthentication no   然后重新启动远程服务器。
现在我们作一个实验。在客户端先备份认证密钥对,然后删除,再用ssh远程登录到远程服务器。
# cd /root/.ssh/
# mkdir /root/.ssh/backup
# cp id_rsa* backup
# rm id_rsa*
# ssh 192.168.0.30
Permission denied (publickey,keyboard-interactive).
服务器不允许登录。
再恢复备份
# cd /root/.ssh/
# ls
backup      
# cp ./backup/id_rsa* ./
再用ssh远程登录到远程服务器。
# ssh root@192.168.0.30
Enter passphrase for key '/root/.ssh/id_rsa':
Last login: Fri May 19 10:14:36 2006
Welcome to OpenBSD: The proactively secure Unix-like operating system.

Please use the sendbug(1) utility to report bugs in the system.
Before reporting a bug, please try to reproduce it with the latest
version of the code.  With bug reports, please try to ensure that
enough information to reproduce the problem is enclosed, and if a
known fix for it exists, include that as well.

Terminal type? [vt100]
Read the afterboot(8) man page for administration advice.
#
又可以登录了。但是只能用密钥来登录。修改sshd_config 后,服务器上所有用户都必须有自己的认证密钥对才能登录服务器了。

这里还有一个思路,觉得很有趣就写在这里。 用VMWARE 安装一个OpenBSD 虚拟机。 然后设置好nat。能使虚拟机OpenBSD上网,然后用上述方法设置。用虚拟机来管理远程服务器。在windows用ssh客户端软件来管理OpenBSD虚拟机。这样一来整个操作过程是用ssh客户端程序登录到OpenBSD虚拟机,然后再用密钥登录到远程服务器。
这只是本人一个想法,不知道能不能起到防御黑客一点作用呢? 错误之处,请各位不惜指正。



[ 本帖最后由 llzqq 于 2006-5-23 07:37 编辑 ]

论坛徽章:
0
2 [报告]
发表于 2006-05-22 09:31 |只看该作者
直接用ssh客户端就可以了啊,为何还要VMWARE中转?

论坛徽章:
0
3 [报告]
发表于 2006-05-22 10:23 |只看该作者
支持一下,这对提高安全性有多大的帮助,试过才知道。

论坛徽章:
0
4 [报告]
发表于 2006-05-22 13:54 |只看该作者
直接用ssh客户端就可以了啊,为何还要VMWARE中转?


本文的方法是分两部分的. 一个是用户使用的客户端OS是 OpenBSD的PC. 这是本文主要的内容.

至于下面的思路呢 是因为好多人用 Windows 桌面系统. 假如系统上被安装了键盘记录器呢?
用VMWARE 中转一下,把密钥存在OpenBSD虚拟机里面, 再说平时不管理远程服务器,可以关闭这个虚拟机. 不知道有没有那么BT的黑客从虚拟机里偷出密钥, 再把私钥密码也弄到手啊 .

论坛徽章:
0
5 [报告]
发表于 2006-05-22 15:07 |只看该作者
你可以设置ssh 只允许连接的ip阿

论坛徽章:
0
6 [报告]
发表于 2006-05-22 15:24 |只看该作者
原帖由 bnn 于 2006-5-22 13:54 发表


本文的方法是分两部分的. 一个是用户使用的客户端OS是 OpenBSD的PC. 这是本文主要的内容.

至于下面的思路呢 是因为好多人用 Windows 桌面系统. 假如系统上被安装了键盘记录器呢?
用VMWARE 中转一下,把密 ...

你进入虚拟机后,难道键盘记录器就不记录你的操作了?

论坛徽章:
0
7 [报告]
发表于 2006-05-22 15:57 |只看该作者
见过硬件的pnp usb记录器吗,往你usb口一插,通过GPS卫星把键盘操作记录发到远程控制

安全,没有绝对,我们只能最大程度保障系统的安全

论坛徽章:
0
8 [报告]
发表于 2006-05-22 16:52 |只看该作者
MichaelBibby  发表于 2006-5-22 15:24
你进入虚拟机后,难道键盘记录器就不记录你的操作了?


当然记录啦, 但是黑客拿走保存在虚拟机里的私钥,应该不是很容易吧. 并不是说不能拿走. 只是说不容易.

确实我们只能最大程度保障系统的安全.

论坛徽章:
0
9 [报告]
发表于 2006-05-22 19:21 |只看该作者

re

还是比较认同楼主发的帖子,这个认同指得是敢于发帖记录自己的操作和思路,并且不是抄袭或转载,至于方法
简单也好复杂也好发上来让大伙关注一下,发表自己的意见或指导或修正我觉得挺好。

论坛徽章:
0
10 [报告]
发表于 2006-05-23 07:43 |只看该作者
关于密匙的存放安全,的确值得重视。放到U盘上随身携带,同时备份一个到光盘上。这个也许是比较适中的方案。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP