URN Logo
UNIX Resources » BSD » FreeBSD » FreeBSD China » 技术交流 » 353 » 安装配置SSH(Secure Shell)
announcement 声明: 本页内容为FreeBSD China的内容镜像,文章的版权以及其他所有的相关权利属于FreeBSD China和相应文章的作者,如果转载,请注明文章来源及相关版权信息。
freebsdchina.org
  中文文档计划
  Chinese Ports 讨论
  初学指南
  技术交流
  设备驱动
  WEB服务
  Proxy服务
  JAVA平台
  软件发布
  休闲话题
  静语轩
  系统编程
  脚本编程
  内核开发技术
  网络安全
  mail系统
  X-Win系统
  信息交流
  历史-文化-设计-实现
  安装-配置-优化-安全
  中文-桌面-开发-调试
   
安装配置SSH(Secure Shell)
Subject: 安装配置SSH(Secure Shell)
Author: 赛扬600    Posted: 2002-07-20 17:53:02    Length: 3498 byte(s)
[Original] [Print] [Top]
SSH是一个用来替代TELNET、FTP以及R命令的工具包,主要是想解决口令在网上明文传输的问题。为了系统安全和用户自身的权益,推广SSH是必要的。SSH有两个版本,我们现在介绍的是版本2。



安装SSH

具体步骤如下:


获得SSH软件包。 (ftp://ftp.pku.edu.cn:/pub/unix/ssh-2.3.0.tar.gz)


成为超级用户(root).


# gzip –cd ssh-2.3.0.tar.gz |tar xvf –


# cd ssh-2.3.0


# ./configure

注意,如果你希望用tcp_wrappers来控制SSH,那么在configure时需要加上选项“--with-libwrap=/path/to/libwrap/”, 用来告诉SSH关于libwrap.a 和tcpd.h的位置。


# make


# make install

和SSH有关的程序都放置在/usr/local/bin下,包括ssh,sftp,sshd2, ssh-keygen等。


二、配置

SSH的配置文件在/etc/ssh2下,其中包括sshd2的主机公钥和私钥:hostkey和hostkey.pub。这两个文件通常是在安装SSH时自动生成的。你可以通过下面的命令重新来生成它们:

# rm /etc/ssh2/hostkey*

# ssh-keygen2 –P /etc/ssh2/hostkey

而ssh2_config 文件一般情形下无需修改。


三、启动sshd2

每个要使用SSH的系统都必须在后台运行sshd2。用手工启动:

# /usr/local/bin/sshd2&

可以在“/etc/rc2.d/S99local”中加入该命令,这样系统每次启动时会自动启动sshd2。


四、用tcp_wrappers控制SSH

安装SSH的站点可以用tcp_wrappers来限制哪些IP地址可以通过ssh来访问自己。比如,在/etc/hosts.allow中加入

sshd,sshd2: 10.0.0.1

那么只有10.0.0.1可以通过ssh来访问该主机。


以上都是系统管理员完成的工作。下面我们说说普通用户如何使用SSH。


五、基本应用

每个用户在使用SSH之前,都要完成以下步骤:


在本地主机(比如,local.pku.edu.cn)上生成自己的ssh公钥和私钥。命令如下:

local# ssh-keygen

Generating 1024-bit dsa key pair

1 oOo.oOo.o

Key generated.

1024-bit dsa, teng@ns, Fri Oct 20 2000 17:27:05

Passphrase :************ /*在此输入你的口令,以后访问这台主机时要用。

Again :************ /*

Private key saved to /home1/teng/.ssh2/id_dsa_1024_a

Public key saved to /home1/teng/.ssh2/id_dsa_1024_a.pub


生成的私钥和公钥(id_dsa_1024_a和id_dsa_1024_a.pub)存放在你家目录的~/.ssh2目录下。和用户相关的SSH配置文件都在~/.ssh2下。私钥由用户保存在本地主机上,而公钥需传送到远地主机的你自己的帐号的~/.ssh2下,如果你要用ssh2访问本地主机的话。


在~/.ssh2下创建“identification”文件用来说明进行身份认证的私钥。命令如下:


local:~/.ssh2# echo "IdKey id_dsa_1024_a" > identification


3.同样地,在远地主机(比如,remote.pku.edu.cn)上完成上面步骤。

4.将本地(local.pku.edu.cn)下你自己(这里是“teng”)的公钥(id_dsa_1024_a.pub)拷贝到远地主机(remote.pku.edu.cn)上你自己家目录下的.ssh2目录下,可命名为“local.pub”,一般用ftp上传即可。


在远地主机上,你自己家目录的.ssh2目录下,创建“authorization”文件,其中指定用来进行身份认证的公钥文件。命令如下:

remote:~/.ssh2# echo “Key local.pub” > authorization


现在你可以从本地用ssh2登录到远地系统了。命令如下:

local# ssh remote.pku.edu.cn

Passphrase for key "/home1/teng/.ssh2/id_dsa_1024_a" with comment "1024-bit dsa,

teng@ns, Fri Oct 20 2000 17:27:05":***********


这时会要你输入你的ssh口令(Passphrase)。验证通过后,即登录到remote主机上。
----
[Original] [Print] [Top]
Subject: (空)
Author: delphij    Posted: 2002-09-14 05:57:02    Length: 193 byte(s)
[Original] [Print] [Top]
我个人认为
cd /usr/ports/security/ssh2
make all install clean
可能比较好……
不过相当讨厌的是这个ssh2会给你安装一个zlib,需要定义一个符,否则用zlib的程序多半都没法正常编译。
[Original] [Print] [Top]
Subject: 最好不要用tcp_wrapper
Author: bantana    Posted: 2002-09-14 20:03:37    Length: 268 byte(s)
[Original] [Print] [Top]
最好不要用tcp_wrapper,
增加tcp_wrapper选项反而容易受dos攻击,
因为tcp_wrapper每进来一个连接都fork一个进程,这样大量的不断的尝试连接反而会耗尽系统的资源。
而sshd daemon是有进程数限制的。
实际上sshd使用公钥连接根本不存在ip地址的问题。因为它只认公钥。
[Original] [Print] [Top]
« Previous thread
FREEBSD安装起来容易吗??
技术交流
353
Next thread »
急切要解决的问题!
     

Copyright © 2007 UNIX Resources Network, All Rights Reserved.      About URN | Privacy & Legal | Help | Contact us
备案序号: 京ICP备05006143    webmaster: webmaster@unixresources.net
This page created on 2007-07-26 13:37:11, cost 0.011543035507202 ms.