1. 程式人生 > >升級openssh【linux平臺】

升級openssh【linux平臺】

建議在第一步配置telnet之前,首先配置yum,用於安裝可能需要的package

■■掛載OS的iso映象

mount -o loop/u01/soft/os/rhel-server-6.4-x86_64-dvd.iso /u01/soft/os/iso

■■config yum - local

適用於redhat6:如redhat6.6,centos6.5

■遮蔽預設配置目錄/etc/yum.repos.d

mv /etc/yum.repos.d /etc/yum.repos.d.old

■修改/etc/yum.conf,新增檔案位置,並啟用enabled=1

[server]

name=server

baseurl=file:///u01/soft/os

enabled=yes

gpgcheck=no

■配置httpd服務,用以配置http方式的yum源

將document配置到iso所掛載的位置

■■config yum - http

■遮蔽預設配置目錄/etc/yum.repos.d

mv /etc/yum.repos.d /etc/yum.repos.d.old

■修改/etc/yum.conf

[os]

name=Red Hat Enterprise Linux

#sxyd-wxwy

baseurl = http://10.231.129.23

#hbyd-zhzy

#baseurl = http://10.216.6.138/os

gpgcheck=0

gpgkey = http://10.231.129.23/repodata/repomd.xml

一、■■配置telnet服務、gcc編譯器

目的:便於遠端操作、配置新版本的openssh,同時確保不會因為升級SSH失誤導致無法遠端登陸主機

■確認telnet服務是否已經安裝

yum info telnet*

■如果沒有安裝telnet-server

yum install telnet-server

■安裝telnet server後,修改/etc/xinetd.d/telnet的disable一行為no

service telnet

{

       flags           = REUSE

       socket_type     = stream

       wait            = no

       user            = root

       server          =/usr/sbin/in.telnetd

       log_on_failure  += USERID

       disable         = no

}

■安裝telnet server後,改名/etc/securetty檔案

mv /etc/securetty /etc/securetty.old

■啟動xinetd服務,即同時啟動了telnet服務

service xinetd start

■此時測試能否遠端telnet登陸伺服器,確認telnet服務生效後,就可以進行下一步

■升級openssh需gcc編譯器,確認是否安裝

yum info gcc

如沒有安裝,則安裝:

yum install gcc

二、■■升級Zlib

www.zlib.net

下載最新的原始碼【已下載】

tar xvfz zlib-1.2.11.tar.gz

cd zlib-1.2.11

./configure --prefix=/usr/local/zlib

make

make install

三、■■升級openssl

【升級openssl會導致yum、python等一系列依賴問題,因此暫時不升級openssl,只升級openssh到7.2版本】

www.openssl.org

下載最新的原始碼【已下載】

■解除安裝已有的openssl

rpm -e `rpm -qa | grep openssl`--allmatches --nodeps

■重新配置編譯openssl到系統預設目錄

tar xvfz openssl-1.1.0f.tar.gz

cd openssl-1.1.0f

./config --prefix=/usr --shared zlib

(安裝openssl, 記得加--shared選項, 否則openssh編譯的時候可能會找不到新安裝的openssl的library, 會報錯:openssl的 header和library版本不匹配)

(20151020:增加了zlib選項,可解決最後的錯誤提示“Zlib not supported: compression tests skipped”)

make clean(這一步很關鍵,務必執行)

make

make test(這一步是進行SSL 加密協議的完整測試,如出現錯誤需找出原因,否則可能導致 SSH 不能使用)

make install

■如果make時報錯如下

c_zlib.c:25:18: 錯誤:zlib.h:沒有那個檔案或目錄

原因是沒有zlib的devel庫,需要安裝devel庫:yum install zlib-delvel

■確認openssl版本

openssl version -a

■升級openssl後可能會導致如下錯誤1

[[email protected] openssh-7.5p1]# yum infovncserver

There was a problem importing one of thePython modules

required to run yum. The error leading tothis problem was:

  libssl.so.10: cannot open shared object file: No such file or directory

Please install a package which providesthis module, or

verify that the module is installedcorrectly.

It's possible that the above module doesn'tmatch the

current version of Python, which is:

2.6.6 (r266:84292, Oct 12 2012, 14:23:48)

[GCC 4.4.6 20120305 (Red Hat 4.4.6-4)]

ln相關的lib庫檔案到預設的目錄即可

ln -s /usr/lib64/libssl.so.1.1/usr/lib/libssl.so.10

■升級openssl後可能會導致如下錯誤2

[[email protected] openssl-1.1.0f]# yum infovncserver

There was a problem importing one of thePython modules

required to run yum. The error leading tothis problem was:

  libcrypto.so.10: cannot open shared object file: No such file ordirectory

