CentOS8最小化安装后配置IP,并升级到OpenSSH8.1P1

一、nmcli命令修改IP

输入nmcli命令看目前的连接的网卡名

CentOS8最小化安装后的几个操作要点,含升级到OpenSSH8.1P1

网卡名ens192

网卡名是ens192,修改静态IPV4网卡用如下命令(有很多文章说也用nmcli,其实没那个必要,VI命令搞定一切,而且CentOS8之前都是这么改,接受度也高)

# vi /etc/sysconfig/network-scripts/ifcfg-ens192 //不展开说了,修改IP地址,网关,DNS

修改后用如下命令加载配置,重启网卡

CentOS8最小化安装后的几个操作要点,含升级到OpenSSH8.1P1

nmcli三连命令

# nmcli c reload //加载新的网卡配置信息
# nmcli c down ens192
# nmcli up ens192 //重启网卡

PING一下自己的网关,如果通了就OK了,重要提醒一下,修改IP不要在远程连接的时候做,通过远程控制卡是个好方法,否则你在DOWN网卡的时候,就只能骂妈卖批了。

二、OpenSSH升级

虽然说CentOS8已经采用了比较新的7.8p1版本,但目前敌明我暗,对安全增加更多的关注也不为过,2019-10-09 OpenSSH发布8.1版本,下面来说怎么升级到最新的8.1版本

CentOS8最小化安装后的几个操作要点,含升级到OpenSSH8.1P1

CentOS8上默认的OpenSSH版本

用默认的软件源尝试升级,提示无需任何处理,也就是还没有适合CentOS8_1905的OpenSSH8.1p1版本的RPM包放出来,所以想用RPM包升级的同学可能要失望了。再看看目前放出的其他Linux版本的Openssh8.1p1的rpm包,发现基础库全不支持CentOS8,所以我们只能直接编译安装。

CentOS8最小化安装后的几个操作要点,含升级到OpenSSH8.1P1

Libcrypt.so.2不支持CentOS8

先看看OpenSSH官网对安装的要求

https://ftp.openbsd.org/pub/OpenBSD/OpenSSH/portable/INSTALL

Zlib 1.1.4 or 1.2.1.2 or greater (earlier 1.2.x versions have problems):
http://www.gzip.org/zlib/
libcrypto from either of:
 - LibreSSL (https://www.libressl.org/)
 - OpenSSL (https://www.openssl.org) with any of the following versions:
 - 1.0.x >= 1.0.1 or 1.1.0 >= 1.1.0g or any 1.1.1

CentOS8最小化安装后的几个操作要点,含升级到OpenSSH8.1P1

CentOS8 默认最小化安装满足要求

# wget https://openbsd.hk/pub/OpenBSD/OpenSSH/portable/openssh-8.1p1.tar.gz
# ./configure --prefix=/usr/local/openssh;make;make install

CentOS8最小化安装后的几个操作要点,含升级到OpenSSH8.1P1

默认安装很多功能不支持,按需修改编译命令

如果想支持部分功能,就加如下参数(这里仅为举例说明,更加详细的请参加configure文件)
--with-md5-passwords --with-pam

编译中的错误解决方法

1、configure: error: zlib.h missing - please install first or check config.log

# dnf install zlib-devel

2、configure: error: *** working libcrypto not found, check config.log

# dnf install openssl-devel

编译结束后,看看版本

CentOS8最小化安装后的几个操作要点,含升级到OpenSSH8.1P1

编译完成

# vi /usr/local/openssh/etc/sshd_config //编辑新安装的SSH配置文件,修改的地方如下,大家参考
Port 2019
ListenAddress 1.1.1.1 //你的服务器IP
LoginGraceTime 2m
PermitRootLogin no
StrictModes yes
MaxAuthTries 3
MaxSessions 5
PasswordAuthentication yes
PermitEmptyPasswords no
UseDNS no
最下面加一行
Allowusers XXX //用这个用户登陆然后SU成ROOT,因为已经禁止ROOT的远程登陆了
保存退出
# systemctl disable sshd //停止老版本SSH的自启动
# cp openssh-8.1p1源代码目录/contrib/redhat/sshd.init /etc/init.d/ssh //注意这里用ssh而不是sshd,是为了和老版本相区别
# vi /etc/init.d/ssh //修改的地方如下,给大家参考
SSHD=/usr/local/openssh/sbin/sshd
 /sbin/restorecon /usr/local/openssh/etc/ssh_host_rsa_key.pub
 /sbin/restorecon /usr/local/openssh/etc/ssh_host_dsa_key.pub
 /sbin/restorecon /usr/local/openssh/etc/ssh_host_ecdsa_key.pub
做下面这步请用远程控制卡
# systemctl stop sshd //停止老版本SSH服务
# /etc/init.d/ssh start //测试新版本SSH服务是否可以正常启动,如正常启动继续按如下操作,否则请按提示修改
# systemctl enable ssh
# reboot 
重新启动后,远程用CRT软件登陆服务器SSH服务

CentOS8最小化安装后的几个操作要点,含升级到OpenSSH8.1P1

查看服务是否正常

至此,SSH服务升级完成。

三、其他说明

1、关闭SELINUX的方法,能避免很多开发中和维护中的非常诡异的问题,虽然官方不建议

# vi /etc/selinux/config

修改

SELINUX=enforcing

SELINUX=disabled

重新启动生效

2、调试阶段如需要关闭防火墙,按如下操作

# syetemctl stop firewalld

# systemctl disable firewalld

文章来源于:狮子爱溜达

评论

NerdyCat

登录过13天

分享&发布