【linux】校招中的“熟悉linux操作系统”一般是指达到什么程度?

 

这样,你先在网上找一套完整openssh升级方案(不是yum或apt的,要源码安装的),然后在虚拟机上反复安装测试,直到把他理解了、背下来。

面试的时候让你简单说说linux命令什么的,你就直接把这个方案从道到尾讲一下,基础命令一带而过就行,重点的命令解释下。这样你所谓的“熟悉linux操作系统”基本就差不多了。

几乎服务器都有ssh,但凡大企业或重点行业都会漏扫,就需要升级openssh。这个升级方案包含很多基础命令和源码安装过程,代表性比较强,尤其配合telnet登陆升级对安全性也有加分。

 

很多人评论说方案怎么怎么样,升级有没有必要,隐藏端口等等。但请看问题:校招中的“熟悉linux操作系统”一般是指达到什么程度?这个“程度”没有固定指标,那最简单办法就是让结果更直观。就是用知行合一,理论联系实际。方案是否合理、是否浪费服务器资源,与题主想应对校招关系不大。我面试的时候如果面试官让我说几个常用命令,那我就简单深入的讲下这个方案基本是可以过的。现在我把之前用的方案贴出来(centos7.6下openssh8.6p1),想应对面试的可以拿去试试。至于讨论方案是否可行的,可以去技术论坛。

一、升级背景:
漏洞扫描显示linux服务器openssh有高危漏洞,需要进行修复。openssh是远程登录到linux服务器
的重要工具,要修复此漏洞需升级到最高版本(2021年5月中旬最新版本为8.6p1)。

二、升级说明:
1、所有升级文件均从官网下载。
2、linux服务器系统为Centos7可适用此方案。
3、Centos7系统需要有yum源,方便解决依赖关系问题。如无法实现,则需上传同系统版本安装映
像文件,作为本地yum源。
4、安装过程受网络影响极大,一旦出现不可抗因素致网络断开,可能会导致升级中断,无法远程
连接,出现此情况需现场人员配合解决。
5、升级过程出现问题需现场人员根据回退方案进行恢复操作。

三、升级过程:
(0)安装并启用telnet
1、安装telnet
yum install telnet-server telnet xinet
2、修改配置文件
vi /etc/xinetd.d/telnet

disable= no       //将yes改为no
#让root可以登录
#mv /etc/securetty /etc/securetty.bak
重启服务
service xinetd restart
3、启动相应服务,然后使用telnet登录到服务器
systemctl start telnet.socket
systemctl start xinetd
chkconfig --list
(一)配置yum源
1、上传与生产环境相同的centos7版本的iso和openssh8.6p1的安装包到服务器。

2、挂载iso
创建iso存放目录和挂载目录,并上传iso镜像文件到iso存放目录/mnt/iso下
mkdir /mnt/iso 
mkdir /mnt/cdrom
mv CentOS-7.6-x86_64-DVD-1810.iso /mnt/iso/
挂载iso镜像到挂载目录/mnt/cdrom下
mount -o loop /mnt/iso/CentOS-7.6-x86_64-DVD-1810.iso /mnt/cdrom
使用df -h命令查询挂载是否成功
df -h

3、备份原本地源
进入repos配置目录
cd /etc/yum.repos.d/
创建备份文件夹
mkdir repobak
移动配置文件到repobak文件夹中
mv *.repo repobak/

4、新建光盘源配置文件
vi CentOS-Media.repo
输入下列内容
```
[c7-media]
name=CentOS-$releasever - Media
baseurl=file:///mnt/cdrom/

gpgcheck=0
enabled=1
```
5、测试安装源
yum clean all
yum makecache
(二)升级openssh版本到8.6p1
1、下载或上传安装包openssh-8.6p1.tar.gz到/root目录下
进入安装包所在文件夹
cd /root/linshi

2、关闭Selinux
setenforce 0
sed -i "s/SELINUX=enforcing/SELINUX=disabled/g" /etc/selinux/config

3、安装依赖关系
yum install -y gcc pam-devel rpm-build wget zlib-devel openssl-devel net-tools
tar -xvf openssh-8.6p1.tar.gz
cd openssh-8.6p1

4、卸载旧版openssh
rpm -qa |grep openssh
ps:下一步骤为删除原有ssh,但不会影响现在进行的ssh会话,所以整个操作过程不要断开ssh会话,
否则无法再次连接,只能由现场人员进行回退后重新操作(推荐使用telnet进行升级)。
for i in $(rpm -qa |grep openssh);do rpm -e $i --nodeps;done

