[20210917]ssh: error while loading shared libraries: libcrypto.so.1.0.0.txt

[20210917]ssh: error while loading shared libraries: libcrypto.so.1.0.0.txt

–//以后写一些特殊文章,一定记录在那台服务器执行的命令,特别涉及多台服务器的情况.

–//一台服务器(192.168.xx.yyy)使用普通用户无法使用ssh登录别的机器.提示如下:
–//在192.168.xx.yyy 上执行,以grid,oracle用户:
$ which ssh
/usr/bin/ssh

$ ls -l /usr/bin/ssh
-rwxr-xr-x 1 root root 736616 2020-07-01 16:53:23 /usr/bin/ssh

$ ssh 192.168.100.78
ssh: error while loading shared libraries: libcrypto.so.1.0.0: cannot open shared object file: No such file or directory
–//实际上暴露做等保一些运维人员不熟悉oracle rac,至少没有严格测试,如果以后升级或者打patch,两台机器无法通过ssh相互认证,问
–//题马上暴露,给运维埋一个很大的坑,到时候再来解决这个问题,会手忙脚乱的.

$ ldd $(which ssh)
linux-vdso.so.1 => (0x00007fff22710000)
libcrypto.so.1.0.0 => not found
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
librt.so.1 => /lib64/librt.so.1 (0x00007fc76035f000)
libdl.so.2 => /lib64/libdl.so.2 (0x00007fc76015b000)
libutil.so.1 => /lib64/libutil.so.1 (0x00007fc75ff58000)
libz.so.1 => /usr/local/lib/libz.so.1 (0x00007fc75fd40000)
libcrypt.so.1 => /lib64/libcrypt.so.1 (0x00007fc75fb08000)
libresolv.so.2 => /lib64/libresolv.so.2 (0x00007fc75f8f3000)
libc.so.6 => /lib64/libc.so.6 (0x00007fc75f59a000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x00007fc75f37e000)
/lib64/ld-linux-x86-64.so.2 (0x00007fc76082c000)
–//注意看下划线,libcrypto.so.1.0.0无法找到.

–//在192.168.xx.yyy 上执行,以root用户:
which ssh
/usr/bin/ssh

ldd $(which ssh)
linux-vdso.so.1 => (0x00007fff1f1af000)
libcrypto.so.1.0.0 => /usr/local/openssl/lib/libcrypto.so.1.0.0 (0x00007f28497e9000)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
librt.so.1 => /lib64/librt.so.1 (0x00007f28495df000)
libdl.so.2 => /lib64/libdl.so.2 (0x00007f28493db000)
libutil.so.1 => /lib64/libutil.so.1 (0x00007f28491d8000)
libz.so.1 => /usr/local/lib/libz.so.1 (0x00007f2848fc1000)
libcrypt.so.1 => /lib64/libcrypt.so.1 (0x00007f2848d88000)
libresolv.so.2 => /lib64/libresolv.so.2 (0x00007f2848b73000)
libc.so.6 => /lib64/libc.so.6 (0x00007f284881b000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f28485fe000)
/lib64/ld-linux-x86-64.so.2 (0x00007f2849f36000)

–//以grid用户执行:
$ ls -ld /usr/local/openssl/
drwxr-x— 8 root root 4096 2020-07-01 16:49:14 /usr/local/openssl/
–//其他组没有任何权限,这样既不能读也无法进入对应目录.

$ cd /usr/local/openssl/
-bash: cd: /usr/local/openssl/: Permission denied

