[转帖]编译升级openssl和openssh版本脚步

编译,升级,openssl,openssh,版本,脚步 · 浏览次数 : 0

小编点评

**指令概述** 生成一个名为 `openssh` 的 OpenSSH 软件包的安装文件。 **步骤** 1. 创建一个名为 `data/project_buildopenssl_download` 的文件夹。 2. 下载 OpenSSH 版本 1.1.1m 的压缩文件。 3. 下载 OpenSSH 版本 8.8p1 的压缩文件。 4. 将压缩文件复制到 `data/project_buildopenssl_download` 中。 5. 创建一个名为 `build_dir` 的空文件夹。 6. 使用 `wget` 命令下载压缩文件。 7. 解压缩压缩文件并将 `openssl*.tar.gz` 解压到 `build_dir` 中。 8. 配置 OpenSSH 版本。 9. 创建软连接文件,将 `sshd` 和 `sshdln` 链接到 `openssh` 的 bin 文件。 10. 启动 OpenSSH 服务。 11. 停止 `sshd` 服务并卸载原有的 `openssh` 服务。 12. 安装 OpenSSH。

正文

https://www.cnblogs.com/zhangb8042/p/15800738.html

 

#!/bin/bash

build_dir=/data/project_build
openssl_download=https://www.openssl.org/source/openssl-1.1.1m.tar.gz
openssh_download=https://mirrors.aliyun.com/pub/OpenBSD/OpenSSH/portable/openssh-8.8p1.tar.gz
[ -d $build_dir ]|| mkdir -p $build_dir

yum install zlib-devel wget openssl-devel pam-devel gcc make perl zlib zlib-devel pam pam-devel -y

#下载编译包
cd  $build_dir
wget $openssh_download
wget $openssl_download --no-check-certificate

tar xf openssl*.tar.gz
cd openssl*
openssl_version=`pwd|awk -F'/' '{print $NF}'`
./config --prefix=/usr/local/${openssl_version}
make && make install
ln -s /usr/local/${openssl_version} /usr/local/openssl
mv /usr/bin/openssl /usr/bin/openssl_old
#mv  /usr/include/openssl.old
ln -s /usr/local/openssl/bin/openssl /usr/bin/openssl
ln -s /usr/local/openssl/include/openssl /usr/include/openssl
ln -s /usr/local/openssl/lib/libssl.so.1.1 /usr/lib64/libssl.so.1.1
ln -s /usr/local/openssl/lib/libcrypto.so.1.1 /usr/lib64/libcrypto.so.1.1

openssl version

##openssh

cd  $build_dir