5、设置、编译、安装
./configure --prefix=/usr --sysconfdir=/etc/ssh --with-md5-passwords --with-pam --with-tcp-wrappers  --with-ssl-dir=/usr/local/ssl/lib --without-hardening
mv /etc/ssh /etc/ssh.old
cp contrib/redhat/sshd.pam /etc/pam.d/sshd
#编译
make
#安装
make install

6、设置自启动
复制启动脚本到/etc/init.d
cp contrib/redhat/sshd.init /etc/init.d/sshd
chkconfig --add sshd
chkconfig sshd on
chkconfig --list|grep sshd
sed -i "32a PermitRootLogin yes" /etc/ssh/sshd_config
#重启ssh服务
service sshd restart

7、检查升级情况
ssh -V
输出版本号为“OpenSSH_8.6p1”,说明更新成功

(三)关闭telnet
关闭服务
systemctl stop telnet.socket
systemctl stop xinetd
#root可以登录
#mv /etc/securetty.bak /etc/securetty

卸载telnet
yum remove telnet-server  xinetd

ps:此时ssh是可以连接状态,不要断开连接防止修改出错无法连接服务器。测试新端口是否打开
telnet 127.0.0.1 22
#出现如下显示表示端口正常打开
Trying 127.0.0.1...
Connected to 127.0.0.1.
Escape character is '^]'.
SSH-2.0-OpenSSH_8.6
使用远程工具新开窗口,连接新端口测试修改是否成功,如有问题马上使用之前的连接进行检查修改。

(四)回退方案
1、挂载iso文件作为yum源
mount -o loop /mnt/iso/CentOS-7.6-x86_64-DVD-1810.iso /mnt/cdrom
2、安装openssh
yum install openssh*
3、启动ssh
service sshd start
4、重新连接ssh,然后从(二)4开始做。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/366172.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Linux 网络配置及基础服务

目录 一. 查看网络配置信息的相关命令 1.1 ifconfig 命令 作用 1: 作用 2: 拓展: 1.2 ip/ethtool命令 1.3 hostname命令 1.4 route 命令 1.5 netstat 命令 1.6 ss(socket statistics)命令 1.7 ping 命令 …

接口自动化处理动态参数

