免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 3072 | 回复: 0

在Solaris8上安装OPENSSH [复制链接]

论坛徽章:
0
发表于 2006-01-23 19:43 |显示全部楼层
安装步骤 \r\n\r\n初始步:得到Solaris 8的random补丁 \r\n\r\nPRNG is not seeded这个问题所困扰 下面是我的解决办法 \r\n首先要保证openssh所要求的包你都安装了 \r\n1。sun的patch 112438-01 \r\n其实这个patch安装了有时也没有用 打这个patch的目的是因为8默认没有一个随机数设备 \r\n安装这个patch就是为解决这个问题 但从实际使用情况来看,没有什么用 所以建议不要安装。 \r\n\r\n2。安装一个第3方的软件 ANDIrand-0.7-5.8-sparc-1.pkg \r\n安装了这个软件之后,会在/dev/目录下生成2个随机数设备 \r\nrandom urandom \r\n安装之后不用重起 \r\n这时你在起 openssh 就会正常了 \r\n\r\n这个软件的下载地址 \r\nfor 2.6 \r\nhttp://www.cosy.sbg.ac.at/~andi/ ... 0.7-5.6-sparc-1.pkg \r\nfor 8 \r\nhttp://www.cosy.sbg.ac.at/~andi/ ... 0.7-5.8-sparc-1.pkg \r\n\r\n\r\n\r\n第一步:获得安装包 \r\n\r\n从这你可获得安装包,对于SPARC系统 \r\n\r\nopenssh-3.5p1-sol8-sparc-local.gz \r\n\r\nopenssl-0.9.6g-sol8-sparc-local.gz \r\n\r\ntcp_wrappers-7.6-sol8-sparc-local.gz (可选,但推荐安装) \r\n\r\nzlib-1.1.4-sol8-sparc-local.gz \r\n\r\nlibgcc-3.2-sol8-sparc-local.gz \r\n\r\nperl-5.6.1-sol8-sparc-local.gz (可选) \r\n\r\nprngd-0.9.25-sol8-sparc-local.gz (可选) \r\n\r\negd-0.8-sol8-sparc-local.gz (可选) \r\n\r\n对于Intel系统: \r\n\r\nopenssh-3.5p1-sol8-intel-local.gz \r\n\r\nopenssl-0.9.6g-sol8-intel-local.gz \r\n\r\ntcp_wrappers-7.6-sol8-intel-local.gz (可选,但推荐安装) \r\n\r\nzlib-1.1.4-sol8-intel-local.gz \r\n\r\nlibgcc-3.2-sol8-intel-local.gz \r\n\r\nperl-5.6.1-sol8-intel-local.gz (可选) \r\n\r\nprngd-0.9.25-sol8-intel-local.gz (可选) \r\n\r\negd-0.8-sol8-intel-local.gz (可选) \r\n\r\n假如你已经安装了其中一些包的话,可以跳过下载,但是很多包都是最新的。 \r\n\r\n\r\n第二步:安装软件包 \r\n\r\n文件下载完之后,进入下载目录并运行如下命令(此以sparc系统为例,如是Intel系统,换为 \r\n\r\nIntel文件即可): \r\n\r\n# gunzip openssh-3.5p1-sol8-sparc-local.gz \r\n\r\n# gunzip openssl-0.9.6g-sol8-sparc-local.gz \r\n\r\n# gunzip zlib-1.1.4-sol8-sparc-local.gz \r\n\r\n# gunzip libgcc-3.2-sol8-sparc-local.gz (假如你还未安装gcc 3.2) \r\n\r\n# gunzip tcp_wrappers-7.6-sol8-sparc-local.gz (可选) \r\n\r\n\r\n其他可选包也可同样操作,然后用root权限运行如下命令 \r\n\r\n\r\n# pkgadd -d openssh-3.5p1-sol8-sparc-local \r\n\r\n# pkgadd -d openssl-0.9.6g-sol8-sparc-local \r\n\r\n# pkgadd -d zlib-1.1.4-sol8-sparc-local \r\n\r\n# pkgadd -d libgcc-3.2-sol8-sparc-local (假如你还未安装gcc 3.2) \r\n\r\n# pkgadd -d tcp_wrappers-7.6-sol8-sparc-local (可选) \r\n\r\n一旦你已经安装了以上包后,在目录/usr/local下你将得到很多子目录。ssl文件的默认路径是 \r\n\r\n/usr/local/ssl。当这些文件被编译为不将目录(/usr/local/lib和/usr/local/ssl/lib)加入 \r\n\r\nLD_LIBRARY_PATH,那可能将需要设置它们。现在你将可以在目录/usr/local/bin中找到ssh在目 \r\n\r\n录/usr/local/sbin中找到sshd。确定你将目录/usr/local/bin和目录/usr/local/sbin加到了你 \r\n\r\n的PATH环境变量中。在可选的egd包中的perl脚本程序(.pl后缀)将要在目录/usr/local/bin中 \r\n\r\n寻找perl。假如你使用的是Sun Perl,那么Perl脚本程序开头改为/usr/bin,然而使用安装包的 \r\n\r\n为/usr/local/bin \r\n\r\n\r\n第三步:建立sshd用户和/var/empty目录 \r\n\r\nopenssh 3.5p1中采用了一种新的安全方式被称为特权分隔。具体内容你可以查看在openssh的源 \r\n\r\n文件目录中的README.privsep文件。现在这种方式在openssh中为默认设置。在进行之前你应该 \r\n\r\n阅读一下README.privsep文件,然后在用root权限执行这些步骤: \r\n\r\n# mkdir /var/empty \r\n\r\n# chown root:sys /var/empty \r\n\r\n# chmod 755 /var/empty \r\n\r\n# groupadd sshd \r\n\r\n# useradd -g sshd -c \'sshd privsep\' -d /var/empty -s /bin/false sshd \r\n\r\n\r\n/var/empty 不应该包含任何文件. \r\n\r\n假如你没有做这一步并试图启动sshd的话,你将得到error信息并且守护进程不会运行。 \r\n\r\n\r\n第四步:安装tcp_wrappers \r\n\r\ntcp_wrappers是被用来限制某些有限组机器访问你的通信端口,例如sshd程序使用的22端口。假 \r\n\r\n如你已经运行了tcp_wrappers,那么你只要确定sshd守护进程条目是否在/etc/hosts.allow和 \r\n\r\n/etc/hosts.deny文件中。假如你当前没有运行tcp_wrappers,你首先应该创建文件 \r\n\r\n/etc/hosts.deny并在文件中加入一行 \r\n\r\nsshd:ALL \r\n\r\n然后,创建文件/etc/hosts.allow并加入一行,例如 \r\n\r\nsshd:... \r\n\r\n\"...\"处填写你允许与你的机器通信的IP列表,例如 \r\n\r\nsshd:202.112.117. \r\n\r\n此例说明允许202.112.117.子网的机器访问你的机器。 \r\n\r\n\r\n第五步:安装ssh和sshd \r\n\r\n这是最后一步。每一台你想通过ssh客户端进行通信的机器都需要运行一个sshd守护进程。但是 \r\n\r\n首先,你需要在服务器机器上运行下面的命令来创建秘钥信息。再次确定目录/usr/local/bin和 \r\n\r\n/usr/local/sbin是否在你的PATH中。假如你以前曾经运行过sshd并且在/usr/local/etc下有秘 \r\n\r\n钥,那么运行下面这些命令将会覆盖它们。用root权限,输入: \r\n\r\n# ssh-keygen -t rsa1 -f /usr/local/etc/ssh_host_key -N \"\" \r\n\r\n# ssh-keygen -t dsa -f /usr/local/etc/ssh_host_dsa_key -N \"\" \r\n\r\n# ssh-keygen -t rsa -f /usr/local/etc/ssh_host_rsa_key -N \"\" \r\n\r\n每一条命令可能要花费几分钟的事件,这取决于你机器的速度。等到每条命令结束为止。 \r\n\r\n\r\n完成之后,我们可以创建脚本来启动sshd守护进程。下面编辑一个简单的启动脚本,并把它放置 \r\n\r\n在/etc/init.d目录下(root权限): \r\n\r\n\r\n#!/bin/sh \r\n\r\n\r\npid=`/usr/bin/ps -e | /usr/bin/grep sshd | /usr/bin/sed -e \'s/^ *//\' -e \'s/ .*//\'` \r\n\r\ncase $1 in \r\n\r\n\'start\') \r\n\r\n/usr/local/sbin/sshd \r\n\r\n;; \r\n\r\n\'stop\') \r\n\r\nif [ \"${pid}\" !=\"\" ] \r\n\r\nthen \r\n\r\n/usr/bin/kill ${pid} \r\n\r\nfi \r\n\r\n;; \r\n\r\n*) \r\n\r\necho \"usage: /etc/init.d/sshd {start|stop}\" \r\n\r\n;; \r\n\r\nesac \r\n\r\n\r\n然后运行如下命令: \r\n\r\n# chown root /etc/init.d/sshd \r\n\r\n# chgrp sys /etc/init.d/sshd \r\n\r\n# chmod 555 /etc/init.d/sshd \r\n\r\n# ln -s /etc/init.d/sshd /etc/rc2.d/S98sshd \r\n\r\n\r\n# /etc/rc2.d/S98sshd start \r\n\r\n通过上面这条命令可以手工启动进程 \r\n\r\n# /etc/rc2.d/S98sshd stop \r\n\r\n此条命令将停止sshd守护进程 \r\n\r\n# ps -e | grep sshd \r\n\r\n此条命令可以查看是否启动了sshd \r\n\r\n\r\n至此完成了ssh的安装。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP