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----------------- ...
随机推荐
- CSS3 @font-face详细用法
@font-face是CSS3中的一个模块,他主要是把自己定义的Web字体嵌入到你的网页中,随着@font-face模块的出现,我们在Web的开发中使用字体就不用再为只能使用Web安全字体烦恼了!肯定 ...
- iOS-CGAffineTransform相关函数
CGAffineTransform相关函数 CGAffineTransformMakeTranslation(width, 0.0);是改变位置的,CGAffineTransformRotate(tr ...
- [IDS]CentOS6.6下搭建基于snort+barnyard2+base的入侵检测系统,超详细!!!
最详细的CentOS6.6下搭建基于snort+barnyard2+base的入侵检测系统免责声明一.如果因为使用本文档照成损失(系统崩溃.数据丢失等),作者不承担任何责任.二.本文档只是个人使用本文 ...
- Net中实现HTML生成图片或PDF
Net中实现HTML生成图片或PDF的几种方式 前段时间由于项目上的需求,要在.Net平台下实现把HTML内容生成图片或PDF文件的功能,特意在网上研究了几种方案,这里记录一下以备日后再次使用.当时想 ...
- Eclipse启动时报错Java was started but returned exit code=13
Eclipse启动时报错Java was started but returned exit code=13 如图所示 原因是通过第三方更新JRE时,第三方安装的是32位的JRE,与64位的eclip ...
- 【坑】关于使用 maven 创建 web 项目以后,el 表达式不被识别的解决方法
问题描述: 在学习 Ajax 的时候,使用资源路径,博主本着不要硬编码,局使用 el 表达式进行读取项目名,然后发现 el 表达式没有被识别,而是当做字符串 ${pageContext.request ...
- PAT(B) 1014 福尔摩斯的约会(Java)
题目链接:1014 福尔摩斯的约会 注意 三个字眼:"第1对","第2对","第1对",因此如果你用了循环,别忘了break,因为后面也可能 ...
- pandas数据结构之基础运算笔记
import pandas as pd import numpy as np s = pd.Series([1,3,5,6,8],index=list('acefh')) s.index # 读取行索 ...
- python之文件读写操作笔记
对不同类的文件操作,需要调用相关的库文件,一般情况下,可以选择建立:写文件函数和读文件函数.在写文件与读文件函数中 我们可以采用:with open('文件名','w', encoding='utf ...
- go实现简单的tcp编程
服务端的代码 package main import ( "fmt" "net" ) func main () { fmt.Println("star ...