浅析Linux服务器OpenSSH的源码编译与升级


Linux现在已经成为了主流,很多的人都在用Linux系统,从中我们也发现很多问题,今天主要讲Linux服务器中OpenSSH的源码编译与升级,希望大家能学会Linux服务器的问题。

1.建议使用源码安装方式,下载安装包
cd/root
wget-c"ftp://ftp.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssh-5.0p1.tar.gz"
tarzxvfopenssh-5.0p1.tar.gz
cdopenssh-5.0p1

2.升级请确认Zlib和OpenSSL的版本:

openssh-5.0p1要求Zlib的版本在1.2.1.2以上,OpenSSL版本在0.9.6以上。下面是Zlib和OpenSSL的官方地址:
http://www.gzip.org/zlib/
http://www.openssl.org/

注意:OpenSSL0.9.5a属于可接受的版本,但是在使用SSHprotocol1时,一些加密功能可能会出现问题出于安全考虑,建议使用SSHprotocol2)。详见INSTALL文档。

3.编译常用的参数——prefix=和——sysconfdir=,省略以上参数,默认的ssh将安装在/usr/local/bin下,sshd装在/usr/local/sbin,sftp-server装在/usr/local/libexec/sftp-server,配置文件在/usr/locale/etc下。
/configure——sysconfdir=/etc/ssh
make
makeinstall

4.对比安装默认和当前配置文件,个别重要参数请务必修改
diffsshd_config/etc/ssh.bak/sshd_config

5.配置文件推荐设置

确认/usr/local/libexec/sftp-server路径是否正确

6.检查配置文件的正确性
grep-v^#/etc/ssh/sshd_config|awk'{print$1}'|sort|uniq-d

是否有重复的行
/usr/local/sbin/sshd-t

参数是否正确

7.添加/etc/init.d脚本和service服务

先备份原来的脚本cp/etc/init.d/sshd/etc/init.d/sshd.bak

主要是修改ssh-keygen和sshd的路径。PID文件也作相应修改,避免跟之前的sshd有冲突,这样就能够在保证原有sshd不受影响的情况下配置新的sshd服务。修改下面三项:

原来:

KEYGEN=/usr/bin/ssh-keygen
SSHD=/usr/sbin/sshd
PID_FILE=/var/run/sshd.pid

改成:

KEYGEN=/usr/local/bin/ssh-keygen
SSHD=/usr/local/sbin/sshd
PID_FILE=/var/run/sshd2.pid

添加service服务:
/sbin/chkconfig——addsshd

8.重起sshd服务

注意:启动新的sshd服务前,先临时修改sshd_config里的端口,避免跟原有ssh端口冲突。
/sbin/servicesshdstart

本文介绍的Linux服务器中OpenSSH的源码编译与升级问题,希望对你有所帮助。

  1. 教你Open Suse Linux服务器配置方法
  2. 全面解析Suse Linux通过sun测试
  3. 学前指导:SUSE Linux
  4. 关注Open Suse与Google编程之夏项目
  5. 阐述Open SUSE中Jdk,mysql安装

相关内容