Linux学习之六-Linux系统的基础优化
Linux系统的基础优化
何谓'优化'。顾名思义,优化就是采取某些措施使某个东西或者某事物变得更加优异,出色。对于Linux而言,在初期安装好系统之后,也需要对其进行一定的基础优化,可分为安全上的优化,性能上的优化,安装常用软件包等。
1、selinux的优化
查看selinux状态getenforce
临时关闭setenforce 0

永久关闭selinux
需修改相应配置文件vi /etc/selinux/config

或者利用Linux命令中的sed替换
sed -i 's#SELINUX=enforcing#SELINUX=disabled#g' /etc/selinux/config
修改完成后重启系统reboot
2、关闭iptables(防火墙)
IPv4相关方法
关闭service iptables stop(不能用tab补全,需记住服务名)
/etc/init.d/iptables stop(可以用tab键补全,只需记住服务名称开头)
启用service iptables start

IPv6相关方法
关闭service ip6tables stop(不能用tab补全,需记住服务名)
/etc/init.d/ip6tables stop(可以用tab键补全,只需记住服务名称开头)
启用service ip6tables start

命令语法格式services+服务名称+操作(stop|start|restart|status)
3、优化开机启动项
查看开机启动项chkconfig –list(可以看到默认情况下有很多的开机启动项)

查看当前运行级别runlevel
关闭iptables
chkconfig --level 3 iptables off
chkconfig iptables off
需要保持开启的启动项
crond 定时任务
sysstat 监控系统状态
rsyslog 系统日志服务
sshd ssh服务
network 网络服务
做法
第一个思路:先全部关闭,再把上述要求的五个服务打开
chkconfig|awk '{print "chkconfig "$1" off"}'|bash(执行)
for n in crond rsyslog sshd sysstat network;do chkconfig $n on ;done
(for循环)
第二个思路:过滤掉需要启动的服务,再关闭其他的服务
chkconfig|awk '{print $1}'|grep -Ev 'crond|rsyslog|sshd|sysstat|network'|awk '{print "chkconfig " $0 " off"}'|bash

4、ssh安全等优化
vim /etc/ssh/sshd_config
Port 51323 修改默认端口号22为某一动态端口中的一个
PermitRootLogin no 禁止root远程登录
PermitEmptyPasswords no 禁止空密码登录
优化ssh连接速度:
UseDNS no 禁用DNS解析
GSSAPIAuthentication no关掉GSSAPI认证(通用安全服务应用程序接口)
配置完成后检验
grep -E 'Port|PermitRootLogin|PermitEmptyPasswords|UseDNS|GSSAPIAuthentication' /etc/ssh/sshd_config
重启ssh服务/etc/init.d/sshd restart
注意:在修改禁止root用户远程登录之前,若想通过远程终端如Shell连接,必须先创建一个普通用户,用普通用户的身份登录上去后再切换到root用户

5、隐藏系统的版本信息
物理服务器是放在IDC机房开机显示信息
uname -a 显示内核所有信息
/etc/issue
/etc/redhat-release
说明:
linux 2.6.32-696.el6 el6 ====enterprise linux 6 偶数表示为稳定版

修改完成后重启,发现在Linux命令行终端界面已经修改成功

6、修改软件默认安装源
CentOS 版本的Linux默认的软件安装源服务器在国外,需要将安装源优化(即改为国内)以提高效率,这里使用阿里云等开源镜像下载站
网站链接https://opsx.alibaba.com/mirror

按照提示进行所对应Linux版本的相关操作
1)、备份
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
2)、下载新的CentOS-Base.repo 到/etc/yum.repos.d/
CentOS 6
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-6.repo
或者
curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-6.repo
CentOS 7
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
或者
curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo

3)、之后运行yum makecache生成缓存(时间较长,需要耐心等待)
相关命令
ls /var/cache/yum/x86_64/6/ 缓存信息存放位置
du /var/cache/yum/x86_64/6/ 统计目录或文件的占用空间du -mh
yum list查看可以安装软件的目录

7、安装常用软件包
yum install -y net-tools vim lrzsz wget tree screen lsof tcpdump (-y自动确认yes)

