您好,欢迎来到思海网络,我们将竭诚为您提供优质的服务! 诚征网络推广 | 网站备案 | 帮助中心 | 软件下载 | 购买流程 | 付款方式 | 联系我们 [ 会员登录/注册 ]
促销推广
客服中心
业务咨询
有事点击这里…  531199185
有事点击这里…  61352289
点击这里给我发消息  81721488
有事点击这里…  376585780
有事点击这里…  872642803
有事点击这里…  459248018
有事点击这里…  61352288
有事点击这里…  380791050
技术支持
有事点击这里…  714236853
有事点击这里…  719304487
有事点击这里…  1208894568
有事点击这里…  61352289
在线客服
有事点击这里…  531199185
有事点击这里…  61352288
有事点击这里…  983054746
有事点击这里…  893984210
当前位置:首页 >> 技术文章 >> 文章浏览
技术文章

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

添加时间:2011-2-24  添加: admin 

 一。AS4 升级步骤

    1.建议使用源码安装方式,下载安装包

    cd /root

    wget -c "ftp://ftp.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssh-5.0p1.tar.gz"

    tar zxvf openssh-5.0p1.tar.gz

    cd openssh-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/

    注意: OpenSSL 0.9.5a属于可接受的版本,但是在使用SSH protocol 1 时,一些加密功能可能会出现问题(出于安全考虑,建议使用SSH protocol 2)。详见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

    make install

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

    diff sshd_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 ——add sshd

    8.重起sshd服务

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

    /sbin/service sshd start

  >/root/.ssh/known_hosts

    用ssh登陆测试,如果能正常登录就可以换回管理员使用的ssh端口(切换之前还是必须把旧版ssh占用的端口换掉)。

    注意:远程对ssh所做的任何重大修改,必须确保有另外的方式可以登录服务器。

    完成所有工作后,把原有的sshd服务关闭。

    /etc/init.d/sshd.bak stop

    ssh升级完成,新版的/usr/local/sbin/sshd将代替旧版的/usr/sbin/sshd

    如果不能登陆,请检查。
   
     二。openSSH升级步骤:

    1.启动telnet服务

    vi /etc/inetd.conf

    telnet stream tcp nowait root /usr/libexec/telnetd telnetd

    检查/etc/rc.conf中是否inetd_enable="YES,/etc/rc.d/inetd restart,启动inetd

    用telnet登陆服务器,进行下面操作

    2.升级openssh

    cd /root/

    wget -c ftp://ftp.openbsd.org/pub/OpenBS …… penssh-5.0p1.tar.gz

    tar zxvf openssh-5.0p1.tar.gz

    cd openssh-5.0p1

    。/configure ——prefix=/usr ——sysconfdir=/etc/ssh ——libexecdir=/usr/libexec/openssh ——without-zlib-version-check

    make

    make install

    对比安装默认和当前配置文件,个别重要参数请务必修改

    diff sshd_config /etc/ssh/sshd_config

    检查配置文件的正确性

    grep -v ^# /etc/ssh/sshd_config | awk '{print $1}' | sort | uniq -d

    是否有重复的行

    /usr/sbin/sshd -t

    参数是否正确

    重起sshd

    kill -HUP `cat /var/run/sshd.pid`

    用ssh登陆检查openssh服务是否安装,启动正常

    关闭telnet服务,退出telnet

    killall inetd

    确认telnet服务关闭

    3.关于openssl的升级:

    最新的openssl包,http://www.openssl.org/source/openssl-0.9.8g.tar.gz

    可采用源码安装的形式,

    。/config ——prefix=/usr/local/openssl-0.9.8

    make

    make install

    然后升级SSH,将 ——with-ssl-dir指向openssl的安装目录。

    三。FAQ

    启动sshd 服务的时候提示错误Unsupported option UsePAM?

    答:默认的configure没有启用——with-pam选项,如果在sshd_config配置文件里加入

    UsePAM no 就会导致上面的错误提示。UsePAM与ssh密码认证相关,但公司服务器禁止通过密码认证方式登录。所以编译的时候不建议使用——with-pam选项,配置文件里不使用UsePAM no,而改为使用

    PasswordAuthentication no ChallengeResponseAuthentication no的方式来禁止密码登录。
    关键字:服务器、源码编译

分享到:

顶部 】 【 关闭
版权所有:佛山思海电脑网络有限公司 ©1998-2024 All Rights Reserved.
联系电话:(0757)22630313、22633833
中华人民共和国增值电信业务经营许可证: 粤B1.B2-20030321 备案号:粤B2-20030321-1
网站公安备案编号:44060602000007 交互式栏目专项备案编号:200303DD003  
察察 工商 网安 举报有奖  警警  手机打开网站