{"id":47,"date":"2019-05-29T04:17:14","date_gmt":"2019-05-28T20:17:14","guid":{"rendered":"http:\/\/blog.izhuhn.cn\/?p=47"},"modified":"2020-03-29T15:13:41","modified_gmt":"2020-03-29T07:13:41","slug":"%e4%bb%bb%e6%84%8f%e7%89%88%e6%9c%acopenssh%e6%89%b9%e9%87%8f%e5%8d%87%e7%ba%a7%e8%84%9a%e6%9c%ac","status":"publish","type":"post","link":"https:\/\/www.izhuhn.cn\/index.php\/2019\/05\/29\/%e4%bb%bb%e6%84%8f%e7%89%88%e6%9c%acopenssh%e6%89%b9%e9%87%8f%e5%8d%87%e7%ba%a7%e8%84%9a%e6%9c%ac\/","title":{"rendered":"\u4efb\u610f\u7248\u672copenssh\u6279\u91cf\u5347\u7ea7\u811a\u672c"},"content":{"rendered":"\n<p>\u6b64\u811a\u672c\u5728redhat\u4ee5\u53cacentos\u76845\u30016\u30017\u30018\u7248\u672c\u6d4b\u8bd5\u3001\u751f\u4ea7\u73af\u5883\u8fd0\u884c\u6b63\u5e38\uff0c\u5728\u5176\u4ed6\u7248\u672c\u7cfb\u7edf\u4e2d\u5982suse\u3001ubuntu\u4e2d\u811a\u672c\u7684\u65e0\u6cd5\u5b89\u88c5\u4e00\u4e9b\u8f6f\u4ef6\u5305\u9700\u8981\u81ea\u5df1\u4fee\u6539\u811a\u672c\uff0c\u6d4b\u8bd5\u4e2d\u8fd0\u884c\u6b63\u5e38   \u4f7f\u7528\u524d\u8bf7\u5148\u5728\u5347\u7ea7\u73af\u5883\u76f8\u540c\u7684\u6d4b\u8bd5\u7cfb\u7edf\u4e2d\u8fdb\u884c\u6d4b\u8bd5  \u7406\u8bba\u4e0aopenssh\u548copenssl\u5404\u79cd\u7248\u672c\u90fd\u901a\u7528\u7f16\u8bd1\u53c2\u6570\u6ca1\u6709\u6539\u52a8\u7684\u8bdd(\u73b0\u7f51\u4e2d\u4ece7.4\uff5e8.0\u90fd\u5347\u7ea7\u8fc7)<\/p>\n\n\n\n<ul><li>\u811a\u672c\u57fa\u672c\u7684\u539f\u7406\uff1a<ul><li>\u811a\u672c\u5171\u4e09\u4e2a\uff0c\u4e00\u4e2a\u68c0\u6d4b\u548c\u8c03\u7528\u811a\u672c(conbi.sh)\uff0c\u4e00\u4e2aopenssh\u5347\u7ea7\u811a\u672c(openssh_cp.sh)\uff0c\u4e00\u4e2aopenssl\u5347\u7ea7\u811a\u672c(openssl_cp.sh)  <\/li><li> \u5f53\u5728\u9700\u8981\u5347\u7ea7\u7684\u670d\u52a1\u5668\u6267\u884cconbi.sh\u65f6\u811a\u672c\u9ed8\u8ba4\u4f1a\u901a\u8fc7\u4e0b\u8f7d\u6307\u5b9aIP\u548c\u7aef\u53e3\u7684HTTP\u670d\u52a1\u5668\u4e2d\u7684opennssh_cp.sh\u4ee5\u53caopenssl_cp.sh\u548c\u5b89\u88c5\u4e2d\u4f7f\u7528\u7684\u6e90\u7801\u5305\u4ee5\u53carpm\u5305\uff0c\u68c0\u6d4bpam-devel\u662f\u5426\u5b89\u88c5\u672a\u5b89\u88c5\u5219\u8fdb\u884c\u5b89\u88c5\uff0c\u68c0\u6d4b\u662f\u5426\u5f00\u542ftelnet\u670d\u52a1\u5982\u679c\u5f00\u542f\u5b89\u88c5openssh\u540e\u5219\u4e0d\u4f1a\u5173\u95ed(\u9488\u5bf9\u4e1a\u52a1\u9700\u6c42\u4e0d\u5173\u95ed\u5f00\u542f\u7684telnet\uff0c\u5982\u679c\u672a\u5f00\u542f\u5219\u5b89\u88c5\u540e\u4e5f\u4f1a\u5173\u95ed)\uff0c\u7136\u540e\u6267\u884copenssl_cp.sh\u548copenssh_cp.sh\u8fdb\u884c\u6e90\u7801\u7f16\u8bd1\u5de5\u4f5c <\/li><li>telnet \u7684\u5173\u95ed\u65f6\u95f4\u4e3a3600\u79d2\u4e5f\u5c31\u662f60\u5206\u949f<\/li><li>openssh\u5b89\u88c5\u5b8c\u540e10\u5206\u949f\u540e\u6267\u884c\u4e00\u904d\u547d\u4ee4\u884c\u542f\u52a8ssh(\/usr\/sbin\/sshd)\u4ee5\u9632ssh\u542f\u52a8\u5931\u8d25\u7684\u95ee\u9898<\/li><li>openssh\u548copenssl\u5907\u4efd\u6587\u4ef6\u4f1a\u5728\"\/usr\/lib\/\u7cfb\u7edf\u65e5\u671f\"\u6216\"\/usr\/lib64\/\u7cfb\u7edf\u65e5\u671f\"\u4f8b\u5982:\/usr\/lib64\/2019-05-29 \u65b9\u4fbf\u65e5\u540e\u8fd8\u539f<\/li><li>\u811a\u672c\u4e2dgcc\u548cperl\u65e0\u6cd5\u81ea\u52a8\u5b89\u88c5\uff0c\u5176\u4ed6\u4f9d\u8d56\u8f6f\u4ef6\u57fa\u672c\u4e0a\u90fd\u80fd\u591f\u5b89\u88c5 <\/li><\/ul><\/li><\/ul>\n\n\n\n<p><\/p>\n\n\n\n<p>\u5982\u9047\u95ee\u9898\u8bf7\u67e5\u770b\u8f93\u51fa\u65e5\u5fd7\uff0c\u9ed8\u8ba4\u811a\u672c\u4e2d\u8bbe\u7f6e\u9519\u8bef\u8f93\u51fa\u4e3a\/tmp\/errorfile<\/p>\n\n\n\n<p>\u4f7f\u7528\u524d\u8bf7\u5148\u5728\u5347\u7ea7\u73af\u5883\u76f8\u540c\u7684\u6d4b\u8bd5\u7cfb\u7edf\u4e2d\u8fdb\u884c\u6d4b\u8bd5<\/p>\n\n\n<ul>\n<li>\u9700\u8981\u4fee\u6539\u9879\uff1a\n<ul>\n<li>IpS=yourserverip:yourserverport<\/li>\n<\/ul>\n<\/li>\n<li>&nbsp;\u53ef\u9009\u66f4\u6539\u9879:\n<ul>\n<li>OPENSSHVERSION=8.0p1 #openssh\u5347\u7ea7\u7684\u7248\u672c\/\/\u540e\u671f\u6709\u65b0\u7248\u672c\u53ef\u5c06\u6e90\u7801\u5305\u653e\u81f3HTTP\u4e2d\u66f4\u6539\u6b21\u7248\u672c\u53f7<\/li>\n<li>OPENSSLVERSION=1.0.2r #openssl\u5347\u7ea7\u7684\u7248\u672c\/\/\u540e\u671f\u6709\u65b0\u7248\u672c\u53ef\u5c06\u6e90\u7801\u5305\u653e\u81f3HTTP\u4e2d\u66f4\u6539\u6b21\u7248\u672c\u53f7<\/li>\n<li>Server_DiR=\/tools #\u670d\u52a1\u5668\u5b58\u653e\u7684\u76ee\u5f55<\/li>\n<li>ScrIpt=$Server_DiR\/scripts #\u670d\u52a1\u5668\u5b58\u653e\u7684\u811a\u672c\u76ee\u5f55<\/li>\n<li>SoftWare=$Server_DiR\/software #\u670d\u52a1\u5668\u5b58\u653e\u7684\u8f6f\u4ef6\u76ee\u5f55<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n<p><\/p>\n\n\n\n<p><\/p>\n\n\n\n<p><\/p>\n\n\n\n<p>\u7b80\u6613\u4f7f\u7528\u65b9\u6cd5:<\/p>\n\n\n\n<div class=\"wp-block-file\"><a href=\"https:\/\/www.izhuhn.cn\/wp-content\/uploads\/2019\/05\/Opensh_Update.tar.gz\">\u5347\u7ea7\u811a\u672c\u4ee5\u53ca\u6e90\u7801\u5305\u7684\u538b\u7f29\u5305<\/a><a href=\"https:\/\/www.izhuhn.cn\/wp-content\/uploads\/2019\/05\/Opensh_Update.tar.gz\" class=\"wp-block-file__button\" download>\u4e0b\u8f7d<\/a><\/div>\n\n\n\n<p>\u5c06\u4e0a\u9762\u7684\u538b\u7f29\u5305\u89e3\u538b\u81f3HTTP\u670d\u52a1\u7684\u6839\u76ee\u5f55<\/p>\n\n\n\n<p>md5sum:02ebb83135837844e57aca76f7af9bc9\u00a0<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"771\" height=\"457\" src=\"https:\/\/www.izhuhn.cn\/wp-content\/uploads\/2019\/05\/image-5.png\" alt=\"\" class=\"wp-image-693\" srcset=\"https:\/\/www.izhuhn.cn\/wp-content\/uploads\/2019\/05\/image-5.png 771w, https:\/\/www.izhuhn.cn\/wp-content\/uploads\/2019\/05\/image-5-300x178.png 300w, https:\/\/www.izhuhn.cn\/wp-content\/uploads\/2019\/05\/image-5-768x455.png 768w\" sizes=\"(max-width: 771px) 100vw, 771px\" \/><\/figure>\n\n\n\n<p>\u66f4\u6539\u811a\u672c\u4e2d\u7684IpS\u4e3a\u4f60\u670d\u52a1\u5668\u7684ip\u4ee5\u53caHTTP\u670d\u52a1\u7684\u7aef\u53e3<\/p>\n\n\n\n<p>\u9700\u8981\u5347\u7ea7\u7684\u670d\u52a1\u5668\u6267\u884c<\/p>\n\n\n\n<p>cd \/tmp;curl -O http:\/\/yourip:port\/tools\/scripts\/conbi.sh;sh conbi.sh<\/p>\n\n\n\n<p><\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>#[root@izhuhn root]# cat conbi.sh\n#!\/bin\/bash\n#2019\/5\/28\n#scanz\u7f16\u5199\n#\u7b2c16\u6b21\u4fee\u6539\n\nSSHVerSion=${1}\nOPENSSHVERSION=8.0p1\n[[ $SSHVerSion =~ ^[0-9]+.[0-9][a-Z][0-9]$ ]] || SSHVerSion=${OPENSSHVERSION}\n#openssh \u7248\u672c\n#openssh version\n#\u4ece\u547d\u4ee4\u884c\u63a5\u6536\u53c2\u65701ssh\u7248\u672c\uff0c\u9ed8\u8ba4\u4e3a8.0p1\n\nSSLVerSion=${2}\nOPENSSLVERSION=1.0.2r\n[[ $SSLVerSion =~ ^[0-9].[0-9].[0-9][a-Z]$ ]] ||  SSLVerSion=${OPENSSLVERSION}\n#openssl\u7248\u672c\n#Openssl version\n#\u4ece\u547d\u4ee4\u884c\u63a5\u6536\u53c2\u65702\u4e3assl\u7248\u672c\uff0c\u9ed8\u8ba4\u4e3a1.0.2r\n\nOUTok=\/tmp\/okfile\n#\u8f93\u51fa\u7684\u4fe1\u606f\u4f1a\u4fdd\u5b58\u5230\u81f3\u6b64\u6587\u4ef6\n#The output information is saved to this file.\n\nOUTerror=\/tmp\/errorfile\n\n#\u8f93\u51fa\u7684\u62a5\u9519\u4fe1\u606f\u4f1a\u4fdd\u5b58\u5230\u81f3\u6b64\u6587\u4ef6\n#The output error message is saved to this file.\n\nTARTFILE=\/tmp\/159080113\nif [[ ${TARTFILE} =~ ^\/+$ ]]\nthen\n        echo \"\u76ee\u5f55\u4e0d\u80fd\u4e3a\u6839\"\n        exit\nfi\n[[ ${TARTFILE} =~ .*\/$ ]] &amp;&amp; TARTFILE=`echo ${TARTFILE} | sed -n 's\/\\\/$\/\/p'`\n#\u8bf7\u4e0d\u8981\u5c06\u6b64\u53d8\u91cf\u6539\u6210\u5df2\u6709\u76ee\u5f55\uff0c\u811a\u672c\u7ed3\u675f\u540e\u4f1a\u5220\u9664\u6b64\u76ee\u5f55\uff01\uff01\uff01\uff01\uff01\uff01\n#Do not change this variable to an existing directory and it will be deleted\uff01\uff01\uff01\uff01\uff01\uff01\n#\u5efa\u8bae\u9ed8\u8ba4\u5373\u53ef\n\nIpS=yourip:yourport\n#ping ${IpS} -c 1 &amp;>\/dev\/null\n#http\u670d\u52a1\u5668\u5b58\u653e\u5347\u7ea7\u7528\u5230\u7684\u5305,\u53ef\u4ee5\u66f4\u6362\u6210\u5176\u4ed6\u6bd4\u5982ftp\u4f46\u662f\u9700\u8981\u66f4\u6539\u811a\u672c\n#Http server stores the packages used for the upgrade\uff0cYou can switch to another service but you need to change the script.\n\nServer=http\n#\u63d0\u4f9b\u5b58\u653e\u5305\u7684\u670d\u52a1\u53ef\u4f7f\u7528\u533f\u540d\u7684ftp\n#\u4e0d\u5efa\u8bae\u66f4\u6539\u5176\u4ed6\uff0c\u672a\u7ecf\u6d4b\u8bd5\u5176\u4ed6\u670d\u52a1\nServer_DiR=\/tools\n[[ ${Server_DiR} =~ .*\/$ ]] &amp;&amp; Server_DiR=`echo ${Server_DiR} | sed -n 's\/\\\/$\/\/p'`\n#\u5305\u5b58\u653e\u7684\u8def\u5f84node:\u6b64\u8def\u5f84\u662f\u5176\u4ed6\u673a\u5668\u901a\u8fc7wget\u8bbf\u95eeip\u6216\u8005\u57df\u540d\u540e\u9762\u63a5\u7684\n#\u6bd4\u5982http:\/\/your_ip\/tools\/tar \u6b64\u65f6\u4e0b\u9762\u9700\u8981\u7528\u5230\u7684\u5305\u90fd\u4f1a\u4ece\u8fd9\u4e2a\u4f4d\u7f6e\u4e0b\u8f7d\n\nScrIpt=$Server_DiR\/scripts\n[[ ${ScrIpt} =~ .*\/$ ]] &amp;&amp; ScrIpt=`echo ${ScrIpt} | sed -n 's\/\\\/$\/\/p'`\n#\u811a\u672c\u5b58\u653e\u670d\u52a1\u5668\u8def\u5f84\nSoftWare=$Server_DiR\/software\n[[ ${SoftWare} =~ .*\/$ ]] &amp;&amp; SoftWare=`echo ${SoftWare} | sed -n 's\/\\\/$\/\/p'`\n#\u8f6f\u4ef6\u5b58\u653e\u670d\u52a1\u5668\u8def\u5f84\ncurl ${Server}:\/\/${IpS} &amp;>\/dev\/null\nif [ $? -ne 0 ]\nthen\n      echo \"${IpS}\u65e0\u6cd5\u8fde\u901a\uff0c\u8bf7\u68c0\u67e5\u3002\"\n      exit\nfi\n\nSSLPREHOME=\/usr\/local\nSSHPREHOME=\/usr\/local\n#openssl\u548copenssh\u5b89\u88c5\u8def\u5f84\uff0c\u8bf7\u586b\u5199\u7edd\u5bf9\u8def\u5f84\n[[ ${SSHPREHOME} =~ .*\/$ ]] &amp;&amp; SSHPREHOME=`echo ${SSHPREHOME} | sed -n 's\/\\\/$\/\/p'`\n[[ ${SSLPREHOME} =~ .*\/$ ]] &amp;&amp; SSLPREHOME=`echo ${SSLPREHOME} | sed -n 's\/\\\/$\/\/p'`\n#\n\nZliBVerSion=1.2.11\nZLIB_TAR=zlib-${ZliBVerSion}.tar.gz\n######Wget######\nWget5_RPM=wget-1.11.4-3.el5_8.2.x86_64.rpm\nWget6_RPM=wget-1.12-10.el6.x86_64.rpm\nWget7_RPM=wget-1.14-15.el7.x86_64.rpm\nWget8_RPM=wget-1.19.5-7.el8.x86_64.rpm\n######Net-tools######\nNet5_RPM=wget-1.11.4-3.el5_8.2.x86_64.rpm\nNet6_RPM=wget-1.12-10.el6.x86_64.rpm\nNet7_RPM=wget-1.14-15.el7.x86_64.rpm\nNet8_RPM=wget-1.19.5-7.el8.x86_64.rpm\n######PAM######\nPAM5VerSion=0.99.6.2-12\nPAM6VerSion=1.1.1-24\nPAM7VerSion=1.1.8-22\nPAM8VerSion=1.3.1-4\nPAM5_RPM=pam-${PAM5VerSion}.el5.x86_64.rpm\nPAM6_RPM=pam-${PAM6VerSion}.el6.x86_64.rpm\nPAM7_RPM=pam-${PAM7VerSion}.el7.x86_64.rpm\nPAM8_RPM=pam-${PAM8VerSion}.el8.x86_64.rpm\nPAM5_DEVEL_RPM=pam-devel-${PAM5VerSion}.el5.x86_64.rpm\nPAM6_DEVEL_RPM=pam-devel-${PAM6VerSion}.el6.x86_64.rpm\nPAM7_DEVEL_RPM=pam-devel-${PAM7VerSion}.el7.x86_64.rpm\nPAM8_DEVEL_RPM=pam-devel-${PAM8VerSion}.el8.x86_64.rpm\n######TELNET######\nTELNET5VerSion=0.17-41\nTELNET6VerSion=0.17-48\nTELNET7VerSion=0.17-64\nTELNET8VerSion=0.17-73\nTELNET5_SERVER_RPM=telnet-server-${TELNET5VerSion}.el5.x86_64.rpm\nTELNET6_SERVER_RPM=telnet-server-${TELNET6VerSion}.el6.x86_64.rpm\nTELNET7_SERVER_RPM=telnet-server-${TELNET7VerSion}.el7.x86_64.rpm\nTELNET8_SERVER_RPM=telnet-server-${TELNET8VerSion}.el8.x86_64.rpm\n######XINET######\nXINET5VerSion=2.3.14-19\nXINET6VerSion=2.3.14-40\nXINET5_RPM=xinetd-${XINET5VerSion}.el5.x86_64.rpm\nXINET6_RPM=xinetd-${XINET6VerSion}.el6.x86_64.rpm\n######TAR######\nOPENSSL_TAR=openssl-${SSLVerSion}.tar.gz\nOPENSSH_TAR=openssh-${SSHVerSion}.tar.gz\n######ScrIpt######\nOH_SH=openssh_cp.sh\nOL_SH=openssl_cp.sh\n############\nLANG=en\n######bak######\n[ -f ${OUTok} ] &amp;&amp; mv ${OUTok}  ${OUTok}_$(date +%s)\n[ -f ${OUTerror} ] &amp;&amp; mv ${OUTerror}   ${OUTerror}_$(date +%s)\necho \"--------------------$(date +%F)--------------------\" > ${OUTok}\necho \"--------------------$(date +%F)--------------------\" > ${OUTerror}\n######gcc_check######\nrpm -qa | grep ^gcc-[0-9] >> ${OUTok} 2>> ${OUTerror}\nif [ $? -ne 0 ]\nthen\n      echo -e \"\\033[31m ##########\u68c0\u6d4b\u5230\u672a\u5b89\u88c5gcc\uff0c\u8bf7\u5b89\u88c5\u540e\u518d\u6b21\u91cd\u8bd5\u6267\u884c##########  \\033[0m\"\n      echo  \"##########\u68c0\u6d4b\u5230\u672a\u5b89\u88c5gcc\uff0c\u8bf7\u5b89\u88c5\u540e\u518d\u6b21\u91cd\u8bd5\u6267\u884c##########\"  >> ${OUTerror}\n      exit\nfi\n######perl_check######\nrpm -qa | grep perl-[0-9] >> ${OUTok} 2>> ${OUTerror}\nif [ $? -ne 0 ]\nthen\n      echo -e \"\\033[31m ##########\u68c0\u6d4b\u5230\u672a\u5b89\u88c5perl\uff0c\u8bf7\u5b89\u88c5\u540e\u518d\u6b21\u91cd\u8bd5\u6267\u884c##########  \\033[0m\"\n      echo  \"##########\u68c0\u6d4b\u5230\u672a\u5b89\u88c5perl\uff0c\u8bf7\u5b89\u88c5\u540e\u518d\u6b21\u91cd\u8bd5\u6267\u884c##########\" >> ${OUTerror}\n      exit\nfi\n######Dir_check######\nDircheck(){\nAA=\"${1}\";eval BB=\"\\$$AA\"\nif [[ ${BB} =~ ^\/+$ ]]\nthen\n        echo \"${AA} \u4e0d\u80fd\u4e3a\u6839\"\n        exit\nfi\nunset AA\nunset BB\n}\nDircheck OUTok\nDircheck OUTerror\nDircheck TARTFILE\n######Install_softwares_check######\n#Software_check(){\n#[ -f ]#\u6682\u5b9a\n#}\n#Software_check 5\n#Software_check 6\n#Software_check 7\n#Software_check 8\n######download_tar_script_check######\n#\n#\n######XinetdINSTALL######\nXiNet_Telnet(){\nrpm -qa | grep xinetd >> ${OUTok} 2>> ${OUTerror}\nif [ $? -eq 0 ]\nthen\n      rpm -qa | grep telnet-server >> ${OUTok} 2>> ${OUTerror}\n\t    if [ $? -ne 0 ]\n\t    then\n\n\t\t        AA=\"TELNET${1}_SERVER_RPM\";eval AA=\"${TARTFILE}\/\\$$AA\";rpm -ivh $(echo $AA) >> ${OUTok} 2>> ${OUTerror}\n\t\t        chkconfig telnet on\n            \/etc\/init.d\/xinetd status | grep  \"stopped\" >> ${OUTok} 2>> ${OUTerror}\n\t\t\t      if [ $? -eq 0 ]\n\t\t\t      then\n                  \/etc\/init.d\/xinetd start\n                  sleep 3600 &amp;&amp; chkconfig telnet off &amp;&amp; \/etc\/init.d\/xinetd stop &amp;\n            else\n                  sleep 3600 &amp;&amp; chkconfig telnet off &amp;\n            fi\n\n      else\n            netstat -anptu  | grep \":23 \" |  grep LISTEN >> ${OUTok} 2>> ${OUTerror} &amp;&amp; \/etc\/init.d\/xinetd status | grep running >> ${OUTok} 2>> ${OUTerror}\n            if [ $? -ne 0 ]\n            then\n                  chkconfig telnet on\n                  \/etc\/init.d\/xinetd start\n                  netstat -anptu  | grep \":23 \" |  grep LISTEN >> ${OUTok} 2>> ${OUTerror} &amp;&amp; \/etc\/init.d\/xinetd status | grep running >> ${OUTok} 2>> ${OUTerror}\n                  if [ $? -eq 0 ]\n                  then\n                        \/etc\/init.d\/xinetd status | grep  \"stopped\" >> ${OUTok} 2>> ${OUTerror}\n                        if [ $? -eq 0 ]\n                        then\n                              sleep 3600 &amp;&amp; chkconfig telnet off &amp;&amp; \/etc\/init.d\/xinetd stop &amp;\n                        else\n                              sleep 3600 &amp;&amp; chkconfig telnet off &amp;\n                        fi\n                  fi\n            fi\n\n      fi\nelse\n      AA=\"XINET${1}_RPM\";eval AA=\"${TARTFILE}\/\\$$AA\";rpm -ivh $(echo $AA) >> ${OUTok} 2>> ${OUTerror}\n\t    AA=\"TELNET${1}_SERVER_RPM\";eval AA=\"${TARTFILE}\/\\$$AA\"; rpm -ivh $(echo $AA) >> ${OUTok} 2>> ${OUTerror}\n\t    chkconfig telnet on\n\t    \/etc\/init.d\/xinetd start\n\t    sleep 3600 &amp;&amp; chkconfig telnet off &amp;&amp; \/etc\/init.d\/xinetd stop &amp;\nfi\n}\nTelNet(){\nrpm -qa | grep telnet-server >> ${OUTok} 2>> ${OUTerror}\nif [ $? -eq 0 ]\nthen\n      netstat -anptu  | grep \":23 \" |  grep LIST >> ${OUTok} 2>> ${OUTerror} &amp;&amp; systemctl  status  telnet.socket | grep Active | grep active >> ${OUTok} 2>> ${OUTerror}\n      if [ $? -ne 0 ]\n      then\n            systemctl start telnet.socket\n            if [ $? -eq 0 ]\n            then\n                  sleep 3600 &amp;&amp; systemctl stop telnet.socket &amp;\n            fi\n      fi\nelse\n      AA=\"TELNET${1}_SERVER_RPM\";eval AA=\"${TARTFILE}\/\\$$AA\"; rpm -ivh $(echo $AA) >> ${OUTok} 2>> ${OUTerror}\nfi\n\n}\n######PAMUPDATE######\nPam_UPdate(){\nrpm -qa | grep \"^pam-devel.*.x86_64\" >> ${OUTok} 2>> ${OUTerror}\nif [ $? -ne  0 ]\nthen\n      rpm -qa | grep -E \"^pam-[0-9].*x86_64\" >> ${OUTok} 2>> ${OUTerror}\n  \t  if [ $? -eq 0 ]\n  \t  then\n            AA=\"PAM${1}VerSion\";eval AA=\"\\$$AA\"\n  \t\t      rpm -qa | grep -E pam-${AA}.el${1}.x86_64 >> ${OUTok} 2>> ${OUTerror}\n  \t\t      if [ $? -eq 0 ]\n  \t\t      then\n  \t\t\t         AA=\"PAM${1}_DEVEL_RPM\";eval AA=\"${TARTFILE}\/\\$$AA\";rpm -ivh $(echo $AA) >> ${OUTok} 2>> ${OUTerror}\n  \t\t      else\n  \t\t\t         AA=\"PAM${1}_RPM\";eval AA=\"${TARTFILE}\/\\$$AA\";rpm -Uvh $(echo $AA) >> ${OUTok} 2>> ${OUTerror}\n  \t\t\t         if [ $? -eq 0 ]\n  \t\t\t         then\n  \t\t\t\t             AA=\"PAM${1}_RPM\";eval AA=\"${TARTFILE}\/\\$$AA\";rpm -ivh $(echo $AA) >> ${OUTok} 2>> ${OUTerror}\n  \t\t\t         else\n  \t\t\t\t             echo -e \"\\033[31m ##########PAM_update_error##########  \\033[0m\"\n  \t\t\t\t             echo \"error: \u7cfb\u7edf\u81ea\u5e26pam\u7248\u672c\u4e0e\u811a\u672c\u6307\u5b9apam-devel\u7248\u672c\u4e0d\u7b26\u6216\u8005\u5176\u4ed6\u539f\u56e0\u65e0\u6cd5\u5c06\u5f53\u524dpam\u5347\u7ea7\u81f3\u6307\u5b9apam\u7248\u672c\" >> ${OUTerror}\n                       exit\n  \t\t\t         fi\n  \t\t      fi\n  \t  else\n  \t\t      AA=\"PAM${1}_RPM\";eval AA=\"${TARTFILE}\/\\$$AA\";rpm -ivh $(echo $AA) >> ${OUTok} 2>> ${OUTerror}\n  \t\t      AA=\"PAM${1}_DEVEL_RPM\";eval AA=\"${TARTFILE}\/\\$$AA\";rpm -ivh $(echo $AA) >> ${OUTok} 2>> ${OUTerror}\n  \t  fi\nfi\n}\n######WgetSoftware######\nWget_all_other(){\nfor i in \"${OPENSSL_TAR}\" \"${OPENSSH_TAR}\" \"${ZLIB_TAR}\"\ndo\n        if [ ! -f ${TARTFILE}\/${i} ]\n        then\n              wget -c ${Server}:\/\/${IpS}${SoftWare}\/${i}  >> ${OUTok} 2>> ${OUTerror}\n              if [ $? -ne 0 ]\n              then\n                    echo \"${i} \u4e0b\u8f7d\u5931\u8d25\uff0c\u8bf7\u91cd\u8bd5\"\n                    exit\n              fi\n        fi\ndone\nwget -c ${Server}:\/\/${IpS}${ScrIpt}\/${OH_SH}  >> ${OUTok} 2>> ${OUTerror}\nif [ ! -f ${TARTFILE}\/${OH_SH} ]\nthen\n      echo \"${OH_SH} \u4e0b\u8f7d\u5931\u8d25\uff0c\u8bf7\u91cd\u8bd5\"\n      exit\nfi\nwget -c ${Server}:\/\/${IpS}${ScrIpt}\/${OL_SH}  >> ${OUTok} 2>> ${OUTerror}\nif [ ! -f ${TARTFILE}\/${OH_SH} ]\nthen\n      echo \"${OH_SH} \u4e0b\u8f7d\u5931\u8d25\uff0c\u8bf7\u91cd\u8bd5\"\n      exit\nfi\n}\n\nWget_all_redhat(){\nPAM=PAM${1}_RPM;eval PAM=\"\\$$PAM\"\nPAM_DEVEL=PAM${1}_DEVEL_RPM;eval PAM_DEVEL=\"\\$$PAM_DEVEL\"\nTELNET=TELNET${1}_SERVER_RPM;eval TELNET=\"\\$$TELNET\"\nfor i in   \"${OPENSSL_TAR}\" \"${OPENSSH_TAR}\" \"${ZLIB_TAR}\" \"${XINET5_RPM}\" \"${XINET6_RPM}\" \"$PAM\" \"$PAM_DEVEL\" \"$TELNET\"\ndo\n        if [ ! -f ${TARTFILE}\/${i} ]\n        then\n              wget -c ${Server}:\/\/${IpS}${SoftWare}\/${i}  >> ${OUTok} 2>> ${OUTerror}\n              if [ $? -ne 0 ]\n              then\n                    echo \"${i} \u4e0b\u8f7d\u5931\u8d25\uff0c\u8bf7\u91cd\u8bd5\"\n                    exit\n              fi\n        fi\ndone\nwget -c ${Server}:\/\/${IpS}${ScrIpt}\/${OH_SH}  >> ${OUTok} 2>> ${OUTerror}\nif [ ! -f ${TARTFILE}\/${OH_SH} ]\nthen\n      echo \"${OH_SH} \u4e0b\u8f7d\u5931\u8d25\uff0c\u8bf7\u91cd\u8bd5\"\n      exit\nfi\nwget -c ${Server}:\/\/${IpS}${ScrIpt}\/${OL_SH}  >> ${OUTok} 2>> ${OUTerror}\nif [ ! -f ${TARTFILE}\/${OH_SH} ]\nthen\n      echo \"${OH_SH} \u4e0b\u8f7d\u5931\u8d25\uff0c\u8bf7\u91cd\u8bd5\"\n      exit\nfi\n}\n\nmkdir -p ${TARTFILE}\ncd ${TARTFILE}\n#\u53ef\u5b9a\u4e49\u9488\u5bf9\u4e0d\u540c\u7248\u672c\u7684wget\n######redhat5\/centos5######\nVersion_5=`cat \/etc\/redhat-release  | grep \"release 5.\"  >> ${OUTok} 2>> ${OUTerror}`\nif [ $? -eq 0 ]\nthen\n      rpm -qa | grep wget >> ${OUTok} 2>> ${OUTerror} ||  rpm -ivh ${Server}:\/\/${IpS}${SoftWare}\/${Wget5_RPM}\n      rpm -qa | grep net-tools >> ${OUTok} 2>> ${OUTerror} || rpm -ivh ${Server}:\/\/${IpS}${SoftWare}\/${Net5_RPM}\n      Wget_all_redhat 5\n      XiNet_Telnet 5\n      Pam_UPdate 5\nfi\n######redhat6\/centos6######\nVersion_6=`cat \/etc\/redhat-release  | grep \"release 6.\"  >> ${OUTok} 2>> ${OUTerror}`\nif [ $? -eq 0 ]\nthen\n      rpm -qa | grep wget >> ${OUTok} 2>> ${OUTerror} || rpm -ivh ${Server}:\/\/${IpS}${SoftWare}\/${Wget6_RPM}\n      rpm -qa | grep net-tools >> ${OUTok} 2>> ${OUTerror} || rpm -ivh ${Server}:\/\/${IpS}${SoftWare}\/${Net6_RPM}\n      Wget_all_redhat 6\n      XiNet_Telnet 6\n      Pam_UPdate 6\nfi\n######redhat7\/centos7######\nVersion_7=`cat \/etc\/redhat-release  | grep \"release 7.\"  >> ${OUTok} 2>> ${OUTerror}`\nif [ $? -eq 0 ]\nthen\n      rpm -qa | grep wget >> ${OUTok} 2>> ${OUTerror} || rpm -ivh ${Server}:\/\/${IpS}${SoftWare}\/${Wget7_RPM}\n      rpm -qa | grep net-tools >> ${OUTok} 2>> ${OUTerror} || rpm -ivh ${Server}:\/\/${IpS}${SoftWare}\/${Net7_RPM}\n      Wget_all_redhat 7\n      Pam_UPdate 7\n      TelNet 7\nfi\n######redhat8\/centos8######\nVersion_8=`cat \/etc\/redhat-release  | grep \"release 8.\"  >> ${OUTok} 2>> ${OUTerror}`\nif [ $? -eq 0 ]\nthen\n      rpm -qa | grep wget >> ${OUTok} 2>> ${OUTerror} || rpm -ivh ${Server}:\/\/${IpS}${SoftWare}\/${Wget8_RPM}\n      rpm -qa | grep net-tools >> ${OUTok} 2>> ${OUTerror} || rpm -ivh ${Server}:\/\/${IpS}${SoftWare}\/${Net8_RPM}\n      Wget_all_redhat 8\n      Pam_UPdate 8\n      TelNet 8\nfi\n######other######\nif [ -f \/etc\/redhat-release ]\nthen\n      echo \"redhat\" >> ${OUTok}\nelse\n      Wget_all_other\n      if [ $? -ne 0 ]\n      then\n            echo \"Download error\"\n            exit\n      fi\nfi\n\n######\ntar -xvf ${ZLIB_TAR} > \/dev\/null 2>1\n\ncd zlib-${ZliBVerSion}\n\necho \"################Zlibconfigre################\" >> ${OUTok}\necho \"################Zlibconfigre################\" >> ${OUTerror}\n\n.\/configure >> ${OUTok} 2>> ${OUTerror}\nif [ $? -ne 0 ]\nthen\n      echo -e \"\\033[31m ##########Zlibconfig_error##########  \\033[0m\"\n      exit\nelse\n      echo -e \"\\033[32m####################Zlib_configure_ok####################\\033[0m\"\n\nfi\n\necho \"################Zlibmake################\" >> ${OUTok}\necho \"################Zlibmake################\" >> ${OUTerror}\n\nmake  >> ${OUTok} 2>> ${OUTerror}\nif [ $? -ne 0 ]\nthen\n      echo -e \"\\033[31m ##########Zlibmake_error##########  \\033[0m\"\n      exit\nelse\n      echo -e \"\\033[32m####################Zlib_make_ok####################\\033[0m\"\nfi\n\n\necho \"################Zlibmakeinstall################\" >> ${OUTok}\necho \"################Zlibmakeinstall################\" >> ${OUTerror}\n\nmake install  >> ${OUTok} 2>> ${OUTerror}\nif [ $? -ne 0 ]\nthen\n      echo -e \"\\033[31m ##########Zlibmakeinstall_error##########  \\033[0m\"\n      exit\nelse\n      echo -e \"\\033[32m####################Zlib_make_install_ok####################\\033[0m\"\nfi\n\n######\nopenssl version >\/tmp\/sslversiontemp\ngrep \"${SSLVerSion}\" \/tmp\/sslversiontemp  >> ${OUTok} 2>> ${OUTerror}\nif [ $? -ne 0 ]\nthen\n      sh ${TARTFILE}\/${OL_SH} ${SSLVerSion} ${SSLPREHOME} ${OUTok} ${OUTerror} ${TARTFILE} &amp;\n      sleep 10\n      OPENSSL_PID=$(cat \/tmp\/openssl_updateshell_pid)\n      while :\n      do\n            ps aux | grep -v grep | grep ${OPENSSL_PID}  >> ${OUTok} 2>> ${OUTerror}\n            if [ $? -eq 0 ]\n            then\n                  echo -e '\u8bf7\u7b49\u5f85 -'\"\\b\\b\\b\\b\\b\\b\\b\\b\\c\"\n                  sleep 0.15\n                  echo -e '\u8bf7\u7b49\u5f85 \\\\'\"\\b\\b\\b\\b\\b\\b\\b\\b\\c\"\n                  sleep 0.15\n                  echo -e '\u8bf7\u7b49\u5f85 |'\"\\b\\b\\b\\b\\b\\b\\b\\b\\c\"\n                  sleep 0.15\n                  echo -e '\u8bf7\u7b49\u5f85 \/'\"\\b\\b\\b\\b\\b\\b\\b\\b\\c\"\n            else\n                  break\n            fi\n      done\n\n      openssl version >\/tmp\/sslversiontemp\n      grep \"${SSLVerSion}\" \/tmp\/sslversiontemp  >> ${OUTok} 2>> ${OUTerror}\n      if [ $? -ne 0 ]\n      then\n            echo -e \"\\033[31m ##########OPENSSL_error##########  \\033[0m\"\n            rm -f ${TARTFILE}\/openssl-${SSLVerSion}\n            exit\n      else\n            echo -e \"\\033[32m####################OPENSSL_INSTALL_OK####################\\033[0m\"\n      fi\n\nelse\n      echo -e \"\\033[32m####################OPENSSL_IS_ALREADY_THE_SPECIFIED_VERSION_####################\\033[0m\"\nfi\n######\ndf | grep \/var$ >> ${OUTok} 2>> ${OUTerror}\nif [ $? -eq  0 ]\nthen\n      AA=`df | grep \/var$ | awk '{ print $3 }'`\n      if [ ${AA} -lt 10240 ]\n      then\n            echo -e \"\\033[31m ##########\u5185\u5b58\u5c0f\u4e8e10M##########  \\033[0m\"\n            echo \"##########\u5185\u5b58\u5c0f\u4e8e10M##########\" >> ${OUTerror}\n      fi\nelse\n      AA=`df | grep \/$ |  awk '{ print $3 }'`\n      if [ ${AA} -lt 10240 ]\n      then\n            echo -e \"\\033[31m ##########\u5185\u5b58\u5c0f\u4e8e10M##########  \\033[0m\"\n            echo \"##########\u5185\u5b58\u5c0f\u4e8e10M##########\" >> ${OUTerror}\n      fi\nfi\n######\nssh -V 2>\/tmp\/sshversiontemp\ngrep \"${SSHVerSion}\" \/tmp\/sshversiontemp  >> ${OUTok} 2>> ${OUTerror}\nif [ $? -ne 0 ]\nthen\n      sh ${TARTFILE}\/${OH_SH} ${SSLVerSion} ${SSHVerSion} ${SSLPREHOME} ${SSHPREHOME} ${OUTok} ${OUTerror} ${TARTFILE} &amp;\n      sleep 10\n      OPENSSH_PID=$(cat \/tmp\/openssh_updateshell_pid)\n      while :\n      do\n            ps aux | grep -v grep | grep ${OPENSSH_PID}  >> ${OUTok} 2>> ${OUTerror}\n            if [ $? -eq 0 ]\n            then\n\n                  echo -e '\u8bf7\u7b49\u5f85 -'\"\\b\\b\\b\\b\\b\\b\\b\\b\\c\"\n                  sleep 0.15\n                  echo -e '\u8bf7\u7b49\u5f85 \\\\'\"\\b\\b\\b\\b\\b\\b\\b\\b\\c\"\n                  sleep 0.15\n                  echo -e '\u8bf7\u7b49\u5f85 |'\"\\b\\b\\b\\b\\b\\b\\b\\b\\c\"\n                  sleep 0.15\n                  echo -e '\u8bf7\u7b49\u5f85 \/'\"\\b\\b\\b\\b\\b\\b\\b\\b\\c\"\n\n            else\n                  break\n            fi\n      done\n      ssh -V 2>\/tmp\/sshversiontemp\n      grep \"${SSHVerSion}\" \/tmp\/sshversiontemp  >> ${OUTok} 2>> ${OUTerror}\n      if [ $? -ne 0 ]\n      then\n            echo -e \"\\033[31m ##########OPENSSH_ERROR##########  \\033[0m\"\n            rm -f ${TARTFILE}\/openssh-${SSLVerSion}\n            exit\n      else\n            echo -e \"\\033[32m####################OPENSSH_INSTALL_OK####################\\033[0m\"\n      fi\nelse\n      echo -e \"\\033[32m####################OPENSSH_IS_ALREADY_THE_SPECIFIED_VERSION_####################\\033[0m\"\nfi\n##########################################\nrm -f ${TARTFILE}\/openssl-${SSLVerSion}.tar.gz\nrm -f ${TARTFILE}\/openssh-${SSHVerSion}.tar.gz\nrm -rf ${TARTFILE}\/openssl-${SSLVerSion}\nrm -rf ${TARTFILE}\/openssh-${SSLVerSion}\nrm -f ${TARTFILE}\/openssh_cp.sh\nrm -f ${TARTFILE}\/openssl_cp.sh\nsleep 600 &amp;&amp; rm -f \/tmp\/$0 &amp;\n<\/code><\/pre>\n\n\n\n<p>\u5168\u90e8\u811a\u672c\u8bf7\u4e0b\u8f7d\u538b\u7f29\u5305\uff0c\u6b64\u5904\u53ea\u5c55\u73b0\u5176\u4e2d\u4e00\u4e2a\u811a\u672c<\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u6b64\u811a\u672c\u5728redhat\u4ee5\u53cacentos\u76845\u30016\u30017\u30018\u7248\u672c\u6d4b\u8bd5\u3001\u751f\u4ea7\u73af\u5883\u8fd0\u884c\u6b63\u5e38\uff0c\u5728\u5176\u4ed6\u7248\u672c\u7cfb\u7edf\u4e2d\u5982suse\u3001ubuntu\u4e2d\u811a\u672c\u7684\u65e0 &#8230;<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[3],"tags":[],"_links":{"self":[{"href":"https:\/\/www.izhuhn.cn\/index.php\/wp-json\/wp\/v2\/posts\/47"}],"collection":[{"href":"https:\/\/www.izhuhn.cn\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.izhuhn.cn\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.izhuhn.cn\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.izhuhn.cn\/index.php\/wp-json\/wp\/v2\/comments?post=47"}],"version-history":[{"count":102,"href":"https:\/\/www.izhuhn.cn\/index.php\/wp-json\/wp\/v2\/posts\/47\/revisions"}],"predecessor-version":[{"id":999,"href":"https:\/\/www.izhuhn.cn\/index.php\/wp-json\/wp\/v2\/posts\/47\/revisions\/999"}],"wp:attachment":[{"href":"https:\/\/www.izhuhn.cn\/index.php\/wp-json\/wp\/v2\/media?parent=47"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.izhuhn.cn\/index.php\/wp-json\/wp\/v2\/categories?post=47"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.izhuhn.cn\/index.php\/wp-json\/wp\/v2\/tags?post=47"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}