CentOS-6.5系统基础优化篇,附带优化脚本

优化内容:

(1.设置history历史记录

(2.添加普通用户,设置sudo权限

(3.禁止root远程用户登录

(4.修改远程端口

(5.精简开机启动服务器

(6.关闭selinux

(7.配置iptables

(8.修改最大连接数 ulimit

(9.禁止使用Ctrl+Alt+Del快捷键重启服务器

(10.修改默认DNS

(11.安装必要软件,更新yum源 [epel源]

(12.更新内核和软件到最新版本

(13.优化内核参数 [根据实际情况调整]

(14.去除上次登录的信息

(15.关闭开机显示内核信息

1.设置history历史记录

echo ‘
export HISTFILE=$HOME/.bash_history
export HISTSIZE=2000
export HISTFILESIZE=2000
export HISTTIMEFORMAT="%F %T `whoami` "
export PROMPT_COMMAND="history -a; history -c; history -r;"
shopt -s histappend
typeset -r PROMPT_COMMAND
typeset -r HISTTIMEFORMAT ‘ > /etc/profile.d/history.sh
source /etc/profile

2.添加普通用户,设置sudo权限

username=‘dyt‘
password=‘dyt2015‘
useradd $username ; echo $password | passwd --stdin $username
sed -i "98 a$username    ALL=(ALL)       NOPASSWD: ALL" /etc/sudoers

3.禁止root远程用户登录

sed -i ‘s/#PermitRootLogin yes/PermitRootLogin no/‘ /etc/ssh/sshd_config

4.修改远程端口

sed -i ‘s/#Port 22/Port 9527/‘ /etc/ssh/sshd_config
/etc/init.d/sshd restart

5.精简开机启动服务器

for server in `chkconfig --list|egrep -v ‘crond|network|rsyslog|sshd|iptables‘|awk ‘{print $1}‘`;do chkconfig $server off; done

6.关闭selinux

sed -i ‘s/SELINUX=enforcing/SELINUX=disabled/‘ /etc/selinux/config
setenforce 0

7.配置iptables

/etc/init.d/iptables restart
iptables -F
iptables -X
iptables -Z
iptables -A INPUT -p icmp -j ACCEPT
iptables -A INPUT -i lo -j ACCEPT
#允许某个IP段远程访问ssh
iptables -A INPUT -p tcp -m tcp --dport 9527 -s 192.168.64.0/24 -j ACCEPT
#开启80端口
iptables -A INPUT -P tcp -m tcp --dropt 80 -j ACCEPT
#允许某个IP的所有请求
iptables -A INPUT -p all -s 124.43.56.90/30 -j ACCEPT
iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -P INPUT DROP
iptables -P OUTPUT ACCEPT
iptables -P FORWARD DROP
/etc/init.d/iptables save
/etc/init.d/iptables restart

8.修改最大连接数 ulimit

#方法有很多,未必就这一种
echo ‘*  -  noproc  65535‘ >> /etc/security/limits.conf
echo ‘*  -  nofile  65535‘ >> /etc/security/limits.conf

9.禁止使用Ctrl+Alt+Del快捷键重启服务器

sed -i "s/start on control-alt-delete/#start on control-alt-delete/g" /etc/init/control-alt-delete.conf

10.修改默认DNS

echo "nameserver 8.8.8.8" > /etc/resolv.conf
echo "nameserver 8.8.4.4" >> /etc/resolv.conf

11.安装必要软件,更新yum源 [epel源]

#根据个人公司情况,这里只列举了自己常用的软件和yum源,根据实际情况更改yum源
yum -y install gcc gcc-c++ openssl-devel openssh-clients wget make lrzsz unzip zip xz ntpdate lsof telnet epel-release vim tree kernel-devel kernel

12.更新内核和软件到最新版本

 yum -y upgrade

13.优化内核参数 [根据实际情况调整]

echo -e "net.core.somaxconn = 262144" >> /etc/sysctl.conf
echo -e "net.core.netdev_max_backlog = 262144" >> /etc/sysctl.conf
echo -e "net.core.wmem_default = 8388608" >> /etc/sysctl.conf
echo -e "net.core.rmem_default = 8388608" >> /etc/sysctl.conf
echo -e "net.core.rmem_max = 16777216" >> /etc/sysctl.conf
echo -e "net.core.wmem_max = 16777216" >> /etc/sysctl.conf
echo -e "net.ipv4.route.gc_timeout = 20" >> /etc/sysctl.conf
echo -e "net.ipv4.ip_local_port_range = 1024 65535" >> /etc/sysctl.conf
echo -e "net.ipv4.tcp_retries2 = 5" >> /etc/sysctl.conf
echo -e "net.ipv4.tcp_fin_timeout = 30" >> /etc/sysctl.conf
echo -e "net.ipv4.tcp_syn_retries = 1" >> /etc/sysctl.conf
echo -e "net.ipv4.tcp_synack_retries = 1" >> /etc/sysctl.conf
echo -e "net.ipv4.tcp_timestamps = 0" >> /etc/sysctl.conf
echo -e "net.ipv4.tcp_tw_recycle = 1" >> /etc/sysctl.conf
echo -e "net.ipv4.tcp_tw_reuse = 1" >> /etc/sysctl.conf
echo -e "net.ipv4.tcp_keepalive_time = 120" >> /etc/sysctl.conf
echo -e "net.ipv4.tcp_keepalive_probes = 3" >> /etc/sysctl.conf
echo -e "net.ipv4.tcp_keepalive_intvl = 15" >> /etc/sysctl.conf
echo -e "net.ipv4.tcp_max_tw_buckets = 36000" >> /etc/sysctl.conf
echo -e "net.ipv4.tcp_max_orphans = 3276800" >> /etc/sysctl.conf
echo -e "net.ipv4.tcp_max_syn_backlog = 262144" >> /etc/sysctl.conf
echo -e "net.ipv4.tcp_wmem = 8192 131072 16777216" >> /etc/sysctl.conf
echo -e "net.ipv4.tcp_rmem = 32768 131072 16777216" >> /etc/sysctl.conf
echo -e "net.ipv4.tcp_mem = 94500000 915000000 927000000" >> /etc/sysctl.conf
echo -e "net.ipv4.tcp_slow_start_after_idle = 0" >> /etc/sysctl.conf
echo -e "vm.swappiness = 0" >> /etc/sysctl.conf
echo -e "kernel.panic = 5" >> /etc/sysctl.conf
echo -e "kernel.panic_on_oops = 1" >> /etc/sysctl.conf  
echo -e "kernel.core_pipe_limit = 0" >> /etc/sysctl.conf
#iptables 防火墙
echo -e "net.nf_conntrack_max = 25000000" >> /etc/sysctl.conf
echo -e "net.netfilter.nf_conntrack_max = 25000000" >> /etc/sysctl.conf
echo -e "net.netfilter.nf_conntrack_tcp_timeout_established = 180" >> /etc/sysctl.conf
echo -e "net.netfilter.nf_conntrack_tcp_timeout_time_wait = 120" >> /etc/sysctl.conf
echo -e "net.netfilter.nf_conntrack_tcp_timeout_close_wait = 60" >> /etc/sysctl.conf
echo -e "net.netfilter.nf_conntrack_tcp_timeout_fin_wait = 120" >> /etc/sysctl.confo

15.去除上次登录的信息

touch ~/.hushlogin
时间: 2024-11-01 05:36:19

CentOS-6.5系统基础优化篇,附带优化脚本的相关文章

系统基础的配置与优化

关闭Selinux 关闭selinux的方法: [[email protected] ~]# vim /etc/selinux/config SELINUX=disabled --改成disabled 或 [[email protected] ~]# sed -i 's#SELINUX=enforcing#SELINUX=disabled#g' /etc/selinux/config 修改配置文件保存后永久生效,但要reboot重启才能生效 临时关闭的方法:重启后会失效 [[email prot

linux系统基础优化

1.Linux系统基础优化 一.关闭SELinux功能 Selinux是什么? 安全工具,控制太严格,生产环境不用它,使用其他安全手段. 简介: SELinux带给Linux的主要价值是:提供了一个灵活的,可配置的MAC机制. Security-Enhanced Linux (SELinux)由以下两部分组成: 1) Kernel SELinux模块(/kernel/security/selinux) 2) 用户态工具 SELinux是一个安全体系结构,它通过LSM(Linux Security

系统基础优化--iptables selinux 系统字符集

1.2.系统优化讲解 1.2.1.查看系统环境 01.查看系统版本 [[email protected] ~]# cat /etc/redhat-release  CentOS release 6.9 (Final) [[email protected] ~]# 02.查看系统架构信息 [[email protected] ~]# uname -m x86_64 [[email protected] ~]# 03.查看内核信息 [[email protected] ~]# uname -r 2.

Linux 系统基础优化和常用命令

目录 Linux 系统基础优化和常用命令 软连接 tar解压命令 gzip命令 netstart命令 ps命令 kill命令 killall命令 SELinux功能 iptables防火墙 Linux中文显示设置(防止中文乱码) df 命令 tree命令 设置主机名 DNS 查看Linux的dns, 唯一配置文件 本地强制dns解析文件 /etc/hosts nslookup命令 计划任务crond服务 软件包管理 windows程序 macos程序 RPM软件包管理器 实例 rpm安装软件 r

企业级服务器设计与实现经验之插件系统基础篇

最初之所以要采用插件的形式进行开发,主要是为了解决功能服务的“热插拔”问题,在决定采用“框架+插件”的方式进行设计后,我们就更进一步,打算将一个个可以分割开来的拥有完整功能的组件都做成插件的形式,并且使同类型的插件的接口兼容,这样在以后需要改变时就可以灵活的进行替换.比如,将通信部分做成通信插件.日志记录部分做成日志插件等等. 首先,我们要弄清楚,什么是插件?我给出了一个定义,可能有失偏颇. 插件又称为扩展,是一种特殊的组件,用于增强和扩展基本框架的行为能力.插件和框架的通信协议是一组接口,插件

(转)Linux系统基础网络配置老鸟精华篇

Linux系统基础网络配置老鸟精华篇 原文:http://blog.51cto.com/oldboy/784625 对于linux高手看似简单的网络配置问题,也许要说出所以然来也并不轻松,因此仍然有太多的初学者徘徊在门外就不奇怪了,这里,老男孩老师花了一些时间总结了这个文档小结,也还不够完善,欢迎大家补充,交流.谢谢大家!20120827补充:http://oldboy.blog.51cto.com/2561410/974194 深入浅出route命令小结目录:1)配置修改主机名hostname

Centos 7防火墙基础——理论篇

Centos 7防火墙基础--理论篇 理论结构: Firewalld概述 Firewalld和iptables的关系 Firewalld网络区域 Firewalld防火墙的配置方法 Firewalld概述 支持网络区域所定义的网络连接以及接口安全等级的动态防火墙管理工具 支持IPV4.IPV6防火墙设置以及以太网桥 支持服务或应用程序直接添加防火墙规则接口 拥有两种不同的配置模式 运行时配置 永久配置 Firewalld和iptables的关系 netfilter ? 位于Linux内核的过滤的

Linux 初探 (基础认知篇)

linux 初探 (基础认知篇) 什么是linux? Linux是开源的类Unix系统,单纯的术语Linux来说其实仅仅指由林纳斯.托瓦兹开发并于1991年发布的一款存在于内核空间的操作系统内核(kernel). 为什么会开发要开发内核呢? 要从应用程序是如何在计算机上跑起来谈起,早期的应用程序需要了解CPU指令集利用汇编等语言进行开发.CPU的常见指令集架构:x86.x64(早期称其为amd64)兼容x86.m68000(m68k).arm.power.power pc(ppc,桌面级powe

Linux及Arm-Linux程序开发笔记(零基础入门篇)

Linux及Arm-Linux程序开发笔记(零基础入门篇)  作者:一点一滴的Beer http://beer.cnblogs.com/ 本文地址:http://www.cnblogs.com/beer/archive/2011/05/05/2037449.html 目录 一.Arm-Linux程序开发平台简要介绍... 3 1.1程序开发所需系统及开发语言... 3 1.2系统平台搭建方式... 4 二.Linux开发平台搭建... 5 2.1安装虚拟工作站... 5 2.2安装Linux虚拟