Linux系统基础知识·5
本文基于马哥教育就业班第五周课程总结
总结openssh服务安全加固OpenSSH是Linux系统中常用的远程登录工具,为了保证系统的安全性,需要对OpenSSH服务进行加固。以下是OpenSSH服务安全加固措施的主要内容:
禁用root用户登录:
禁用root用户登录可以防止黑客使用root账户进行暴力破解。可以通过修改/etc/ssh/sshd_config文件中的PermitRootLogin配置项为no来实现。
修改SSH端口号:
修改SSH端口号可以防止黑客使用默认端口号进行暴力破解。可以通过修改/etc/ssh/sshd_config文件中的Port配置项来实现。
使用SSH密钥登录:
使用SSH密钥登录可以防止黑客使用密码进行暴力破解。可以通过生成SSH密钥对,并将公钥添加到~/.ssh/authorized_keys文件中来实现。
禁用不安全的SSH协议版本:
禁用不安全的SSH协议版本可以防止黑客利用SSH漏洞进行攻击。可以通过修改/etc/ssh/sshd_config文件中的Protocol配置项为2来禁用SSH协议版本1。
使用防火墙限制SSH访问 ...
Linux系统基础知识·4
本文基于马哥教育就业班第四周课程总结
总结脚本高级命令trap, install, mktemp, expect, 进程优先级命令:nice, renice, 进程管理工具: ps, pstree, prtstat, pgrep, pidof, uptime,mpstat,top,htop, free, pmap, vmstat, iostat, iotop, iftop, nload, nethogs, iptraf-ng, dstat, glances, cockpit, kill, job, 任务相关的命令: at, crontab, 命令,选项,示例。#脚本高级命令:
trap命令:trap命令用于捕获和处理shell脚本中的信号。它可以用于在脚本执行期间处理中断、退出等信号。以下是一个trap命令的示例:
trap 'echo "Interrupted"; exit' INT
install命令:install命令用于将文件到指定目录,并设置文件的权限和所有者。以下是一个install命令的示例:
install -m 644 -o root -g root file ...
Linux动手实践·1
根据马哥教育架构班课程第一周作业而来
题目要求
在两台服务器上安装kvm虚拟化,把其中一台的虚拟机迁移到另一台;
手动制作一个容器镜像创建成容器并正常运行。
操作实践
KVM虚拟化
# 新建三个虚机,分别承担KVM两个节点和一个NFS主机的角色
# Node1: 192.168.10.101 KVM主机
# Node2: 192.168.10.102 KVM主机
# Stor1: 192.168.10.11 NFS主机,提供iso和kvm两个共享挂载点
# 在三台主机的/etc/hosts配置解析记录
192.168.10.101 node1
192.168.10.102 node2
192.168.10.11 stor1
# KVM主机的部署,Node1和Node2同步操作
# 最小虚拟化宿主环境,仅包括libvirt和qemu-kvm
yum group install -y virtualization-hypervisor
# 用于访问和控制虚拟机以及容器的接口,包括libvirt客户端
yum group install -y virtualization- ...
Linux系统基础知识·3
本文基于马哥教育就业班第三周课程总结
软件管理
尝试基于gcc命令说明 c语言编译过程。C语言编译过程主要包括预处理、编译、汇编和链接四个阶段。gcc命令是一个常用的C语言编译器,可以完成这四个阶段的工作。
下面是gcc命令的使用示例和各个阶段的说明:
1. 预处理阶段主要是对源代码进行宏替换、头文件包含等操作,生成预处理后的代码。gcc命令中使用参数“-E”来进行预处理,示例命令如下:
$ gcc -E main.c -o main.i
2. 编译阶段主要是将预处理后的代码转换成汇编代码。gcc命令中使用参数“-S”来进行编译,示例命令如下:
$ gcc -S main.i -o main.s
3. 汇编阶段主要是将汇编代码转换成机器码。gcc命令中使用参数“-c”来进行汇编,示例命令如下:
$ gcc -c main.s -o main.o
4. 链接阶段主要是将多个目标文件链接成一个可执行文件。gcc命令中使用参数“-o”来指定输出文件名,示例命令如下:
$ gcc main.o -o main
以上是gcc命令的使用示例和C语言编译过程的各个阶段说明。在实际编译过程中,可以 ...
Linux系统基础知识·2
本文基于马哥教育就业班第二周课程总结
系统设计
请总结Linux的安全模型
Linux的安全模型基于许多不同的安全措施,包括访问控制、加密、审计和漏洞修补以下是Linux安全模型的主要要点:
1. 访问控制:Linux使用许多不同的访问控制机制来保护系统和数据其中最常见的是基于用户和组的访问控制,它允许管理员为每个用户和组分配不同的权限此外,Linux还支持访问控制列表(ACL)和强制访问控制(MAC)等高级访问控制机制;
2. 加密:Linux支持许多不同的加密技术,包括SSL / TLS、SSH、IPSec和GPG等这些技术可以用于保护数据传输和存储,以及验证用户身份;
3. 审计:Linux支持系统级别的审计,可以记录用户活动、系统事件和安全事件等这些日志可以用于监控系统安全性,并帮助管理员识别潜在的安全问题;
4. 漏洞修补:Linux社区积极修补系统中发现的漏洞,并发布安全更新管理员应该定期更新系统以确保最新的安全补丁已安装;
总之,Linux的安全模型是一个多层次的、综合的安全框架,它提供了许多不同的安全措施来保护系统和数据管理员应该了解这些措施,并采取适当 ...
Linux系统基础知识·1
一个完整计算系统的简要介绍
一个完整的计算系统通常包含以下几个组成部分:
1. 输入设备:用于输入数据和指令的设备,例如键盘、鼠标、触控屏等。
2. 输出设备:用于显示计算结果和其他信息的设备,例如显示器、打印机等。
3. 中央处理器(CPU):执行计算机指令、控制数据处理流程的核心部件。
4. 存储器:用于存储程序和数据的设备,包括内存和外存。
5. 总线:连接各个硬件组件的通信路径。
6. 操作系统:控制计算机各个部分的软件系统,管理计算机资源,提供用户接口等功能。
7. 应用程序:各种用于完成特定任务的软件程序,例如文字处理、图像处理、音频制作等。
在一个完整的计算系统中,这些部件通常紧密配合、相互协作,共同完成各种复杂的计算任务。
简述进制转换,并举例
进制转换是指将一个数字从一种进制表示方式转换为另一种进制表示方式的过程。常见的进制包括二进制、八进制、十进制和十六进制。
下面以十进制为例,简述一下如何将一个十进制数转换成其他进制的表示方式。
1. 转换成二进制:利用除法取余法,将十进制数不断除以2,直到商为0为止,将余数倒序排列即为该数的二进制表示。例如:将十进制数27转 ...
内核虚拟化KVM的使用
概念KVM全称为Kernel Virtual Machine内核虚拟机,它是硬件辅助的全虚拟化解决方案,支持x86架构,并已移植到ARM、MIPS、PowerPC等架构。KVM作为可加载的内核模块包含在Linux内核之中,除了通用模块kvm.ko外,针对不同的CPU还有不同的模块,例如针对Intel的CPU的kvm-intel.ko,针对AMD的kvm-amd.ko.
KVM的体系结构的核心是一组实现虚拟化功能的Linux内核模块,包括提供虚拟化能力的kvm.ko,还包括特定CPU的模块和管理中断、时钟等设备管理模块。而其他设备例如网卡、显卡、存储控制器和磁盘则由QEMU(Quick Emulator)来负责。它通过/dev/kvm接口设置一个Guest操作系统的地址空间,从而提供模拟的I/O设备。Libvirt是管理虚拟机和其他虚拟化功能的软件集合,包括API库、守护进程(libvirtd)和其他工具,它在KVM解决方案中扮演管理工具的角色。
入门创建虚机准备安装以Rocky Linux 8为例,需要准备一台对应虚机,并开启相关嵌套虚拟化功能。
# 最小 ...
CentOS主机清理旧内核
CentOS7上删除旧内核centos7 上有专门的清理工具,package-cleanup来执行内核的清理。
[root@centos7 ~]# package-cleanup --oldkernels --count=1
Loaded plugins: fastestmirror, langpacks
--> Running transaction check
---> Package kernel.x86_64 0:3.10.0-1160.el7 will be erased
---> Package kernel.x86_64 0:3.10.0-1160.88.1.el7 will be erased
--> Finished Dependency Resolution
base/7/x86_64 ...
CCSK思维导图
CCSK前导知识