关于常用软件包的说明:
net-tools:ifconfig等常用命令
vim:一种编辑器
lrzsz:rz和sz本地传输文件
rz -E上传传文件命令,回车拖拽
sz 下载加文件名称回车选择位置保存
wget:下载工具wget加包名
tree:查看多层文件目录的目录结构像一棵树一样tree /a
screen:linux下的一种多重视窗管理程序
lsof:一个列出当前系统打开文件的工具
tcpdump:抓包软件
至此,Linux系统的基础优化完成
博主原创文章,转载请务必注明出处
Linux学习之六-Linux系统的基础优化的更多相关文章
- kali linux学习笔记之系统定制及优化(附:中文输入法设置)
fix update flash plugin on kali rolling author:@kerker 0x00设置软件源 root@kali:~# vim /etc/apt/sources.l ...
- Linux 学习笔记之超详细基础linux命令 Part 14
Linux学习笔记之超详细基础linux命令 by:授客 QQ:1033553122 ---------------------------------接Part 13---------------- ...
- Linux 学习笔记之超详细基础linux命令 Part 13
Linux学习笔记之超详细基础linux命令 by:授客 QQ:1033553122 ---------------------------------接Part 12---------------- ...
- Linux 学习笔记之超详细基础linux命令 Part 12
Linux学习笔记之超详细基础linux命令 by:授客 QQ:1033553122 ---------------------------------接Part 11---------------- ...
- Linux 学习笔记之超详细基础linux命令 Part 11
Linux学习笔记之超详细基础linux命令 by:授客 QQ:1033553122 ---------------------------------接Part 10---------------- ...
- Linux 学习笔记之超详细基础linux命令 Part 10
Linux学习笔记之超详细基础linux命令 by:授客 QQ:1033553122 ---------------------------------接Part 9----------------- ...
- Linux 学习笔记之超详细基础linux命令 Part 8
Linux学习笔记之超详细基础linux命令 by:授客 QQ:1033553122 ---------------------------------接Part 7----------------- ...
- Linux 学习笔记之超详细基础linux命令 Part 7
Linux学习笔记之超详细基础linux命令 by:授客 QQ:1033553122 ---------------------------------接Part 6----------------- ...
- Linux 学习笔记之超详细基础linux命令 Part 6
Linux学习笔记之超详细基础linux命令 by:授客 QQ:1033553122 ---------------------------------接Part 5----------------- ...
随机推荐
- 用Inno setup制作以管理员权限启动的安装包
inno setup制作的安装包,默认是不需要管理员权限启动的.我们制作安装包,往往需要做一些设置工作,这些设置工作可能用到管理员权限.使用Resource Hacker修改inno setup资源, ...
- 《Tsinghua os mooc》第21~22讲 文件系统
第二十一讲 文件系统 文件系统是操作系统中管理持久性数据的子系统,提供数据存储和访问功能. 组织.检索.读写访问数据 大多数计算机系统都有文件系统 Google 也是一个文件系统 文件是具有符号名,由 ...
- B9 Concurrent 重入锁(ReentrantLock)
[概述] java.util.concurrent.locks.ReentrantLock 实现 java.util.concurrent.locks.Lock 接口,加锁(lock)和 解锁(unl ...
- java源码 -- AbstractList
AbstractList AbstractList是实现List接口的抽象类,AbstractList抽象类与List接口的关系类似于AbstractCollection抽象类与Collection接 ...
- 数据结构 -- 链表(LinkedList)
链表是一种物理存储单元上非连续.非顺序的存储结构,数据元素的逻辑顺序是通过链表中的指针链接次序实现的.链表由一系列结点(链表中每一个元素称为结点)组成,结点可以在运行时动态生成. 每个结点包括两个部分 ...
- C语言 - 获取系统时间 以年月日时分秒的形式输出
ESP32需要给下位机通过UART发送时间戳,形式是年月日时分秒的十六进制数据包. #include <stdio.h> #include <time.h> int main( ...
- Anaconda安装报错
通用解决方案:先卸载,然后重新安装(注意安装路径全英文且不要有空格),勾选添加环境变量选项
- linux中部署jenkins(war包)及jenkins忘记登录账号密码
未登录状态 登录状态 一:部署jenkins(war包) 1.直接下载war包jenkins.war,下载地址https://jenkins.io/download 2.将下载的war包放到服务器上t ...
- (八)easyUI之Accordion折叠面板:动态面板
二.动态面板 数据库设计 函数设计:该函数用于获取某个节点的所有子节点 CREATE FUNCTION fn_getAddress_ChildList_test(rootId INT) RETURNS ...
- (八)Redis之持久化之AOF方式
一.概念 AOF方式:将以日志,记录每一个操作 优势:安全性相对RDB方式高很多: 劣势:效率相对RDB方式低很多: 二.案例 appendonly no默认关闭aof方式 我们修改成yes 就开启 ...