stat /usr/local/openssl/lib/libcrypto.so.1.0.0
File: /usr/local/openssl/lib/libcrypto.so.1.0.0' Size: 3028344 Blocks: 5928 IO Block: 4096 regular file Device: fc00h/64512d Inode: 200386 Links: 1 Access: (0750/-rwxr-x---) Uid: ( 0/ root) Gid: ( 0/ root) Access: 2021-09-17 11:08:33.000000000 +0800 Modify: 2020-07-01 16:50:34.000000000 +0800 Change: 2021-09-17 11:08:26.000000000 +0800 --//其他组对/usr/local/openssl/lib/libcrypto.so.1.0.0文件也没有任何权限,自然普通用户是无法访问打开这个文件.</p> <p>--//有几种解决方法,第一种建立软链接在/lib64目录下.</p> <p>cd /lib64 ln -s /usr/local/openssl/lib/libcrypto.so.1.0.0 chmod 755 /usr/local/openssl/lib/libcrypto.so.1.0.0</p> <p>--//第二种直接拷贝文件/usr/local/openssl/lib/libcrypto.so.1.0.0到/lib64目录:</p> <p>cd /lib64 cp /usr/local/openssl/lib/libcrypto.so.1.0.0 . chmod 755 libcrypto.so.1.0.0</p> <p>--//我选择第2种,主要原因我不想改动/usr/local/openssl/lib/libcrypto.so.1.0.0文件权限.</p> <p>--//测试通过,这样普通用户也可以使用ssh,我记忆里以前肯定没有问题的,不然oracle rac安装不可能完成.</p> <p>--//我估计是等保做了某些处理,具体看看一些细节.</p> <p>cd /lib64 mv libcrypto.so.1.0.0 libcrypto.so.1.0.0_xxx $ ls -l /lib64/libcrypto* -rwxr-xr-x 1 root root 1365136 2013-03-05 05:52:53 /lib64/libcrypto.so.0.9.8e -rwxr-xr-x 1 root root 3028344 2021-09-17 11:02:34 /lib64/libcrypto.so.1.0.0_xxx lrwxrwxrwx 1 root root 19 2014-05-16 23:11:39 /lib64/libcrypto.so.6 -> libcrypto.so.0.9.8e --//我估计原来的版本是0.9.8e,估计等保做了升级,版本是1.0.0.</p> <p>rpm -qif /lib64/libcrypto.so.0.9.8e Name : openssl Relocations: (not relocatable) Version : 0.9.8e Vendor: Oracle America Release : 26.el5_9.1 Build Date: Tue 05 Mar 2013 05:52:53 AM CST Install Date: Fri 16 May 2014 11:11:39 PM CST Build Host: ca-build56.us.oracle.com Group : System Environment/Libraries Source RPM: openssl-0.9.8e-26.el5_9.1.src.rpm Size : 3649954 License: BSDish Signature : DSA/SHA1, Tue 05 Mar 2013 05:55:45 AM CST, Key ID 66ced3de1e5e0159 URL : http://www.openssl.org/ Summary : The OpenSSL toolkit Description : The OpenSSL toolkit provides support for secure communications between machines. OpenSSL includes a certificate management tool and shared libraries which provide various cryptographic algorithms and protocols.</p> <p>rpm -qilf /usr/local/openssl/lib/libcrypto.so file /usr/local/openssl/lib/libcrypto.so is not owned by any package</p> <p>rpm -qilf /usr/local/openssl/lib/libcrypto.so.1.0.0 file /usr/local/openssl/lib/libcrypto.so.1.0.0 is not owned by any package</p> <p>ls -ld /usr/local/openssl drwxr-x--- 8 root root 4096 2020-07-01 16:49:14 /usr/local/openssl --//日期也暴露了等保安装升级留下的痕迹,该目录下的文件都是2020-07-01 16:4X.而且还可以看出升级不是采用rpm包的形式升级,我估 --//计使用tar的方式拷贝升级的.</p> <p>stat /usr/local/openssl File: /usr/local/openssl’
Size: 4096 Blocks: 8 IO Block: 4096 directory
Device: fc00h/64512d Inode: 184243 Links: 8
Access: (0750/drwxr-x—) Uid: ( 0/ root) Gid: ( 0/ root)
Access: 2021-09-17 11:14:15.000000000 +0800
Modify: 2020-07-01 16:49:14.000000000 +0800
Change: 2020-07-01 16:49:14.000000000 +0800

