文章261
标签214
分类4

centos6系列升级openssl到1.0.2o

本次测试环境为centos6.5、centos6.9

1.查看版本 

# openssl version -a

2、下载openssl-1.0.2o.tar.gz

https://www.openssl.org/source/openssl-1.0.2o.tar.gz

利用ssh一类工具上传至服务器

3、解压安装

tar zxf openssl-1.0.2o.tar.gz

cd openssl-1.0.2o

1057884-73d81ae993baec6a.png

5、更新zlib

# yum install -y  zlib

./config shared zlib

这一步会出现报错,这是需要安装perl环境 

# yum install -y perl

然后重新执行

# ./config shared zlib

1057884-9c6dd077e8bc3b76.png

make

make install

mv /usr/bin/openssl /usr/bin/openssl.bak

mv /usr/include/openssl /usr/include/openssl.bak

ln -s /usr/local/ssl/bin/openssl /usr/bin/openssl

ln -s /usr/local/ssl/include/openssl /usr/include/openssl

echo “/usr/local/ssl/lib” >> /etc/ld.so.conf

ldconfig -v       

1057884-6f4939227eb242c7.png

5、查看是否升级成功

# openssl version -a

1057884-a276b6221931d8c6.png

centos6系列升级openssh爬坑记录

Centos6系列升级openssh教程

零、虚机建议更新前做个快照,本文档基于centos6.9制作,请根据实际操作系统下载对应iso镜像操作

一、安装编译所需的工具包

创建本地yum源(内网环境不能连接外网,一个个的安装依赖包过于复杂,有外网环境直接yum install gcc pam-devel zlib-devel openssl-devel即可,然后直接到第二步)

1、创建本地yum目录
1057884-c653d61e08761eda.png

2、查看系统版本信息

# cat /etc/issue

1057884-5039ef0f878f4305.png

3、挂载系统iso镜像

# mount /dev/cdrom /tmp/update/

1057884-f4110f5d359b6031.png

# ls /tmp/update # 如下图所示 说明挂载成功

1057884-cfed7a0f8ab63c13.png

4配置yum

# cd /etc/yum.repos.d

# mkdir bak

# mv *.repo bak/

# cp ./CentOS-Media.repo .

# ls

1057884-bd4fddcd4f633f80.png

# vi CentOS-Media.repo 改成如下图所示的配置

1057884-bee096f8f052339d.png

清除下yum缓存

1057884-5a9cd9ec08cefb5f.png

查看yum仓库列表

1057884-7a6aca8ca0412c97.png

到此,本地yum源已完成,通过yum升级openssh所需的依赖包即可

# yum install gcc pam-devel zlib-devel openssl-devel(手工安装需要的依赖包较多,建议使用yum方式安装)

二、安装telnet

# yum -y install telnet-server*

或者下载以下两个包手动安装

xinetd-2.3.14-40.el6.x86_64.rpm

telnet-server-0.17-48.el6.x86_64.rpm

1057884-f9a8150850a39391.png

1057884-89c460b506824850.png

启动Telnet服务

# vi /etc/xinetd.d/telnet

1057884-6a3060353d015494.png

将其中disable字段的yes改为no以启用telnet服务

mv /etc/securetty /etc/securetty.bak    #允许root用户通过telnet登录

# service xinetd start                    #启动telnet服务

# chkconfig xinetd on                     #使telnet服务开机启动,避免升级过程中服务器意外重启后无法远程登录系统

1057884-97e4712e627a4073.png

发现无法连接的话,请关闭防火墙

# servcie iptables stop 

# chkconfig iptables off 

1057884-0eda341224580fc0.png

接下来将要更新的openssh安装包copy到服务器上

到此前提条件准备完毕

三、升级openssh

1.备份当前openssh

# mv /etc/ssh /etc/ssh.bak

# mv /etc/init.d/sshd /etc/init.d/sshd.abk

2.卸载当前openssh

1057884-9889647564c24a10.png

# rpm -e –nodeps openssh-xxx(使用这条命令逐个卸载)

根据已安装的包名称来卸载即可

注意:rpm -e --nodeps openssh-server-5.3p1-122.el6.x86_64 会出现:

error reading information on service sshd: No such file or directory

error: %preun(openssh-server-5.3p1-122.el6.x86_64) scriptlet failed, exit status 1

解决方法:

# rpm -e --noscripts openssh-server-5.3p1-122.el6.x86_64

