为了做好运维面试路上的助攻手,特整理了上百道 【运维技术栈面试题集锦】 ,让你面试不慌心不跳,高薪offer怀里抱!
这次整理的面试题,小到shell、MySQL,大到K8s等云原生技术栈,不仅适合运维新人入行面试需要,还适用于想提升进阶跳槽加薪的运维朋友。
本份面试集锦涵盖了
- 174 道运维工程师面试题
- 128道k8s面试题
- 108道shell脚本面试题
- 200道Linux面试题
- 51道docker面试题
- 35道Jenkis面试题
- 78道MongoDB面试题
- 17道ansible面试题
- 60道dubbo面试题
- 53道kafka面试
- 18道mysql面试题
- 40道nginx面试题
- 77道redis面试题
- 28道zookeeper
总计 1000+ 道面试题, 内容 又全含金量又高
- 174道运维工程师面试题
1、什么是运维?
2、在工作中,运维人员经常需要跟运营人员打交道,请问运营人员是做什么工作的?
3、现在给你三百台服务器,你怎么对他们进行管理?
4、简述raid0 raid1raid5二种工作模式的工作原理及特点
5、LVS、Nginx、HAproxy有什么区别?工作中你怎么选择?
6、Squid、Varinsh和Nginx有什么区别,工作中你怎么选择?
7、Tomcat和Resin有什么区别,工作中你怎么选择?
8、什么是中间件?什么是jdk?
9、讲述一下Tomcat8005、8009、8080三个端口的含义?
10、什么叫CDN?
11、什么叫网站灰度发布?
12、简述DNS进行域名解析的过程?
13、RabbitMQ是什么东西?
14、讲一下Keepalived的工作原理?
15、讲述一下LVS三种模式的工作过程?
16、mysql的innodb如何定位锁问题,mysql如何减少主从复制延迟?
17、如何重置mysql root密码?
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
3.1 hosts设置:
配置/etc/hosts.allow与/etc/hosts.deny文件
配置/etc/hosts.allow与/etc/hosts.deny文件的权限为0644
配置/etc/hosts.allow与/etc/hosts.deny文件的属主为root
3.2 防火墙配置
安装iptables
设置各个Chain的默认策略为drop
04 审计设置
安装并使用auditd
配置记录审计日志的文件大小:8M
配置记录审计日志的文件个数:5
单个审计日志文件大小达到设定的值时触发的动作为:keep_logs/rotate
磁盘空间满后触发的动作为:rotate
auditd需配置的一些规则:
规则:审计更改日期和时间的操作
规则:审计更改用户/组信息的操作
规则:审计更改系统网络环境的操作
规则:审计更改系统强制访问控制的操作
规则:审计登入登出系统的事件
规则:审计企图改变文件权限的操作
规则:审计未授权情况下企图访问文件未成功的事件
规则:审计使用提权命令的操作
规则:审计删除文件的操作????
规则:审计sudoers文件的变更
规则:审计sudoers日志文件的变更????
规则:审计日志文件audit.log不能被改变
05 日志设置
安装并启用`rsyslog`
06 认证授权
6.1 配置cron:
开启cron服务
配置 /etc/crontab,/etc/cron.hourly,/etc/cron.daily,/etc/cron.weekly,/etc/cron.monthly,//etc/cron.d文件的权限为0700
设置cron.allow:只允许特定的用户可以使用cron
6.2 配置SSH:
配置/etc/ssh/sshd_config文件的权限为0600
关闭X11Forwarding
设置最大认证尝试次数:4
开启IgnoreRhosts:不启用基于主机的认证
关闭HostbasedAuthentication: 关闭基于主机的认证
禁止使用root直接登录:PermitRootLogin no
禁止使用空密码登录:PermitEmptyPasswords no
禁止用户环境:PermitUserEnvironment no
设置使用的MAC算法:
hmac-sha2-512-etm@openssh.com,hmac-sha2-256-etm@openssh.com,umac-128etm@openssh.com,hmac-sha2-512,hmac-sha2-256,umac-128@openssh.com,curve25519sha256@libssh.org,diffie-hellman-group-exchange-sha256
设置空闲超时时间:180秒ClientAliveInterval 180
设置一次登录花费时间:120秒LoginGraceTime 120
6.3 配置PAM:
密码长度最少位数:12
密码中最少字符类型数:3
配置密码锁定:????
配置密码重用限制:不使用最近5次的密码
配置密码hash算法:SHA512
6.4 用户账户和环境设置:
密码有效时间:90天
密码更改最短间隔:7天
密码过期警告:7天
自动禁用特定时间内没有活动的账号:365天
配置系统账号的无法登录
配置root账号默认群组的GID为0
配置umask的默认值为027???
配置shell超时关闭会话时间:180
配置可以使用su命令的用户
07 系统维护
7.1 重要文件权限:
/etc/passwd 0644 uid 0 gid 0
/etc/shadow 0000 uid 0 gid 0
/etc/group 0644 uid 0 gid 0
/etc/gshadow 0000 uid 0 gid 0
/etc/passwd- 0644 uid 0 gid 0
/etc/shadow- 0000 uid 0 gid 0
/etc/group- 0644 uid 0 gid 0
/etc/gshadow- 0000 uid 0 gid 0
审计设置了SUID可执行文件的完整性 前面
审计设置了SGID的可执行文件的完整性
7.2 用户和组设置:
不允许密码为空的账号
只允许root账号的UID为0
设置path环境变量中的目录只有owner可写,group及other都没有w的权限
设置所有用户都有家目录
设置所有用户家目录的权限为0750
设置所有用户家目录的owner都为其自身
设置用户家目录内以.开头的文件,只有owner可写,group及other都没有w的权限
确保没有.netrc,.rhosts,.forward文件
确保所有在/etc/passwd中的组都在/etc/group
确保每个用户的UID都不同
确保每个组的GID都不同
确保用户名唯一
确保组名唯一
Windows Server加固
1.修改3389端口
3389端口是windows server 远程桌面的服务端口,可以通过这个端口进行远程桌面连接。对于系统安全来讲这是个安全隐患,在既不影响办公又不影响安全的前提下,我们采取修改3389端口的方法加固系统。
单击【开始】—-【运行】,输入regedit,打开注册表后,单击进入以下路径:【HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\control\TerminalServer\wds\rdpwd\Tds\tcp】在右边找到PortNumber值,默认为3389,选择十进制,改为5433.见下图:
按照路径找到PortNumber:
修改PortNumber的值:
再次打开注册表,找到以下路径:
【HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\control\TerminalServer\WinStations\RDP-Tcp】,在右边找到PortNumber的值(默认为3389),选择十进制,改为5433,需要注意的是两处的端口号要一致。操作如下:
找到RDP-Tcp,如图:
修改PortNumber值,如图:
重启计算机
查看实验情况,如图:3389端口已被修改
启用3389端口连接失败,如图:
启用5433端口连接成功,如图:
2.设置安全策略,不允许SAM帐户的匿名枚举,不允许SAM帐户和共享的匿名枚举
选择“开始菜单”的“管理工具”的“域安全策略”
在域安全策略界面上双击“本地策略”的“安全选项”中“不允许SAM账户的匿名枚举”
则会出现“不允许sam账户的匿名枚举的属性”的对话框,勾选“启用”单选框
3.在组策略中设置阻止访问注册表编辑工具
在“运行”输入“gpedit.msc”字符,则进入“组策略”的界面
在组策略的界面中双击“用户配置”的“管理模板”的“系统”的“阻止访问注册表编辑工具”
会出现“阻止访问注册表编辑工具的属性”界面,勾选“已启用”单选框
4.开启审核对象访问,成功与失败;开启审核目录服务访问,成功与失败;开启审核系统事件,成功与失败
在本地策略的“审核策略”的界面双击“审核对象访问”
则会出现“审核对象访问属性”的界面,在界面勾选成功和失败的复选框
在本地策略的“审核策略”的界面双击“审核登录事件”则会出现“审核登录事件 属性”的界面,在界面勾选成功和失败的复选框
5.禁止445端口漏洞
选择“网络连接”中的“本地连接”,在本地连接界面中把“microsoft网络的文件和打印机共享”的单选框勾掉
6.设置屏幕保护在恢复时使用密码保护
在桌面上右击选择“属性”按钮,则会出现“属性”的对话框,在界面中点击“屏幕保护程序”勾选“在恢复时使用密码保护”
7.设置windows密码策略:使密码必须满足复杂性,设置密码长度最小值为8位,设置密码最长存留期为30天。
在“本地安全策略”的“密码策略”界面上双击“密码最长使用期限”,则会出现属性,在属性中输入“30”
在“本地安全策略”的“密码策略”界面上双击“密码必须符合复杂性要求”,则会出现属性,在属性中勾选“已启用”
在“本地安全策略”的“密码策略”界面上双击“密码长度最小值”,则会出现属性,在属性中输入“8”
8.设置复位帐户锁定计数器为30分钟之后,设置帐户锁定时间为30分钟,设置帐户锁定阀值为6次无效登录。
在“开始菜单”中“管理工具”的“域安全策略
在域安全策略的界面双击 “账户锁定策略”的“复位账户锁定计时器,则会出现“复位账户锁定计时器的属性”输入“30”即可
在域安全策略的界面双击 “账户锁定策略”的“账户锁定时间”,则会出现“账户锁定时间”输入“30”即可
在域安全策略的界面双击 “账户锁定策略”的“账户锁定阈值”,则会出现“账户锁定时间阈值的属性”输入“6”即可
9.开启Windows防火墙,关闭ping服务,打开3389、80等服务
在windows 防火墙的界面上,勾选“开启”选框
在windows 防火墙界面上点击“高级”按钮,点击“icmp的设置”按钮,出现的设置界面不进行选择即可。
在windows 防火墙点击“例外”按钮则会出现例外的界面,勾选“http”和“远程桌面”最后点击“确定”按钮
10.关闭系统默认共享
系统默认共享功能给人们提供便利的同时也给系统安全带来风险,为了避免系统造成不必要的安全隐患,所以需要通过必要手段管理系统默认共享功能。
右击我的电脑——>管理——>服务和应用程序——>服务——>server——>禁用server服务,如图:
server被停用,如图:
扩展
账户策略
01 账户策略
1.1 密码策略
[+]确保强制密码历史值为5或更高
PasswordHistorySize=5
[+]确保密码最长使用期限值为90天或更少,但不为0
MaximumPasswordAge=90
[+]确保密码最短使用期限值为1或更多
MinimumPasswordAge=1
[+]确保密码必须符合复杂性要求值为enabled
PasswordComplexity=1
[+]确保用可还原的加密来存储密码值为Disabled
ClearTextPassword=0
[+]确保密码长度最小值值为8或更高
MinimumPasswordLength=8
1.2 账户锁定策略
[+]确保账户锁定时间值为15分钟或更长
LockoutDuration=15
[+]确保账户锁定阈值值为5或更少,但不为0
LockoutBadCount=5
[+]确保重置账户锁定计数器值为15分钟或更多,但值要小于Account lockout duration的值
ResetLockoutCount=15
02 审计策略
[+]审核策略更改:成功
AuditPolicyChange
[+]审核登录事件:成功,失败
AuditLogonEvents
[+]审核对象访问:成功
AuditObjectAccess
[+]审核进程跟踪:成功,失败
AuditProcessTracking
[+]审核目录服务访问:成功,失败
AuditDSAccess
[+]审核系统事件:成功,失败
AuditSystemEvents
[+]审核帐户登录事件:成功,失败
AuditAccountLogon
[+]审核帐户管理:成功,失败
AuditAccountManage
值的含义:
**用户权限分配 **
[+]确保作为受信任的呼叫方访问凭据管理器值为空,没有设置任何用户
SeTrustedCredManAccessPrivilege
[+]确保以操作系统方式执行值为空,没有设置任何用户。
SeTcbPrivilege
[+]确保将工作站添加到域值仅为特定的用户或用户组,不能有513,514,515
SeMachineAccountPrivilege
[+]确保创建全局对象值为空
SeCreateGlobalPrivilege
[+]确保拒绝作为批处理作业登录包含Guests
SeDenyBatchLogonRight
[+]确保拒绝以服务身份登录包含Guests
SeDenyServiceLogonRight
[+]确保拒绝本地登录包含Guests
SeDenyInteractiveLogonRight
[+]确保从远程系统强制关机值为administrators本地组和s-1-5-32-549(域控的一个内置组)
SeRemoteShutdownPrivilege
**先自我介绍一下,小编浙江大学毕业,去过华为、字节跳动等大厂,目前在阿里**
**深知大多数程序员,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!**
**因此收集整理了一份《2024年最新Linux运维全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。**
![img](https://img-blog.csdnimg.cn/img_convert/99fe20512671f7bac022249e9ea5e18d.png)
![img](https://img-blog.csdnimg.cn/img_convert/30e8776eda2b69811d68411a7250b1f5.png)
![img](https://img-blog.csdnimg.cn/img_convert/fdd02ca678a955c05b94abcc97675ff6.png)
![img](https://img-blog.csdnimg.cn/img_convert/f8e96b58c8c34ebc5d8ad5b650711c64.png)
![img](https://img-blog.csdnimg.cn/img_convert/f17051ba1de3d92d604b1591546dc0e5.png)
**既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上运维知识点,真正体系化!**
**由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新**
**[需要这份系统化的资料的朋友,可以点击这里获取!](https://bbs.csdn.net/forums/4f45ff00ff254613a03fab5e56a57acb)**
摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!**
**因此收集整理了一份《2024年最新Linux运维全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。**
[外链图片转存中...(img-HUmWY5rH-1715544233264)]
[外链图片转存中...(img-mC571mb4-1715544233264)]
[外链图片转存中...(img-UYrXH0EK-1715544233265)]
[外链图片转存中...(img-dQbQnK6Y-1715544233265)]
[外链图片转存中...(img-RxWcIPwj-1715544233265)]
**既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上运维知识点,真正体系化!**
**由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新**
**[需要这份系统化的资料的朋友,可以点击这里获取!](https://bbs.csdn.net/forums/4f45ff00ff254613a03fab5e56a57acb)**