Please install a package which providesthis module, or

verify that the module is installedcorrectly.

It's possible that the above module doesn'tmatch the

current version of Python, which is:

2.6.6 (r266:84292, Oct 12 2012, 14:23:48)

[GCC 4.4.6 20120305 (Red Hat 4.4.6-4)]

如下方法並不能解決問題

ln -s /usr/lib64/libcrypto.so.1.1/usr/lib/libcrypto.so.10

從os源安裝低版本的openssl包,可恢復libssl庫,但openssl版本仍然過低,無法安裝最新版本的openssh7.5

rpm -ivh openssl-1.0.0-27.el6.x86_64.rpm

rpm -ivhopenssl-devel-1.0.0-27.el6.x86_64.rpm

四、■■升級openssh

www.openssh.com

下載相關原始碼【已下載,使用7.2版本】

■備份已有的ssh

mv /etc/ssh /etc/ssh.old

■解除安裝ssh

rpm -e `rpm -qa|grep openssh` --allmatches--nodeps

■配置、編譯、安裝ssh

tar xvfz openssh-7.5p1.tar.gz

cd openssh-7.5p1

./configure --prefix=/usr--sysconfdir=/etc/ssh --with-pam --with-zlib=/usr/local/zlib--with-md5-passwords

如果提示沒有openssl標頭檔案,則需安裝openssl-devel開發包:yum install openssl-devel

如果提示openssl版本太低:OpenSSL>= 1.0.1 required,則需升級openssl

如果提示沒有pam標頭檔案:PAMheaders not found,則需安裝PAM開發包:yuminstall pam-devel

make

make install

■配置進系統服務

cp contrib/redhat/sshd.init/etc/init.d/sshd

chkconfig --add sshd

■修改PAM配置

cp contrib/sshd.pam.generic /etc/pam.d/sshd

這裡的lib需要修改為正確的路徑,否則會在/var/log/secure裡面看到無法找到lib的報錯,導致pam無法生效!路徑可參見/etc/pam.d/裡面的su、rlogin等檔案,將路徑/lib/security/刪掉即可。

■確認升級後的版本

ssh -V

■修改sshd配置

根據原sshd配置:/etc/ssh.old/sshd_config

修改新sshd配置:/etc/ssh/sshd_config

ssh埠號是否是22

#Port 22

是否允許root遠端登陸

#PermitRootLogin yes

sshd預設沒開啟PAM支援

#UsePAM no

■重新啟動sshd服務

service sshd restart

■驗證可以遠端ssh登陸以後,可以關閉telnet服務

service xinetd stop

■■其他可能的問題

■升級完成後ssh登入正常,sftp不能通過4A正常登入;

處理方法:

將/etc/ssh/sshd_config檔案中的

# override default of no subsystems

Subsystem       sftp   /usr/local/openssh/libexec/sftp-server

修改為:

# override default of no subsystems

Subsystem      sftp   internal-sftp

#Subsystem       sftp   /usr/local/openssh/libexec/sftp-server

後重啟ssh後,繞行堡壘機登入正常;

■通過堡壘機登入裝置失敗,提示“不能切換至"XXXXXXXXXXXXX"指定目錄”;

處理方法:

修改/etc/ssh/sshd_config檔案,新增

KexAlgorithms +diffie-hellman-group1-sha1

重啟sshd服務後,通過堡壘機登入sftp正常。

相關推薦

升級opensshlinux平臺

建議在第一步配置telnet之前,首先配置yum,用於安裝可能需要的package ■■掛載OS的iso映象 mount -o loop/u01/soft/os/rhel-server-6.4-x86_64-dvd.iso /u01/soft/os/iso ■■conf

Linux技術如何升級cmake

如果系統中的cmake版本無法滿足我們的需求,我們可以通過原始碼對cmake進行重現安裝。 1 檢視cmake版本 cmake --version 2 解除安裝過去的版本 sudo apt-get a

linux雜談在SSH連線中,openssh如何解決'Connection refused'錯誤?

openssh是SSH (Secure SHell) 協議的免費開源實現。SSH協議族可以用來進行遠端控制, 或在計算機之間傳送檔案。 這就意味著遠端登陸,檔案推拉特別是搭建集群后公鑰的部署,經常要利用到openssh。本人之前搭建hadoop叢集模式的時候,公鑰投送就和ssh相關,如今搭建ansible測

linux系列vmware12pro安裝centos7

ping entos 配置 行編輯 rip 無法 conf 解決 config 安裝參考:http://blog.csdn.net/guin_guo/article/details/49403889 安裝完成之後ip還是不成功無法連接網絡: 進入/etc/sysconfig

linux系列cenos7安裝jdk