接口自动化处理动态参数 1、流程说明 某些接口的请求入参数据不能写死,需要动态传参。如用户注册接口,用户名需要动态生成。使用yaml编写测试数据时,在需要动态参数的数据后面添加上特殊字符${生成动态数据的方法名(参数&#x…

网工内推 | 港企、合资公司,厂商认证优先,五险一金

01 九龙仓(长沙)置业有限公司 招聘岗位:IT网络工程师 职责描述: 1.负责公司网络架构规划设计、设备选型、远程组网方案的规划和设计; 2.负责公司网络IP地址规划管理,根据业务需求和公司状况,对…

推荐收藏!算法工程师面试常考的手撕面试题!

今天给大家分享一些算法工程师技术面试中常手撕的代码。 不管是秋招还是社招,互联网大厂的技术面试中的手撕代码这一部分总是绕不过去的一关。 如果你对这些感兴趣,可以文末找我们交流 手撕 numpy写线性回归的随机梯度下降(stochastic gra…

微信小程序 安卓/IOS兼容问题

一、背景 在开发微信小程序时,不同的手机型号会出现兼容问题,特此记录一下 二、安卓/IOS兼容问题总结 2.1、new Date()时间转换格式时,IOS不兼容 问题:在安卓中时间格式2024-1-31 10:10:10,但是在iOS中是不支持 &q…

模板讲解之进阶

在之前的C入门的博客中我们就学习到了模板初阶,今天我们来学习模板的进阶,以便于更好地将模板运用到代码中 非类型模板参数 模板参数分类类型形参与非类型形参。 类型形参即:出现在模板参数列表中,跟在class或者typename之类的…

Java基础 集合(五)Set详解

目录 简介 set种类 AbstractSet 抽象类 SortedSet 接口 HashSet LinkedHashSet TreeSet 前言-与正文无关 生活远不止眼前的苦劳与奔波,它还充满了无数值得我们去体验和珍惜的美好事物。在这个快节奏的世界中,我们往往容易陷入工作的漩涡&#xff…

【2024.2.2练习】方格取数

题目描述 题目思路 如果从A到B只走一次的话可以用动态规划轻松解决。问题在于会走两次,第二次显然要走获取数字最多的路径,但第一次走哪条路径需要抉择。 错误的思路是以为这道题适合贪心,两次都选择最优路线。可以举出反例。 A2112112B …

Vim编辑器

1.文件复制 拷贝/etc/profile 数据到/root 目录下 cp /etc/profile /root如果root文件夹在上一目录下 cp /etc/profile ../root 2.打开文件 vim etc/profile 打开ect文件夹中的profile文件 3.文件编辑 文件编辑分为一般模式 与编辑模式。打开文件为一般模式,按…

【c语言】strcpy()和strncpy():字符串复制详解

🎈个人主页:甜美的江 🎉欢迎 👍点赞✍评论⭐收藏 🤗收录专栏:c语言 🤝希望本文对您有所裨益,如有不足之处,欢迎在评论区提出指正,让我们共同学习、交流进步&a…

C++ copy()函数详细介绍

copy() 是一个标准库函数,位于 头文件中。它用于将一个容器中的元素复制到另一个容器中,或者将一个范围内的元素复制到另一个范围中。 函数参数介绍 copy( first, last, d_first );first 和 last:表示输入范围的迭代器。 first 指向要复制的…

操作系统基础:内存管理概述【中】

🌈个人主页:godspeed_lucip 🔥 系列专栏:OS从基础到进阶 🏝️1 基本分页存储管理🏖️1.1 总览🏖️1.2 什么是分页存储🏰1.2.1 将物理空间分页🏰1.2.2 将逻辑空间分页&…

Android搭建python环境

通过wifi连接adb: 首先下载无线abd工具: https://www.downkuai.com/android/170494.html 运行效果图: 然后开启后根据自身ip即可连接: adb connect ip:5555 安装busybox: 首先执行如下命令查看手机架构: adb sh…

分布式ID介绍实现方案总结

分布式 ID 介绍 什么是 ID? 日常开发中,我们需要对系统中的各种数据使用 ID 唯一表示,比如用户 ID 对应且仅对应一个人,商品 ID 对应且仅对应一件商品,订单 ID 对应且仅对应一个订单。 我们现实生活中也有各种 ID&…

[C++]继承(续)

一、基类和派生类对象赋值转换 在public继承时,父类和子类是一个“is - a”的关系。 子类对象赋值给父类对象/父类指针/父类引用,我们认为是天然的,中间不产生临时对象,也叫作父子类赋值兼容规则(切割/切片&#xff…

Spring-mybatis

怎样通过Spring整合Mybatis来实现业务 目录 1.导入依赖 <dependencies><dependency><groupId>junit</groupId><artifactId>junit</artifactId><version>3.8.1</version><scope>test</scope></dependency>&l…

化工企业能源在线监测管理系统,能源管理新利器

化工企业在开展化工生产活动时&#xff0c;能源消耗量较大&#xff0c;其节能潜力空间也较大&#xff0c;因此必须控制能耗强度&#xff0c;促进能效水平的稳步提升。化工企业通过能源现状的分析&#xff0c;能够实现能源使用情况的实时反馈与监管&#xff0c;从而达到节能减排…

MobPush:Android SDK 集成指南

开发工具&#xff1a;Android Studio 集成方式&#xff1a;Gradle在线集成 安卓版本支持&#xff1a;minSdkVersion 19 集成前准备 注册账号 使用PushSDK之前&#xff0c;需要先在MobTech官网注册开发者账号&#xff0c;并获取MobTech提供的AppKey和AppSecret&#xff0c;…

搜狗开源框架Workflow网络模型分析

workflow是一个比较轻量化的后端服务框架&#xff0c;支持Linux/Mac/Windows主流平台&#xff0c;其网络模块是框架的核心。在workflow-windows分支上可以看到对windows的IOCP的封装&#xff0c;对于学习windows IOCP网络编程有很好的启发意义。因此&#xff0c;有必要对该网络…

第二十一回 阎婆大闹郓城县 朱仝义释宋公明-FreeBSD Linux 使用Rsync备份

阎婆状告宋江杀死她女儿阎婆惜&#xff0c;知县有意偏袒宋江&#xff0c;只是一味的拷打唐牛儿&#xff0c;但无奈张三张文远说刀子是宋江的&#xff0c;知县不得已差人拿宋江来审问。第一次没见到人&#xff0c;第二次派朱仝雷横两个人去。 朱仝到地窖里找到了躲藏的宋江&…