Chinaunix首页 | 论坛 | 博客
  • 博客访问: 26132
  • 博文数量: 11
  • 博客积分: 1400
  • 博客等级: 上尉
  • 技术积分: 140
  • 用 户 组: 普通用户
  • 注册时间: 2008-02-02 10:11
文章分类
文章存档

2008年(11)

我的朋友

分类: LINUX

2008-11-29 22:41:31

刚装了 FreeBSD 6.2。

sshd 连接注意:
1    默认启用公钥认证及密码认证(Secure Shell Client 登录不了,用 SecureCRT 5.0 没问题)
2    不允许 root 登录(必须先建立一个用户,而且是 wheel 组的,登录后再 su 到 root)

在线更改 SSHD 默认端口:
vi /etc/ssh/sshd_config
/etc/rc.d/sshd restart
做这一步的目的,就是把默认的 22 端口改成其他的,可以减少被攻击的可能性。

使用 SSH PUBLIC KEY

假设用户名是 leakon

方法一(由 FreeBSD 生成密钥对)

1 在FreeBSD中执行
ssh-keygen -t dsa

可得到
/home/leakon/.ssh/id_dsa
/home/leakon/.ssh/id_dsa.pub

2 可以用 WinSCP 下载这个两个文件到本地,保存到
C:\Documents and Settings\leakon\Application Data\VanDyke\

这是 SecureCRT 在 Windows 的 leakon 用户的程序数据文件夹中生成的目录

3 打开会话选项,在 分类 中选择 SSH2,在右边的 身份验证 中选择 公钥(PublicKey),然后点击旁边的 属性(Properites),选择 使用会话公钥设置(Use session public key setting),在 使用身份文件(Use identify file) 的输入框中,选择刚才下载回来的 id_dsa,注意,id_dsa 和 id_dsa.pub 要保存在一起(两个文件取名任意,但必须符合 somekey 和 somekey.pub)

4 按照 /etc/ssh/sshd_config 中指定的公钥文件名 AuthorizedKeysFile .ssh/authorized_keys,修改本地公钥文件名,在FreeBSD中执行
cd /home/leakon/.ssh/
mv id_dsa.pub authorized_keys

至此,方法一大功告成,重新用 SecureCRT 连接一下试试,直接就登录好了吧!

方法二(由SecureCRT生成密钥对)

1 设置好用户名后,用刚才方法一的第 3 步,打开那个对话框,这个时候,要单击 创建身份文件(Create Identify File),然后下一步,选择 DSA,生成 Identity 和 Identity.pub 两个文件

2 把 Identity.pub 上传到 FreeBSD 的 /home/leakon/.ssh 目录下

3 在 FreeBSD 中执行
ssh-keygen -X -f Identity.pub > authorized_keys

取消sshd密码认证方式

vi /etc/ssh/sshd_config
PasswordAuthentication no
/etc/rc.d/sshd restart


使用密匙对让putty(ssh)自动登录 第一步:生成密匙
   运行puttygen.exe,选择需要的密匙类型和长度。由于sshd默认使用SSH1
   协议,所以最好选择SSH1(RSA),长度设置为1024就可以了。
   生成后 Key passphrase 和 Confirm passphrase 两项可以保持为空
   这个东西是用来保护私匙的密码,如果没什么特别高的安全要求就不用了,
   免得登录时还是要输入一次密码。
   点击 Save public key 按钮和 Save private key 按钮保存公匙和私匙,
   例如 id_rsa1.pub 和 id_rsa1.prv。
   第二步:上传密匙
   用自己的帐号登录远程系统,然后执行下面的命令:
   cd ~
   mkdir .ssh
   cd .ssh
   cat > authorized_keys
   (此时用记事本打开 id_rsa1.pub 文件,选中所有内容,按 Ctrl+C 复制
   到剪贴板中,然后在Putty窗口中按Shift+Ins粘贴)
   (再按Ctrl+D键,完成文件的创建)
   第三步:设置Putty
   启动Putty,设置好session的各项参数,然后从左边选择“SSH->Auth”,
   点击 Browse 按钮,选择 id_rsa1.prv 文件。
   再从左边选择 Session,然后点击 Save 按钮把修改保存下来。然后点击
   Open 按钮就可以登录了。
   如果上面的操作都没有问题,那这时应该就自动登录了,无需输入密码。
   =================================================
   如果要用SSH2协议,需要修改一下 /etc/ssh/ssh_config 文件,加入:
   Protocol 2,1
   如果没有 puttygen.exe,那么可以用 bsd/linux 自带的 ssh-keygen 生成
   密匙,命令格式如下:
   ssh-keygen -b 密匙长度 -t 密匙类型
   密匙类型可以是:rsa1 (对应SSH1 RSA)、rsa 和 dsa (对应SSH2)
   不过 ssh-keygen 生成的SSH2密匙和putty的密匙格式不同,无法直接使用,
   必须用 puttygen.exe 转换一下。所以大家还是用 rsa1 好了,反正一般用
   途也没什么区别。
   =================================================
   可能出现的几种问题:
   1、Server refused our key
   公匙和私匙不匹配,或者没有 authorized_keys 文件
   2、Unable to use key file "id_rsa1.prv" (SSH1 private key)
   私匙文件的格式不正确
   =================================================
   其他信息:
   putty 主页 -
   ~sgtatham/putty/

阅读(1628) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~