Linux系统维护

1. 批量安装部署
2. 初始化配置
3. 禁用Selinux
  • 永久更改 SELinux 配置:
    编辑 SELinux 配置文件:使用文本编辑器打开 /etc/selinux/config 文件:
    在配置文件中,找到 SELINUX=… 的行。将其值更改为以下选项之一:
  •   enforcing:启用 SELinux 并强制执行安全策略。
    
  •   permissive:启用 SELinux 但仅记录违反安全策略的操作,不会阻止它们。
    
  •   disabled:禁用 SELinux。
    
4. 配置YUM源/仓库
vim /etc/yum.repos.d/myrepo.repo
[myrepo]
name=My YUM Repository
baseurl=http://example.com/yum/repo/   # 源的 URL
enabled=1                             # 设置为 1 启用源,设置为 0 禁用源
gpgcheck=1                            # 设置为 1 执行 GPG 检查,设置为 0 不执行检查
gpgkey=http://example.com/yum/RPM-GPG-KEY     # GPG 密钥的 URL
5. 下载安装常用工具包和软件包
[root@localhost ~]# yum -y install vim               //vim文本编辑器
[root@localhost ~]# yum -y install bash-completion        //tab键的软件包,重新登陆才生效
[root@localhost ~]# yum -y install net-tools        //安装网络相关联的软件包(ifconfig)
[root@localhost ~]# yum -y install zip.x86_64     //压缩zip包的软件
[root@localhost ~]# yum -y install unzip.x86_64    //解压zip包的软件
[root@localhost ~]# yum -y install gcc make //安装编译工具
6. SSH登录/用户设置
###登录设置
[root@localhost ~]# vim /etc/ssh/sshd_config
......
UseDNS no   //将注释去除并将UseDNS的值设置为no
......###用户设置
[root@localhost ~]# vim /etc/ssh/sshd_config
......
在文件的末尾添加新行,如果你想允许用户"alice"和"bob"登录,将选项设置为 AllowUsers alice bob
[root@localhost ~]# systemctl restart sshd  //重新启动SSH服务,以使更改生效
7. 注册新用户和删除不必要的用户/组
[root@localhost ~]# cp /etc/passwd /etc/passwdbai      #先备份
[root@localhost ~]# vim /etc/passwd        #编辑用户,在前面加#注释掉
......
#adm:x:3:4:adm:/var/adm:/sbin/nologin
#lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
#sync:x:5:0:sync:/sbin:/bin/sync
#shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
#halt:x:7:0:halt:/sbin:/sbin/halt
#mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
#operator:x:11:0:operator:/root:/sbin/nologin
#games:x:12:100:games:/usr/games:/sbin/nologin
#ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin   #注释ftp匿名账户
......
[root@localhost ~]# cp /etc/group /etc/groupbai     #先备份
[root@localhost ~]# vim /etc/group        #编辑用户组,在前面加#注释掉
......
#adm:x:4:adm
#lp:x:7:Ip
#uucp:x:14:uucp
#games:x:20:
#dip:x:40:
......
8. 关闭不必要的项目服务
service acpid stop chkconfig acpid off 
#停止服务,取消开机层动 #电源进阶设定,常用在Laptop 上
service autofs stop chkconfig autofs off 
#停用自动挂载档按系统与调边装署
service bluetooth stop chkconfig bluetooth  off 
#停用luetooth蓝芽
service cpuspeed stop chkconfig cpuspeed of 
#停用控制CPU速度主要用来省电
service cups stop chkconfig cups off 
#停用 Common UNIX Printing System 使采统支援印表机
service ip6tables stop chkconfig ip6tables off
#禁止IPv6
如果要恢复某一个服务,可以执行下面操作
service acpid start  chkconfig acpid on## 禁止非root用户执行/etc/rc.d/init.d/下的采统命禁止非root用户执行/etc/rc.d/init.d/下的系统命合
chmod -R 700 /etc/rc.d/init.d/*
Chmod -R 777 /etc/rc.d/init.d/*
#恢复默认设遇
9. 限制/设置不同文件的权限
chattr +a .bash_history#避免删除bash_history或者重定向到/dev/null
chattr +i bash_history
chmod 700 /usr/bin           恢复chmod 555 /usr/bin
chmod 700 /bin/ping          恢复 chmod 4755 /bin/ping
chmod 700 /usr/bin/vim       恢复 chmod 755 /usr/bin/vim
chmod 700 /bin/netstat       恢复 chmod 755 /bin/netstat
chmod 700 /usr/bin/tail      恢复 chmod 755 /usr/bin/tail
chmod 700 /usr/bin/less      恢复 chmod 755 /usr/bin/less
chmod 700 /usr/bin/head      恢复 chmod 755 /usr/bin/head 
chmod 700 /bin/cat           恢复 chmod 755 /bin/cat
chmod 700 /bin/uname         恢复 chmod 755 /bin/uname
chmod 500 /bin/ps            恢复 chmod 755 /bin/ps
10. 给对应文件增加不可更改属性
chattr +i /etc/passwd
chattr +i /etc/shadow
chattr +i /etc/group
chattr +i /etc/gshadow
chattr +i /etc/services   #给系统服务端口列表文件加锁,防止未经许可的删除或添加服务
lsattr /etc/passwd /etc/shadow /etc/group /etc/gshadow /etc/services  #显示文件的属性
注意:执行以上权限修改之后,就无法添加删除用户了。
如果再要添加删除用户,需要先取消上面的设置,等用户添加删除完成之后,再执行上面的操作
chattr -i /etc/passwd        #取消权限锁定设置
chattr -i /etc/shadow
chattr -1 /etc/group
chattr -i /etc/gshadow
chattr -i /etc/services     #取消系统服务端口列表文件加锁
现在可以进行添加删除用户了,操作完之后再锁走目录文件
11. 修改history命令属性
cp /etc/profile  /etc/profilebak
vim  /etc/profile
找到 HISTSIZE=1000 改为 HISTSIZE=100
12. 隐藏服务器系统信息

在缺省情况下,当你登陆到linux系统,它会告诉你该linux发行版的名称、版本、内核版本、服务器的名称。
为了不让这些默认的信息泄露出来,我们要进行下面的操作,让它只显示一个"login:"提示符。
删除/etc/issue和/etc/issue.net这两个文件,或者把这2个文件改名,效果是一样的。

mv /etc/issue  /etc/issuebak
mv  /etc/issue.net  /etc/issue.netbak
13. 优化内核参数
[root@localhost ~]# cp /etc/sysctl.conf /etc/sysctl.confbak   #先备份
[root@localhost ~]# vim /etc/sysctl.conf   #在文件末尾添加以下几行
net.ipv4.tcp_max_syn_backlog = 65536
net.core.netdev_max_backlog = 32768
net.core.somaxconn =32768
net.core.wmem_default = 8388608
net.core.rmem_default = 8388608
net.core.rmem_max = 16777216
net.core.wmem max = 16777216
net.ipv4.tcp_timestamps = 0
net.ipv4.tcp_synack_retries = 2
net.ipv4.tcp_syn_retries = 2
net.ipv4.tcp_tw_recycle = 1
#net.ipv4.tcp_tw len = 1
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_mem = 94500000 915000000 927000000
net.ipv4.tcp_max_orphans = 3276800
#net.ipv4.tcp_fin_timeout = 30
#net.ipv4.tcp_keepalive_time = 120
net.ipv4.ip_local_port_range = 10024 65535
#(表示用于向外连接的端口范围。缺省情况下很小:32768到61000  注意:这里不要将是低值设的太低,否则可能会占用掉正常的端口! )
[root@localhost ~]# /sbin/sysctl  -p   #使配置立即生效
14. 系统优化
[root@localhost ~]# cp /etc/profile /etc/profilebak2
[root@localhost ~]# vim /etc/profile           #在文件未尾添加以下内容
ulimit -c unlimited 
ulimit -s unlimited
ulimit -SHn 65535
[root@localhost ~]# source /etc/profile      #使配置立即生效
[root@localhost ~]# ulimit -a       #显示当前的各种用户进程限制
15. 服务器禁止Ping
[root@localhost ~]# cp /etc/rc.d/rc.local  /etc/rc.d/rc.localbak
[root@localhost ~]# vim /etc/rc.d/rc.local    #在文件末尾增加下面这一行
[root@localhost ~]# echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all
参数0表示允许   1表示禁止

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

TypeScript 学习笔记(七):TypeScript 与后端框架的结合应用

1. 引言 在前几篇学习笔记中,我们已经探讨了 TypeScript 的基础知识和在前端框架(如 Angular 和 React)中的应用。本篇将重点介绍 TypeScript 在后端开发中的应用,特别是如何与 Node.js 和 Express 结合使用,以构建强类型、可维护的后端应用。 2. TypeScript 与 Node.js…

YoloV8改进策略:BackBone|融合改进的HCANet网络中的多尺度前馈网络(MSFN)|二次创新|即插即用

本文使用HCANet网络中的多尺度前馈网络来提高Backbone的表征能力和检测精度。即插即用,方便大家移植自己的模型中。 论文指导 原论文中的表述 B. 多尺度前馈网络 在 V i T \mathrm{ViT} ViT 中的原始 FFN 是由两个线性层所构成,这样的设计仅用于单尺度特征聚合。但是,F…

2024 GIAC 全球互联网架构大会:拓数派向量数据库 PieCloudVector 架构设计与案例实践

5月24-25日,msup 和高可用架构联合举办了第11届 GIAC 全球互联网架构大会。会议聚焦“共话AI技术的最新进展、架构实践和未来趋势”主题,邀请了 100 余位行业内的领军人物和革新者,分享”Agent/RAG 技术、云原生、基座大模型“等多个热门技术…

浏览器修改后端返回值

模拟接口响应和网页内容 通过本地覆盖可以模拟接口返回值和响应头,无需 mock 数据工具,比如(Requestly),无需等待后端支持,快速复现在一些数据下的 BUG 等。在 DevTools 可以直接修改你想要的 Fetch/XHR 接…

event.preventDefault()使用指南

event.preventDefault(); 是 JavaScript 中用于阻止默认事件行为的方法。具体而言,它在处理 HTML 元素(如链接和表单)的事件时非常有用。下面是详细的解释和示例,说明它的作用和使用场景。 解释 在 HTML 中,许多元素…

将四种算法的预测结果绘制在一张图中

​ 声明:文章是从本人公众号中复制而来,因此,想最新最快了解各类智能优化算法及其改进的朋友,可关注我的公众号:强盛机器学习,不定期会有很多免费代码分享~ 之前的一期推文中,我们推出了…

RPA在抖音等短视频创作开发的应用

相较于一般人对Ai的漠视或仅仅停留在逗比对话而言,在凭此谋生的专业的行当,或AI应用相对宽泛的领域。融合Ai的自动化辅助办公(创作、演示等)的进步日新月异,这方面的知识还是应尽快了解。 RPA是Robotic process autom…

【ROS2问题记录】ros2 bag play xx.db3失败

报错内容: nvidiaoceanstar:~/yolov8_ros2-Tensorrt$ ros2 bag play rosbag2_2024_04_24-13_55_03_0.db3 /opt/ros/foxy/bin/ros2:6: DeprecationWarning: pkg_resources is deprecated as an API. See https://setuptools.pypa.io/en/latest/pkg_resources.html fr…

NoSQL是什么?NoSQL数据库存在SQL注入攻击?

一、NoSQL是什么? NoSQL(Not Only SQL)是一种非关系型数据库的概念。与传统的关系型数据库不同,NoSQL数据库使用不同的数据模型来存储和检索数据。NOSQL数据库通常更适合处理大规模的非结构化和半结构化数据,且能够…

CPU对代码执行效率的优化,CPU的缓存、指令重排序

目录 一、CPU对代码执行效率的优化 1. 指令流水线(Instruction Pipelining) 2. 超标量架构(Superscalar Architecture) 3. 动态指令重排序(Dynamic Instruction Reordering) 4. 分支预测(…

【RuoYi】使用代码生成器完成CRUD操作

一、前言 前面,介绍了如何下载和启动我们的RuoYi框架。为了让小伙伴们认识到ruoyi的强大,那么这篇博客就介绍一下如何使用ruoyi的代码生成器,自动生成前端页面以及后端的对应数据库表的CRUD操作!!!真的很强…

LWIP_TCP 协议

目录 1 TCP 协议简介 1.1 TCP 协议简介 1.2 TCP 的建立连接 1.3 TCP 终止连接 1.4 TCP 报文结构 1.5 lwIP 的 TCP 报文首部数据结构 1.6 lwIP 的 TCP 连接状态图 1 TCP 协议简介 1.1 TCP 协议简介 TCP(Transmission Control Protocol 传输控制协议&#xff0…

MySQL实战行转列(或称为PIVOT)实战sales的表记录了不同产品在不同月份的销售情况,进行输出

有一个sales的表,它记录了不同产品在不同月份的销售情况: productJanuaryFebruaryMarchProduct AJanuary10Product AFebruary20Product BJanuary5Product BFebruary15Product CJanuary8Product CFebruary12 客户需求展示为如下的样子: pro…

斯坦福报告解读4:图解有趣的推理基准(中)

《人工智能指数报告》由斯坦福大学、AI指数指导委员会及业内众多大佬Raymond Perrault、Erik Brynjolfsson 、James Manyika等人员和组织合著,该报告已被公认为最权威、最具信誉人工智能数据与洞察来源之一。 2024年版《人工智能指数报告》是迄今为止最为详尽的一份…

linux下常用的终端命令

文章目录 1. MV移动文件、重命名文件1.1 移动文件:mv [选项] 源文件或目录 目标文件或目录1.2 文件重命名 2. 查找:文件,内容,统计文件2.1 find查找文件2.2 Linux查找文件内容 3. 查看当前用户4. linux修改文件所属用户和组5. 复制…

Token验证流程、代码示例、优缺点和安全策略,一文告诉你。

Token和Session都是用于身份验证和授权的机制,而且Token渐渐成为主流,有不少小伙伴对token的认识不全,这里给大家分享下。 一、什么是Token Token是一种用于身份验证和授权的令牌,通常用于在客户端和服务器之间进行安全的通信。…

SQLITE存储时间数据报警语法错误,syntax error

使用sqllite数据库,有一个时间数据current_time需要插入表中,如下 current_time time.strftime("%Y-%m-%d %H:%M:%S", time.localtime()) 不能直接将时间戳格式化为字符串并嵌入到SQL语句中,如下: sql f"INSER…

工程文档CAD转换必备!快速将 DWG 转换到 PNG ~

Aspose.CAD 是一个独立的类库,以加强Java应用程序处理和渲染CAD图纸,而不需要AutoCAD或任何其他渲染工作流程。该CAD类库允许将DWG, DWT, DWF, DWFX, IFC, PLT, DGN, OBJ, STL, IGES, CFF2文件、布局和图层高质量地转换为PDF和光栅图像格式。 Aspose AP…

gradio image 类型

3种类型,默认是 numpy.array numpy.array PIL.Image str file path. 互相转换 # 从路径到 numpy.ndarray import cv2 image_mask cv2.imread(imagePath) print(type(image_mask))# 从路径到 PIL.IMAGE from PIL import Image image_maskImage.open(imagePath) pri…

【Chrono Engine学习总结】6-创建自定义场景-6.1-3D场景获取

由于Chrono的官方教程在一些细节方面解释的并不清楚,自己做了一些尝试,做学习总结。 Chrono可以导入自定义的三维模型,所以想自己搭建一个3D仿真环境。过程中遇到了一些问题,记录与整理。 1、3D环境的创建方法 Chrono的Irrlich…