3.解压openssh_7.5p1源码并编译安装

# tar -zxvf openssh-7.5p1.tar.gz

# cd openssh-7.5p1

# ./configure --prefix=/usr --sysconfdir=/etc/ssh --with-md5-passwords --with-pam --with-zlib --with-openssl-includes=/usr --with-privsep-path=/var/lib/sshd

# make

此处执行编译时可能报error,请检查之前是否成功安装了pam-devel zlib-devel openssl-devel

解决完错误继续下一步:

# make install

四、openssh安装后环境配置

1.在openssh编译目录执行如下命令

# install -v -m755 contrib/ssh-copy-id /usr/bin

# install -v -m644 contrib/ssh-copy-id.1 /usr/share/man/man1

# install -v -m755 -d /usr/share/doc/openssh-7.5p1

# install -v -m644 INSTALL LICENCE OVERVIEW README* /usr/share/doc/openssh-7.5p1
  1. 验证是否升级成功

# ssh -V  

1057884-567f1a43ba0b0b00.png

3.启用OpenSSH服务

在openssh编译目录执行如下目录
# echo 'X11Forwarding yes' >> /etc/ssh/sshd_config
# echo "PermitRootLogin yes" >> /etc/ssh/sshd_config   #允许root用户通过ssh登录
# cp -p contrib/redhat/sshd.init /etc/init.d/sshd
# chmod +x /etc/init.d/sshd
# chkconfig  --add  sshd
# chkconfig  sshd  on
# chkconfig  --list  sshd
# service sshd restart

4.此刻记得关闭selinux,否则重启后无法正常连接ssh,

关闭方法:

临时关闭:# setenforce 0

永久关闭:# vim /etc/selinux/config

将SELINUX=enforcing改为SELINUX=disabled,保存后退出

4.重启:

# reboot

五、重启系统验证openssh没问题后关闭telnet服务

# mv /etc/securetty.bak /etc/securetty

# chkconfig xinetd off

# service xinetd stop

如需还原之前的ssh配置信息,可直接删除升级后的配置信息,恢复备份。

# rm -rf /etc/ssh

# mv /etc/ssh.bak /etc/ssh

参考资料:http://blog.51cto.com/hnr520/1923012

XShell同时操作多个终端

今天看到同事在用xshell时候才知道,这个功能对多台服务器同时运行一个命令简直不要太棒!!!
先上图看效果
1057884-92b77341564504f9.png
1057884-34b55f08c95ebbb8.png
1057884-5aa1034610bfea6d.png

其实很简单 按照下图配置

1057884-e37391baeab35c2a.png
然后选择全部会话

1057884-e00e1cd1202bdca2.png
需要运行的命令在此处输入即可
1057884-29b3cb3cfb3cdf5a.png

Windows Server 2008 修改远程桌面(RDP)默认端口3389

打开“开始→运行”,输入“regedit”,打开注册表,找到以下路径:[HKEY_LOCAL_MACHINE\SYSTEM\
CurrentControlSet\Control\Terminal Server\
Wds\rdpwd\Tds\tcp],找到PortNamber 其默认值是3389,修改成所希望的端口即可,例如33389。
1057884-1072517ca92e4c2b.png
改完还有一个要修改的

再打开[HKEY_LOCAL_MACHINE\
SYSTEM\CurrentContro1Set\Control\Tenninal Server\WinStations\RDP-Tcp],将PortNumber的值(默认是3389)修改成端口33389。
1057884-97d65934e11d162d.png

修改完毕,重新启动电脑即可

学以致用的正则表达式

某天收到某管理员发来的一堆原始的服务器信息统计表,大概如下:
(各种脱敏处理,哈哈哈)
1057884-008904da94dfe5ac.png
然而我只要其中的IP部分,其他的都是不用的, 由于数据量比较大,不可能一条一条的去复制的,这样子就太没有效率了,于是想着该怎么处理下比较好,真的不想一条条的复制,这样子就显得太low了(二次挣扎),于是就想起了之前学Linux的时候学过grep 的正则表达式

grep -o -P "(\d+\.)(\d+\.)(\d+\.)\d+" 159.txt

-o 只输出文件中匹配到的部分
-P 是利用PERL的正则语法进行匹配
\d 匹配从 0 到 9 中的任意一个数字字符(等价于 [0-9])
\. 就是转义下ip中的.
效果就是棒棒的啦! 美滋滋
1057884-ff2cf882d1069a16.png