当前位置: 首页 > news >正文

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表示禁止

相关文章:

Linux系统维护

1. 批量安装部署 2. 初始化配置 3. 禁用Selinux 永久更改 SELinux 配置: 编辑 SELinux 配置文件:使用文本编辑器打开 /etc/selinux/config 文件: 在配置文件中,找到 SELINUX… 的行。将其值更改为以下选项之一: e…...

经典文献阅读之--RenderOcc(使用2D标签训练多视图3D Occupancy模型)

0. 简介 3D占据预测在机器人感知和自动驾驶领域具有重要的潜力,它将3D场景量化为带有语义标签的网格单元。最近的研究主要利用3D体素空间中的完整占据标签进行监督。然而,昂贵的注释过程和有时模糊的标签严重限制了3D占据模型的可用性和可扩展性。为了解…...

蓝牙设备中的UUID

文章目录 一、Device UUID二、Service UUID 一、Device UUID Device UUID也可以被称作为DeviceID。 Android 设备上扫描获取到的 deviceId 为外围设备的 MAC 地址,相对固定。iOS 设备上扫描获取到的 deviceId 是系统根据外围设备 MAC 地址及发现设备的时间生成的 …...

网络之再谈体系结构

大家都知道的是网络的体系结构,现代软件常用的体系结构无非是TCP/IP协议栈,OSI因为实现复杂并且效率没有TCP/IP协议栈好,所以不用OSI,但是,最近在复习网络知识的时候,发现了一些奇怪的地方,那就…...

在flutter initState 方法,触发 setState导致循环执行

在Flutter中,如果你在initState中调用了一个方法,并且这个方法可能导致状态更新,这可能会引起无限循环,因为每次状态更新都会再次调用initState。 为了避免这种情况,你应该检查调用的方法是否会导致状态更新&#xff…...

JavaScript字符串方法

charAt() 方法:返回指定索引处的字符。 示例: let str "Hello World"; console.log(str.charAt(0)); // Output: "H" console.log(str.charAt(6)); // Output: "W"charCodeAt() 方法:返回指定索引处字符的 Un…...

YD/T 2698-2014 《电信网和互联网安全防护基线配置要求及检测要求 网络设备》标准介绍

编写背景 随着互联网技术的飞速发展,网络设备的安全问题日益凸显。为了加强电信网和互联网的安全防护,保障网络环境的稳定和用户信息的安全,YD/T 2698-2014标准应运而生。此标准旨在为网络设备提供一套基线配置要求,以及相应的安…...

QCC30XX如何查找本地地址码

