Linux SSH2服务配置详解

9814阅读 0评论2011-03-30 greendays
分类:LINUX

在Linux上运行各种服务的配置

SSH是一个用来替代TELNETFTP以及R命令的工具包,主要是想解决口令在网上明文传输的问题。为了系统安全和用户自身的权益,推广SSH是必要的。SSH有两个版本,我们现在介绍的是版本2

  1. 安装SSH

具体步骤如下:

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

  2. 成为超级用户(root).

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

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

  4. cd ssh-2.3.0

  5. ./configure

  6. # make

  7. make install

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

二、配置

SSH的配置文件在/etc/ssh2下,其中包括sshd2的主机公钥和私钥:hostkeyhostkey.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之前,都要完成以下步骤:

  1. 在本地主机(比如,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_aid_dsa_1024_a.pub)存放在你家目录的~/.ssh2目录下。和用户相关的SSH配置文件都在~/.ssh2下。私钥由用户保存在本地主机上,而公钥需传送到远地主机的你自己的帐号的~/.ssh2下,如果你要用ssh2访问本地主机的话。

     

  2. ~/.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上传即可。

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

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

  2. 现在你可以从本地用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主机上。

 
上一篇:我的IT生涯【转帖】
下一篇:Automating rsync with a Simple Expect Script