キーアップグレードスクリプトをOpenSSHの(正常にテスト)

1つのSSHバージョンチェック

このドキュメントでは、SSHバージョンへのシステムのためである、openssh7.5 P1にアップグレード7.0よりも低くなっています。

SSH -V 
[ルート@ kuajing-DB3〜]#SSH -V 
OpenSSH_5.3p1、OpenSSLの1.0.0-FIPS 2010年3月29日

  

 

インストールのステップ2 OPENssh7.5

既存のOpenSSHのアンインストール

yumのOpenSSHの削除-y

環境を構築する準備ができました:

yumのGCCのopenssl-develのZLIB-develのインストール

/ mntとエキスコンパイルにopensshのパッケージをインストールアップロードします。

タールzxvfのopenssh-7.5p1.tar.gz 
のCDのopenssh-7.5p1 
に./configureは、
make installを&&作ります

SSHサービスのファイルのコピー

CPは/ usr / local / binに/ sshのは/ usr / binに/ SSHの
CP /usr/local/etc/ssh_host_ecdsa_key.pubの/ etc / sshを / ssh_host_ecdsa_key.pub
 CPを/ mnt / openssh- 7 .5p1に/ contrib / redhatの/ SSHD。 INIT /etc/init.d/のsshdの
 CP ./contrib/redhat/sshd.init /etc/init.d/sshd

 

設定ファイルを変更します。

の/ etc /変更のssh / sshd_configに

PermitRootLoginに変更#PermitRootLoginはい

変更は/ usr / libexecに/ SFTPサーバは/ usr / local / libexecに/ SFTPサーバーです

/etc/init.d/sshd変更

将SSHD =は/ usr / sbinに/ sshdの改为SSHD =は/ usr / local / sbinに/ sshdの

将は/ usr / sbinに/ SSH-keygenは-A改为は/ usr / local / binに/ SSH-keygenは-A

このラインプラス ' " - Fの/ etc / sshを/ sshd_configファイルを" OPTIONS =' 上記 '$ SSHD $ OPTIONS &&成功||失敗' 行で

 

追加されたシステムサービス 

chkconfigを- 追加のsshd 
のchkconfigは、上のsshd

検査サービス

--list chkconfigを| grepのSSHD 
SSHD                0:オフ     1:オフ     2:上の     3で:     4:上の     5上:     6:オフ

サービスを開始

サービスのsshd開始

SSHのバージョンを確認します

[ルート@オラクル〜]#1 のssh - V 
OpenSSH_7.5p1、OpenSSLの1.0 .1E-FIPS 11 2月2013年

 

 

3 OpenSSHは、スクリプトをアップグレード

次のように自動的にアクションを実行するスクリプトを書くの上記のアップグレードプロセスによると、スクリプトが読み取ります。

#/ binに/!bashの
sshInst()
{ 
       yumの OpenSSHの削除- yの
        yumの インストール のgccのopenssl-develのZLIB-develのを- yの
       CD / mntに
        タール zxvf openssh- 7 .5p1。タール .gzが-Cは/ mnt / 
       CD。/ openssh- 7 .5p1 / 設定
        する && する インストール
 
} 
 
CHG_SSHD()
{ 
       chmodの + X /etc/init.d/のsshdの
       OPT_VALUE = 'OPTIONS = " - Fの/ etc / SSH / sshd_configの" ' 
       OPT_EXIST = ` grepの " $ {OPT_VALUE} " /etc/init.d/のsshd`
         なら [-z " $ {OPT_EXIST} " ]。その後、
                SED -i ' / $ SSHD $ OPTIONSは&& /私はトン\\ ' " $ {OPT_VALUE} " '' /etc/init.d/のsshdの
         他の
                エコー$ {} OPT_EXIST
         Fi回線
        PATH_EXIST = ` grepの " $ {NPATHを} " / etc / initを。$ {PATH_EXIST} "   ]; 次に
                エコー " $ {PATH_EXIST} " 
        
                のsed -i " S:$ {OPATH} $ {NPATH}:" /etc/init.d/のsshdの
         Fiの
              エコー " /etc/init.dの/ sshdのファイルの変更が完了しました。" 
} 
CHG_CONF()
{ 
## Chengeの/ etc / SSH / sshd_configの 
        CP sshd_configファイルの/ etc / SSH / sshd_configの
        SED -i ' /#のPermitRootLogin / I \のPermitRootLoginはい'の/ etc / SSH /sshd_configの
       PATH_EXIST = ` grepの " $ {NPATH} "の/ etc / SSH / sshd_config`
        なら [-z " $ {PATH_EXIST} " ]。その後、
              sedの -i " $ {OPATH}:$ {NPATH}:S "の/ etc / sshを / sshd_configの
        
              エコー " $ {PATH_EXIST} " 
       Fiの
       エコー " 完成/ etc / ssh / sshd_configファイルの変更を" 
} 
 
OPATH = / USR / 
NPATH =は/ usr / local /
 エコー -nSSH現在のバージョンは次のとおりです。 
SSH - V 
 ながら、  ; 
    エコー -n " 更新し続けない(はい/いいえ)?" 
    INPUTの読み
    ケースの$ INPUTを
        Y | Y | YES | はい)
            sshInst 
      エコー -n " 任意のキーを押して続行し..... " 
      AnyKeyで読んで
 
      CPをは/ usr / local / binに/ sshのは/ usr / binに/ sshの
      エコー " のsshをコピーする....完了。" 
      CPは/ usr /ローカルの/ etc / ssh_host_ecdsa_key.pubの/ etc / sshを/ ssh_host_ecdsa_key.pub
       エコー " コピーssh_host_ecdsa_key.pub ....完了。" 
      CP / MNT / openssh- 7 .5p1に/ contrib / RedHatの/ sshd.init /etc/init.d/のsshdの
       エコー コピーsshdの....完了。
      CHG_SSHD 
      CHG_CONFの
      ブレーク;; 
        N | N | NO | なし)
           エコー出る
          の出口を;; 
        "" 
      ブレーク;; 
  ESAC 
行わ
chkconfigを - sshdの追加
でのchkconfigのsshdを
起動し、サービスsshdの
エコー 動作が完了する。"

注:コンパイルエラーコードのコピーが発生する可能性があり、あなたは次のように処理する必要があります

SED -i ' S / \ R $ // ' XXX。SH

        空白に置き換えられ、\ rの中でXXX.shう!

        再びコンパイルします!成功!

何zlibのインストールが存在しない場合は、再スクリプトのzlibをインストールする必要があります。

yumを インストール ZLIBを

 

おすすめ

転載: www.cnblogs.com/windy-xmwh/p/11484404.html