查找本地地址段/********************************************************************** Copyright (c) 2016 - 2017 Qualcomm Technologies International, Ltd. FILE NAME sink_private_data.c DESCRIPTION This module works as a container for all private and common…...

基于 DCT 的图像滤波

需求分析 对于图像去噪这一需求,我们可以通过DCT(离散余弦变换)算法来实现。DCT是一种基于频域的变换技术,可以将图像从空间域转换为频域,然后通过滤波等处理方式进行去噪。 针对这一需求,我们需要进行以下…...

spdlog日志库源码:自定义异常类spdlog_ex

自定义异常类spdlog_ex 标准库异常类(std::exception)系列,能满足大多数使用异常的场景,但对系统调用异常及错误信息缺乏支持。spdlog通过继承std::exception,扩展对系统调用的支持,实现自定义异常类spdlo…...

3.每日LeetCode-数组类,爬楼梯(Go,Java,Python)

目录 题目 解法 Go Java Python 代码地址:leetcode: 每日leetcode刷题 题目 题号70. 爬楼梯 假设你正在爬楼梯。需要 n 阶你才能到达楼顶。 每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢? 示例 1: 输入&#xff…...

单节点11.2.0.3参数文件恢复到RAC11.2.0.4启动失败

问题描述 通过pfile生成spfile失败,提示DATA磁盘不存在 SQL> create spfileDATA/DXJ/spfiledxj.ora from pfile/home/oracle/initdxj20240529.ora; create spfileDATA/DXJ/spfiledxj.ora from pfile/home/oracle/initdxj20240529.ora * ERROR at line 1: ORA-1…...

Windows电脑高颜值桌面便利贴,便签怎么设置

在这个看颜值的时代,我们不仅在衣着打扮上追求时尚与美观,就连电脑桌面也不愿放过。一张唯美的壁纸,几款别致的小工具,总能让我们的工作空间焕发出不一样的光彩。如果你也热衷于打造高颜值的电脑桌面,那么,…...

代码随想录35期Day54-Java

Day54题目 LeetCode392判断子序列 核心思想:公共子序列长度达到需要判断的字符串的长度,说明是子序列 class Solution {public boolean isSubsequence(String s, String t) {if("".equals(s)) return true;int[][] dp new int[s.length()1][t.length()1];for(int…...

Ubuntu使用sudo命令

在Ubuntu系统中,使用管理员权限通常涉及到使用sudo命令。这是因为Ubuntu默认情况下不直接允许root用户登录,而是通过sudo命令来执行需要管理员权限的任务。以下是一些常见的使用管理员权限的方法: 1. 使用sudo命令 运行单个命令 如果只需要…...

三方语言中调用, Go Energy GUI编译的dll动态链接库CEF

如何在其它编程语言中调用energy编译的dll动态链接库,以使用CEF 或 LCL库 Energy是Go语言基于LCL CEF开发的跨平台GUI框架, 具有很容易使用CEF 和 LCL控件库 interface 便利 示例链接 正文 为方便起见使用 python 调用 go energy 编译的dll 准备 系统&#x…...

Go微服务: Grpc服务注册在Consul的示例(非Go-Micro)

概述 现在,我们使用consul客户端的api来把GRPC服务实现注册到consul上,非Go-Micro的形式其实,consul官方提供了对应的接口调用来实现,golang中的consul/api包对其进行了封装我们使用consul/api来进行展示 目录结构 gitee.com/g…...

Java+Swing+Mysql实现飞机订票系统

一、系统介绍 1.开发环境 操作系统:Win10 开发工具 :Eclipse2021 JDK版本:jdk1.8 数据库:Mysql8.0 2.技术选型 JavaSwingMysql 3.功能模块 4.数据库设计 1.用户表(users) 字段名称 类型 记录内容…...

2024 rk

1.mysql、redis分布式锁 case: 商品秒杀 1)使用 MySQL 作为分布式锁来实现商品秒杀功能可能存在以下几个缺点; 使用 MySQL 作为分布式锁来实现商品秒杀功能可能存在以下几个缺点: 单点故障:如果使用单个 MySQL 实例作为分布式锁的存储介质…...

Java实现多张图片合并保存到pdf中

Java实现多张图片合并保存到pdf中 1、依赖–maven <dependency><groupId>org.apache.pdfbox</groupId><artifactId>pdfbox</artifactId><version>2.0.24</version></dependency>2、上代码 package com.hxlinks.hxiot.contro…...

挑战杯推荐项目

“人工智能”创意赛 - 智能艺术创作助手&#xff1a;借助大模型技术&#xff0c;开发能根据用户输入的主题、风格等要求&#xff0c;生成绘画、音乐、文学作品等多种形式艺术创作灵感或初稿的应用&#xff0c;帮助艺术家和创意爱好者激发创意、提高创作效率。 ​ - 个性化梦境…...

通过Wrangler CLI在worker中创建数据库和表

官方使用文档&#xff1a;Getting started Cloudflare D1 docs 创建数据库 在命令行中执行完成之后&#xff0c;会在本地和远程创建数据库&#xff1a; npx wranglerlatest d1 create prod-d1-tutorial 在cf中就可以看到数据库&#xff1a; 现在&#xff0c;您的Cloudfla…...

STM32F4基本定时器使用和原理详解

STM32F4基本定时器使用和原理详解 前言如何确定定时器挂载在哪条时钟线上配置及使用方法参数配置PrescalerCounter ModeCounter Periodauto-reload preloadTrigger Event Selection 中断配置生成的代码及使用方法初始化代码基本定时器触发DCA或者ADC的代码讲解中断代码定时启动…...

macOS多出来了:Google云端硬盘、YouTube、表格、幻灯片、Gmail、Google文档等应用

文章目录 问题现象问题原因解决办法 问题现象 macOS启动台&#xff08;Launchpad&#xff09;多出来了&#xff1a;Google云端硬盘、YouTube、表格、幻灯片、Gmail、Google文档等应用。 问题原因 很明显&#xff0c;都是Google家的办公全家桶。这些应用并不是通过独立安装的…...

CMake 从 GitHub 下载第三方库并使用

有时我们希望直接使用 GitHub 上的开源库,而不想手动下载、编译和安装。 可以利用 CMake 提供的 FetchContent 模块来实现自动下载、构建和链接第三方库。 FetchContent 命令官方文档✅ 示例代码 我们将以 fmt 这个流行的格式化库为例,演示如何: 使用 FetchContent 从 GitH…...

NLP学习路线图(二十三):长短期记忆网络(LSTM)

在自然语言处理(NLP)领域,我们时刻面临着处理序列数据的核心挑战。无论是理解句子的结构、分析文本的情感,还是实现语言的翻译,都需要模型能够捕捉词语之间依时序产生的复杂依赖关系。传统的神经网络结构在处理这种序列依赖时显得力不从心,而循环神经网络(RNN) 曾被视为…...

iOS性能调优实战:借助克魔(KeyMob)与常用工具深度洞察App瓶颈

在日常iOS开发过程中&#xff0c;性能问题往往是最令人头疼的一类Bug。尤其是在App上线前的压测阶段或是处理用户反馈的高发期&#xff0c;开发者往往需要面对卡顿、崩溃、能耗异常、日志混乱等一系列问题。这些问题表面上看似偶发&#xff0c;但背后往往隐藏着系统资源调度不当…...

【网络安全】开源系统getshell漏洞挖掘

审计过程&#xff1a; 在入口文件admin/index.php中&#xff1a; 用户可以通过m,c,a等参数控制加载的文件和方法&#xff0c;在app/system/entrance.php中存在重点代码&#xff1a; 当M_TYPE system并且M_MODULE include时&#xff0c;会设置常量PATH_OWN_FILE为PATH_APP.M_T…...

GO协程(Goroutine)问题总结

在使用Go语言来编写代码时&#xff0c;遇到的一些问题总结一下 [参考文档]&#xff1a;https://www.topgoer.com/%E5%B9%B6%E5%8F%91%E7%BC%96%E7%A8%8B/goroutine.html 1. main()函数默认的Goroutine 场景再现&#xff1a; 今天在看到这个教程的时候&#xff0c;在自己的电…...

在树莓派上添加音频输入设备的几种方法

在树莓派上添加音频输入设备可以通过以下步骤完成&#xff0c;具体方法取决于设备类型&#xff08;如USB麦克风、3.5mm接口麦克风或HDMI音频输入&#xff09;。以下是详细指南&#xff1a; 1. 连接音频输入设备 USB麦克风/声卡&#xff1a;直接插入树莓派的USB接口。3.5mm麦克…...