stat /usr/local/openssl/lib/libcrypto.so.1.0.0
File: `/usr/local/openssl/lib/libcrypto.so.1.0.0′
Size: 3028344 Blocks: 5928 IO Block: 4096 regular file
Device: fc00h/64512d Inode: 200386 Links: 1
Access: (0750/-rwxr-x—) Uid: ( 0/ root) Gid: ( 0/ root)
Access: 2021-09-17 11:08:33.000000000 +0800
Modify: 2020-07-01 16:50:34.000000000 +0800
Change: 2021-09-17 11:08:26.000000000 +0800

ls -l $(which ssh)
-rwxr-xr-x 1 root root 736616 2020-07-01 16:53:23 /usr/bin/ssh
–//日期暴露了做了升级的动作,执行ssh文件实际上被覆盖了,从另外的侧面可以看出不是rpm包的形式升级,这样旧的rpm相关文件还在.

rpm -qif $(which ssh)
Name : openssh-clients Relocations: (not relocatable)
Version : 4.3p2 Vendor: Oracle America
Release : 82.el5 Build Date: Thu 23 Feb 2012 07:01:22 AM CST
Install Date: Fri 16 May 2014 11:25:12 PM CST Build Host: ca-build10.us.oracle.com
Group : Applications/Internet Source RPM: openssh-4.3p2-82.el5.src.rpm
Size : 865836 License: BSD
Signature : DSA/SHA1, Fri 24 Feb 2012 07:44:57 AM CST, Key ID 66ced3de1e5e0159
URL : http://www.openssh.com/portable.html
Summary : The OpenSSH client applications
Description :
OpenSSH is a free version of SSH (Secure SHell), a program for logging
into and executing commands on a remote machine. This package includes
the clients necessary to make encrypted connections to SSH servers.

You’ll also need to install the openssh package on OpenSSH clients.

ssh -V
OpenSSH_7.9p1, OpenSSL 1.0.2r-fips 26 Feb 2019

–//对比我的测试环境的情况(192.168.100.78):
$ ldd $(which ssh)
linux-vdso.so.1 => (0x00007fff648e9000)
libfipscheck.so.1 => /usr/lib64/libfipscheck.so.1 (0x00007ffdb4f45000)
libcrypto.so.6 => /lib64/libcrypto.so.6 (0x00007ffdb4bf3000)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
libutil.so.1 => /lib64/libutil.so.1 (0x00007ffdb49f0000)
libz.so.1 => /lib64/libz.so.1 (0x00007ffdb47dc000)
libnsl.so.1 => /lib64/libnsl.so.1 (0x00007ffdb45c3000)
libcrypt.so.1 => /lib64/libcrypt.so.1 (0x00007ffdb438b000)
libresolv.so.2 => /lib64/libresolv.so.2 (0x00007ffdb4176000)
libgssapi_krb5.so.2 => /usr/lib64/libgssapi_krb5.so.2 (0x00007ffdb3f47000)
libkrb5.so.3 => /usr/lib64/libkrb5.so.3 (0x00007ffdb3cb2000)
libk5crypto.so.3 => /usr/lib64/libk5crypto.so.3 (0x00007ffdb3a8d000)
libcom_err.so.2 => /lib64/libcom_err.so.2 (0x00007ffdb388a000)
libnss3.so => /usr/lib64/libnss3.so (0x00007ffdb355c000)
libc.so.6 => /lib64/libc.so.6 (0x00007ffdb3203000)
libplc4.so => /usr/lib64/libplc4.so (0x00007ffdb2ffe000)
libdl.so.2 => /lib64/libdl.so.2 (0x00007ffdb2dfa000)
libkrb5support.so.0 => /usr/lib64/libkrb5support.so.0 (0x00007ffdb2bf2000)
libkeyutils.so.1 => /lib64/libkeyutils.so.1 (0x00007ffdb29ef000)
libnssutil3.so => /usr/lib64/libnssutil3.so (0x00007ffdb27ca000)
libplds4.so => /usr/lib64/libplds4.so (0x00007ffdb25c7000)
libnspr4.so => /usr/lib64/libnspr4.so (0x00007ffdb238b000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x00007ffdb216f000)
/lib64/ld-linux-x86-64.so.2 (0x0000003798c00000)
libselinux.so.1 => /lib64/libselinux.so.1 (0x00007ffdb1f57000)
libsepol.so.1 => /lib64/libsepol.so.1 (0x00007ffdb1d10000)

$ ls -l /lib64/libcrypto.so.6
lrwxrwxrwx 1 root root 19 2014-08-29 21:28:41 /lib64/libcrypto.so.6 -> libcrypto.so.0.9.8e

–//指向libcrypto.so.0.9.8e,也证明对方做了一些升级.

$ ls -l /lib64/libcrypto.so.*
-rwxr-xr-x 1 root root 1367232 2012-05-30 01:55:15 /lib64/libcrypto.so.0.9.8e
lrwxrwxrwx 1 root root 19 2014-08-29 21:28:41 /lib64/libcrypto.so.6 -> libcrypto.so.0.9.8e
–//原来的版本是0.9.8e.

$ ls -l $(which ssh)
-rwxr-xr-x 1 root root 306064 2012-02-23 07:01:22 /usr/bin/ssh

$ rpm -qif $(which ssh)
Name : openssh-clients Relocations: (not relocatable)
Version : 4.3p2 Vendor: Oracle America
Release : 82.el5 Build Date: Thu 23 Feb 2012 07:01:22 AM CST
Install Date: Fri 29 Aug 2014 09:30:48 PM CST Build Host: ca-build10.us.oracle.com
Group : Applications/Internet Source RPM: openssh-4.3p2-82.el5.src.rpm
Size : 865836 License: BSD
Signature : DSA/SHA1, Fri 24 Feb 2012 07:44:57 AM CST, Key ID 66ced3de1e5e0159
URL : http://www.openssh.com/portable.html
Summary : The OpenSSH client applications
Description :
OpenSSH is a free version of SSH (Secure SHell), a program for logging
into and executing commands on a remote machine. This package includes
the clients necessary to make encrypted connections to SSH servers.

You’ll also need to install the openssh package on OpenSSH clients.

–//与上面的一样,我估计不是使用rpm包安装的,而是拷贝或者tar包安装的.

$ ssh -V
OpenSSH_4.3p2, OpenSSL 0.9.8e-fips-rhel5 01 Jul 2008
–//对比前面版本完全不一致.

–//一旦生产系统上线,我个人很少在服务器安装升级软件包,除非存在安全漏洞,这台服务器我升级bash,即使升级我也选择rpm包模式,
–//也不会选择生产服务器安装编译软件,总而言之,做运维工作一定要小心再小心..

Original: https://www.cnblogs.com/lfree/p/15322692.html
Author: lfree
Title: [20210917]ssh: error while loading shared libraries: libcrypto.so.1.0.0.txt

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/524511/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

  • [20210930]bbed读取数据块7 fffext.sh.txt

    [20210930]bbed读取数据块7 fffext.sh.txt –//一般bash shell脚本很少考虑执行效率,仅仅考虑利用它快速解决工作中遇到的问题. &#…

    Linux 2023年6月13日
    077
  • Linux系统编程—信号捕捉

    前面我们学习了信号产生的几种方式,而对于信号的处理有如下几种方式: 默认处理方式; 忽略; 捕捉。 信号的捕捉,说白了就是抓到一个信号后,执行我们指定的函数,或者执行我们指定的动作…

    Linux 2023年6月14日
    0109
  • mysql二进制安装脚本部署

    mysql二进制安装脚本部署 mysql二进制安装脚本部署 单实例 使用函数的单实例 使用函数的单实例或者多实例 单实例 [root@localhost ~]# mkdir mys…

    Linux 2023年6月6日
    099
  • 记一次centos挂载ceph存储的坑

    生产有两台服务器,准备用来跑工作流,执行的资源的是放在ceph存储集群中,第一步挂载ceph 执行命令: mount -t ceph xxx:xxx -o name=admin,s…

    Linux 2023年5月27日
    087
  • Redis 持久化

    相关配置 port 6379 daemonize yes logfile "6379.log" dir /data dbfilename dump-6379.r…

    Linux 2023年5月28日
    096
  • 磁盘和文件系统

    fdisk -l [磁盘设备] //非交互式查看磁盘分区 fdisk [磁盘设备] //交互式查看和管理磁盘分区 非交互式查看磁盘分区 [root@localhost ~]# ll…

    Linux 2023年6月6日
    0111
  • shell 递归枚举文件并操作

    递归枚举文件并操作 #!/bin/bash CURDIR=$(cd $(dirname $0); pwd) export GOPATH=$CURDIR/.. echo GOPATH…

    Linux 2023年5月28日
    090
  • CenterOS对防火墙和端口号的操作

    1 防火墙设置 (1)设置开机启用防火墙:systemctl enable firewalld.service (2)设置开机禁用防火墙:systemctl disable fir…

    Linux 2023年6月7日
    078
  • shell运算符

    算术运算符 下表列出了常用的算术运算符,假定变量 a 为 10,变量 b 为 20: 运算符说明举例 + 加法 expr $a + $b 结果为 30。 – 减法 ex…

    Linux 2023年5月27日
    064
  • shell之文件路径截取

    最近写脚本,需要对脚本中函数传递的路径参数进行截取,发现了以下比较好用的方法,记录下: file=/dir1/dir2/dir3/my.file.txt 我们可以用${ }分别替换…

    Linux 2023年5月28日
    074
  • 数据库备份数据脚本

    #!/bin/bash currentpath=dirname $0 if [ ${currentpath} == ‘.’ ];then currentpath=pwd fi ba…

    Linux 2023年6月8日
    066
  • 【小记】pip 如何下载 whl 环境到无外网机器

    你的测试机肯定是有外网,脚本肯定也能在测试机跑通。 先导出 whl 包列表到txt: 然后执行下载到当前目录: 将 whl 拷贝到内网服务器安装即可。(Win和Linux编译不互通…

    Linux 2023年6月13日
    093
  • Redis安装及HA(High Availability)配置

    Redis是一种内存数据库,以KEY-VALUE(即键值对)的形式存储数据。这篇文章主要介绍的是Redis安装及配置,所以不对Redis本身作详细介绍了。 下 载: 解 压: 以r…

    Linux 2023年5月28日
    070
  • [20220909]bbed关于删除记录恢复的问题.txt

    [20220909]bbed关于删除记录恢复的问题.txt –//快下班被别人问的关于删除记录使用bbed恢复的问题,我开始以为很快讲解完,删除记录oracle仅仅打上…

    Linux 2023年6月13日
    073
  • 快速上手FastJSON

    作为一名后端开发而言肯定会接触数据,把数据提供给前端或者把数据存储起来,目前比较火热的传输格式是json,给前端传json是再常见不过啦,甚至是往db里面直接存入json。 在ja…

    Linux 2023年6月14日
    074
  • 关于网络安全防护架构中的DMZ区

    公司有一个网站群的业务,应用规模比较大,目前计划是从传统的虚拟机部署方式迁移到内部的私有云。 这种迁移的动作是一个很好的学习机会。在交流的时候的时候,领导有提到现有的架构基本上是参…

    Linux 2023年6月14日
    091
亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球