解壓 安裝目錄 .gz .cn ima cenos linux jdk環境變量配置 環境 一、下載jdk,我采用的jdk.tar.gz的安裝包 二、創建jdk安裝目錄 三、安裝包解壓 四、jdk環境變量配置 五、使配置的環境變量生效 六、檢查jdk是否安裝成功 【l

Linux基礎Linux基礎命令行學習筆記

esc 隱藏 python chm 合並 tree 位置 常用 輸入 絕對路徑:cd /home/python相對路徑:cd Downloads . 表示:當前那路徑..表示:當前路徑的上一層../.. 表示:當前路徑的上二層 沒有...或者以上的 ls: ls 查看當

tomcatLinux環境安裝與啟動

log 下載 linux環境 測試 $path rtu apache startup pro 一、安裝 1、下載tomcat安裝包 2、解壓安裝包 3、配置環境變量 打開~/.bash_profile文件,輸入一下兩句話: export TOMCAT_HOME=/User

Linux環境部署war包到tomcat

ima pps 部署war linux maven .cn alt XML blog 以turbine為例。 一、部署 1、下載或者生成war包(從maven上下載war包,並改名字為turbine.war) 2、將turbine.war拷貝到$TOMCAT_HOME/we

linux基礎dhcp服務

配置 dhcp 1、修改服務的配置文件:定制功能vi /etc/dhcp/dhcpd.conf option domain-name "linuxxue.top";option domain-name-servers 202.106.0.20;default-lease-time 600;max-le

linux基礎samba匿名共享+用戶認證共享

共享 sabma 一、匿名共享1、安裝yum -y install samba* ##安裝samba軟件2、修改配置文件vi /etc/samba/smb.conf [global] workgroup = MYGROUP server string = Samba

linux基礎 vsftpd+本地用戶認證

本地 vsftpd 用戶 1、修改配置文件[[email protected]/* */ ~]# cat /etc/vsftpd/vsftpd.conf anonymous_enable=NOlocal_enable=YESwrite_enable=YESlocal_umask=022

linux基礎rpm安裝程序和管理

rpm使用1.了解應用程序應用程序(app):安裝在os上完成特定功能的軟件。應用程序的類型:*.rpm(redhat分支默認軟件格式),*.deb(debian分支默認軟件格式),源代碼(通用的軟件格式,也是生成rpm和deb的基礎),其他自帶安裝程序及免安裝的軟件。用戶程序常用的目錄:/etc,/var/

Linux 驅動Netfilter/iptables (八) Netfilter的NAT機制

問題: int eas for 數量 linux 提高 markdown 網絡安全 NAT是Network Address Translation的縮寫,意即“網絡地址轉換”。從本質上來說,是通過改動IP數據首部中的地址,以實現將一個地址轉換成還有一個地

Linux基礎Fcitx中文輸入法安裝

sun 不顯示 命令 中文輸入 狀態 linu div 中括號 ron 一、安裝Fcitx 1. 安裝Fcitx所需組件 sudo apt install fcitx fcitx-tools fcitx-config* fcitx-frontend* fcitx-modu

Linux系列基礎版第三章 Shell基礎知識

linux shell 3. Shell基礎知識 3.1 Shell的由來 3.1.1 Bourne Agin Shell 3.1.2 其他的shell, 有 zsh, ksh等 3.2 查看有沒有shell 3.2.1 yum list

linux環境zabbix server安裝

zabbixnginx安裝1)源碼編譯安裝yum install -y pcre* openssl* gcc gcc-c++ automake zlib* ./configure --user=nginx --group=nginx --prefix=/usr/local/nginx

linux命令test

一個 ech -o bsp 表達式 表達式2 nbsp -a 表達 1、表達式 #!/bin/bash # if test 表達式1 【表達式為真】 if test 1 == 1;then echo ‘test 條件為真‘ fi # if test 表達式1 【等同於

Linux筆記第九篇、添加MariaDB用戶、設置權限

.com 生效 mysq local 分享圖片 style info user 創建 一、登錄mysql 二、創建用戶 create user [email protected] identified by ‘dev‘; 三、給新建用戶授權數據庫h_user的權限 授權

Linux基礎wget命令下載

次數 遠程 分隔 address exe erb 本地 guide symlink 原文 1.下載單個文件 wget http://down.51cto.com/download.php?do=attachment&aid=1131994&k=93d6c

Linux/CentOS上手常見問題筆記

配置 html 參考 一個 輸入 class alt mage shel 場景:Web項目服務端想要運行在Linux系統上,還要編寫一些自動化發布代碼的Shell腳本,需要學習使用Linux系統。 環境:Windows系統下用虛擬機VMware Workstation Pr