#备份
mkdir /etc/ssh_old
mv /etc/ssh/* /etc/ssh_old/
cp -r /etc/sysconfig/sshd /etc/sysconfig/sshd.bak


###停止ssh服务,并卸载原有的openssh###
systemctl stop sshd
systemctl is-active sshd
#rpm -e --nodeps `rpm -qa | grep openssh`
yum -y remove openssh-clients openssh openssh-server


#编译安装
tar xf openssh*.tar.gz
cd openssh*
openssh_version=`pwd|awk -F'/' '{print $NF}'`

./configure --prefix=/usr/local/${openssh_version} --sysconfdir=/etc/ssh    --with-zlib  --with-ssl-dir=/usr/local/openssl   --with-md5-passwords   --with-pam   --with-ssl-engine  

make && make install

ln -s /usr/local/${openssh_version} /usr/local/openssh

#修改配置等
cp ${build_dir}/${openssh_version}/contrib/redhat/sshd.init /etc/init.d/sshd
chmod u+x /etc/init.d/sshd
sed -i 's/Subsystem/#Subsystem/g' /etc/ssh/sshd_config
echo 'Subsystem sftp /usr/local/openssh/libexec/sftp-server'>> /etc/ssh/sshd_config
sed -i 's/#PasswordAuthentication\ yes/PasswordAuthentication\ yes/g' /etc/ssh/sshd_config
echo 'PermitRootLogin yes' >> /etc/ssh/sshd_config


#创建软连接
ln -s /usr/local/openssh/sbin/sshd /sbin/sshd
ln -s /usr/local/openssh/bin/ssh /usr/bin/ssh
ln -s /usr/local/openssh/bin/ssh-add /usr/bin/ssh-add
ln -s /usr/local/openssh/bin/ssh-keygen /usr/bin/ssh-keygen
ln -s /usr/local/openssh/bin/ssh-keyscan /usr/bin/ssh-keyscan
ln -s  /usr/local/openssh/bin/scp    /usr/bin/scp

ssh -V

chkconfig sshd on
systemctl restart sshd

与[转帖]编译升级openssl和openssh版本脚步相似的内容:

[转帖]编译升级openssl和openssh版本脚步

https://www.cnblogs.com/zhangb8042/p/15800738.html #!/bin/bash build_dir=/data/project_build openssl_download=https://www.openssl.org/source/openssl-1

[转帖]CentOS8完美升级gcc版本方法

https://blog.whsir.com/post-6114.html 在CentOS8系统中,默认gcc版本已经是8.x.x版本,但是在一些场景中,还是需要高版本的gcc,网上一些作死的文章还在复制粘贴的告诉你如何编译升级gcc版本。 之前吴昊也写过CentOS完美升级gcc版本方法:http

[转帖]CentOS7/完美升级gcc版本方法

https://zhuanlan.zhihu.com/p/535657060 在某些应用场景中,需要特定的gcc版本支持,但是轻易不要去编译gcc、不要去编译gcc、不要去编译gcc,我这里推荐使用红帽提供的开发工具包来管理gcc版本,这样做的好处是随时切换版本,并且可以并存多个版本,不破坏原有gc

[转帖]CentOS7完美升级gcc版本方法

https://blog.whsir.com/post-4975.html 在某些应用场景中,需要特定的gcc版本支持,但是轻易不要去编译gcc、不要去编译gcc、不要去编译gcc,我这里推荐使用红帽提供的开发工具包来管理gcc版本,这样做的好处是随时切换版本,并且可以并存多个版本,不破坏原有gcc

[转帖]技术分享 | 国产麒麟 arm 上编译安装 xtrabackup8

原创 发布于 2022-07-19 13:29:29 3220 举报 作者:王向 爱可生 DBA 团队成员,负责公司 DMP 产品的运维和客户 MySQL 问题的处理。擅长数据库故障处理。对数据库技术和 python 有着浓厚的兴趣。 本文来源:原创投稿 *爱可生开源社区出品,原创内容未经授权不得随

[转帖]编译安装Erlang+RabbitMQ

https://www.cnblogs.com/hellxz/ 楔子 由于国内信创越来越火,客户现场也开始使用国产操作系统替换CentOS之类的开源操作系统,最近做实施的同事找到我,说现场是ARM架构的操作系统编译安装RabbitMQ一直提示无法启动也没有日志文件生成,找过了好几个同事都没解决这才找

[转帖]编译实战 | 手摸手教你在Windows环境下运行Redis6.x

原创:微信公众号 码农参上,欢迎分享,转载请保留出处。 哈喽大家好啊,我是没事就愿意瞎捣鼓的Hydra。 不知道有没有小伙伴像我一样,平常开发中用的是windows操作系统,有时候想装点什么软件,一看只支持linux系统,无奈要么启动虚拟机、要么装在云服务器上。 这不前几天又是这样,刚想用一下Red

[转帖]编译安装goofys挂载Scaleway免费75G对象存储

日常•2022年5月29日 goofys编译 goofys是一个开源的使用Go编写的s3存储桶挂载工具,主打高性能。由于使用Go编写,没有用到什么特别的依赖,自己编译也很容易。截止2022.5.27,官方github仓库貌似一直有提交,但是提供的预编译安装包貌似只到2020年4月,而且只有x86版本

[转帖]postgresql 编译选项 --with-uuid=e2fs、--with-uuid=ossp 的理解

postgresql 的 rpm 包使用的是 ‘–with-uuid=e2fs’ postgresql 源码 configure 的帮助选项有 uuid 的几个选项,有啥区别? # ./configure --help --with-uuid=LIB build contrib/uuid-ossp

[转帖]OpenResty编译安装

https://www.cnblogs.com/lizexiong/p/15012869.html OpenResty 是一个基于 Nginx 与 Lua 的高性能 Web 平台,其内部集成了大量精良的 Lua 库、第三方模块以及大多数的依赖项。用于方便地搭建能够处理超高并发、扩展性极高的动态 We