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系统的基础优化的更多相关文章

  1. kali linux学习笔记之系统定制及优化(附:中文输入法设置)

    fix update flash plugin on kali rolling author:@kerker 0x00设置软件源 root@kali:~# vim /etc/apt/sources.l ...

  2. Linux 学习笔记之超详细基础linux命令 Part 14

    Linux学习笔记之超详细基础linux命令 by:授客 QQ:1033553122 ---------------------------------接Part 13---------------- ...

  3. Linux 学习笔记之超详细基础linux命令 Part 13

    Linux学习笔记之超详细基础linux命令 by:授客 QQ:1033553122 ---------------------------------接Part 12---------------- ...

  4. Linux 学习笔记之超详细基础linux命令 Part 12

    Linux学习笔记之超详细基础linux命令 by:授客 QQ:1033553122 ---------------------------------接Part 11---------------- ...

  5. Linux 学习笔记之超详细基础linux命令 Part 11

    Linux学习笔记之超详细基础linux命令 by:授客 QQ:1033553122 ---------------------------------接Part 10---------------- ...

  6. Linux 学习笔记之超详细基础linux命令 Part 10

    Linux学习笔记之超详细基础linux命令 by:授客 QQ:1033553122 ---------------------------------接Part 9----------------- ...

  7. Linux 学习笔记之超详细基础linux命令 Part 8

    Linux学习笔记之超详细基础linux命令 by:授客 QQ:1033553122 ---------------------------------接Part 7----------------- ...

  8. Linux 学习笔记之超详细基础linux命令 Part 7

    Linux学习笔记之超详细基础linux命令 by:授客 QQ:1033553122 ---------------------------------接Part 6----------------- ...

  9. Linux 学习笔记之超详细基础linux命令 Part 6

    Linux学习笔记之超详细基础linux命令 by:授客 QQ:1033553122 ---------------------------------接Part 5----------------- ...

随机推荐

  1. CSS3 @font-face详细用法

    @font-face是CSS3中的一个模块,他主要是把自己定义的Web字体嵌入到你的网页中,随着@font-face模块的出现,我们在Web的开发中使用字体就不用再为只能使用Web安全字体烦恼了!肯定 ...

  2. iOS-CGAffineTransform相关函数

    CGAffineTransform相关函数 CGAffineTransformMakeTranslation(width, 0.0);是改变位置的,CGAffineTransformRotate(tr ...

  3. [IDS]CentOS6.6下搭建基于snort+barnyard2+base的入侵检测系统,超详细!!!

    最详细的CentOS6.6下搭建基于snort+barnyard2+base的入侵检测系统免责声明一.如果因为使用本文档照成损失(系统崩溃.数据丢失等),作者不承担任何责任.二.本文档只是个人使用本文 ...

  4. Net中实现HTML生成图片或PDF

    Net中实现HTML生成图片或PDF的几种方式 前段时间由于项目上的需求,要在.Net平台下实现把HTML内容生成图片或PDF文件的功能,特意在网上研究了几种方案,这里记录一下以备日后再次使用.当时想 ...

  5. Eclipse启动时报错Java was started but returned exit code=13

    Eclipse启动时报错Java was started but returned exit code=13 如图所示 原因是通过第三方更新JRE时,第三方安装的是32位的JRE,与64位的eclip ...

  6. 【坑】关于使用 maven 创建 web 项目以后,el 表达式不被识别的解决方法

    问题描述: 在学习 Ajax 的时候,使用资源路径,博主本着不要硬编码,局使用 el 表达式进行读取项目名,然后发现 el 表达式没有被识别,而是当做字符串 ${pageContext.request ...

  7. PAT(B) 1014 福尔摩斯的约会(Java)

    题目链接:1014 福尔摩斯的约会 注意 三个字眼:"第1对","第2对","第1对",因此如果你用了循环,别忘了break,因为后面也可能 ...

  8. pandas数据结构之基础运算笔记

    import pandas as pd import numpy as np s = pd.Series([1,3,5,6,8],index=list('acefh')) s.index # 读取行索 ...

  9. python之文件读写操作笔记

    对不同类的文件操作,需要调用相关的库文件,一般情况下,可以选择建立:写文件函数和读文件函数.在写文件与读文件函数中 我们可以采用:with  open('文件名','w', encoding='utf ...

  10. go实现简单的tcp编程

    服务端的代码 package main import ( "fmt" "net" ) func main () { fmt.Println("star ...