开发者社区> goodlife> 正文

Centos 6系统基础优化

简介: centos6系列基础优化:可以适当调整tcp相关参数,禁止root账号远程登录,为普通账号设sudo,清理开机服务,修改SSH默认端口等方面来完成优化,提高系统安全性。
+关注继续查看
一:关闭SELINUX
第一步:
cd /etc/selinux
第二步:
sed -i 's/SELINU=enforcing/SELINUX=disabled/g' config  修改配置文件重启后 永久生效
第三步:
setenforce 0   关闭当前状态的selinux 

注意:生产环境中主机不可能随便重启动,所以2,3两步既可以让现在状态临时下关闭selinux,也可以满足重启动后也是关闭的
getenforce 查看当前selinux状态

二:将运行级别设为3
runlevel  查看运行级别

三:清理开机服务
for i in `chkconfig --list|grep "3:on"|awk '{print $1}' | grep -vE "crond|network|sshd|rsyslog"`
do
chkconfig $i  off;chkconfig --list |grep "3:on"
done
关闭除crond|network|sshd|rsyslog 之外的其他所有服务


四:最小化原则
1  安装系统最小化
2  开启程序服务最小化
3 操作最小化原则,rm  -f test.txt
4 登录最小化原则,平时没有需求不用root登录
5 权限最小化
6 配置参数合理,不用最大化

五:更改sshf服务登录的配置
1 Port 51224   修改默认端口
2 PermitRootLogin no 禁用root 账号远程登陆,但是本地能够登陆
3 PermitEmptyPasswords no 禁止空密码登陆
4 UseDNS no  不使用DNS
5 GSSAPIAuthentication no 

service sshd restart 重启服务后生效
部分可能需要开通防火墙才可以连接或者关闭防火墙 /etc/init.d/iptables stop

六:用户角色切换
生产环境下一般操作都使用普通账户,只有特殊命令才使用root账户,以保证系统安全无误操作
在知道root密码的情况下:使用su - root  切换到root权限
在不知道root密码的情况下:使用sudo  进行root权限下命令的执行 》执行sudo的前提是,管理员要事先为普通用户设置sudo
sudo -l 查看自己的权限
注意:
 su - 该命令是真正的用户角色转换命令(默认是切换到root),输入的是root密码
 su - 与su - root 是一个意思:都是切换到root下
 su - wu 是 完全切换到wu这个账号上,需要输入wu账号的密码
------------------------------
sudo  该命令是通过sudo权限进行角色转换(默认是切换到root)输入的是执行该命令当时执行命令的账号的密码, 非root密码。
七:字符集调整
root@Linux6 ~]# cat /etc/sysconfig/i18n 
LANG="en_US.UTF-8"

八:服务器时间同步

1 /usr/sbin/ntpdate time.nist.gov   临时同步ntp
2  设置 crontab 实时同步
 
如果服务器很多,可以自己搭建NTP服务器

九:加大服务器文件描述符
文件描述符在形式上是一个非负整数。实际上,它是一个索引值,指向内核为每一个进程所维护的该进程打开文件的记录表。当程序打开一个现有文件或者创建一个新文件时,内核向进程返回一个文件描述符。在程序设计中,一些涉及底层的程序编写往往会围绕着文件描述符展开。但是文件描述符这一概念往往只适用于UNIXLinux这样的操作系统

1 临时加大,但重启后失效:ulimit -HSn 65535
2 永久生效: echo  "*    -    nofile    65535" >>/etc/security/limits.conf
退出登录在重新登录设置生效

十:内核参数的基本调优
vim /etc/sysctl.conf
sysctl -p 生效

net.ipv4.tcp_fin_timeout = 2

net.ipv4.tcp_tw_reuse = 1

net.ipv4.tcp_tw_recycle = 1

net.ipv4.tcp_syncookies = 1

net.ipv4.tcp_keepalive_time = 600

net.ipv4.ip_local_port_range = 400065000

net.ipv4.tcp_max_syn_backlog = 16384

net.ipv4.tcp_max_tw_buckets = 36000

net.ipv4.route.gc_timeout = 100

net.ipv4.tcp_syn_retries = 1

net.ipv4.tcp_synack_retries = 1

net.core.somaxconn = 16384

net.core.netdev_max_backlog = 16384

net.ipv4.tcp_max_orphans = 16384

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
心中有“树”!图文并茂介绍数据结构中常见的树(二)
计算机科学家尼古拉斯·沃斯(Niklaus Wirth)曾说过:编程=数据结构+算法 ,可见数据结构在编程中的重要性。
4 0
一个无需等待的世界不美吗?为什么游戏开发中需要人为的制造等待?
本文主要内容有微信小游戏开发中的 3 种不同的等待积木块的使用场景和使用方法。 这是微信小游戏开发的基础系列,使用的游戏开发工具为“微信小游戏制作工具”。
4 0
Travis CI 自动化构建 Hexo 博客
前提条件: • 必须使用一个public的项目, 然后登陆https://travis-ci.org/ 进行关联. • 已存在一个hexo的可以跑起来的项目 在你的hexo源码项目, 取出master分支中 添加配置文件.travis.yml,并推送到acc8226.github.io项目中.
5 0
心中有“树”!图文并茂介绍数据结构中常见的树(三)
在前面两篇文章中,我们简要介绍了数据结构中的各种【树】在搜索、数据库等领域的使用场景,希望对大家有所帮助。
10 0
Travis CI简介
什么是持续集成? Travis CI 提供的是持续集成服务(Continuous Integration,简称 CI)。它绑定 Github 上面的项目,只要有新的代码,就会自动抓取。然后,提供一个运行环境,执行测试,完成构建,还能部署到服务器。
8 0
Win系统 - 重装系统(微PE、MSDN镜像)【绝对纯净】
Win系统 - 重装系统(微PE、MSDN镜像)【绝对纯净】
12 0
Vue入门 基本使用 与 事务管理【1】
Vue入门 基本使用 与 事务管理【1】
9 0
+关注
goodlife
曾负责过银行,政府,医疗,教育,运营商等行业的数据中心建设和运维。有过4年系统集成经验,3年运维经验,了解传统数据中心在建设和运维上的痛点、也清楚云计算存在的优势,擅长云上架构设计(网络架构,安全架构,应用架构,高可用与容灾架构等),在企业上云迁移,企业云上运维方面有着丰富的实战
12
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
OceanBase 入门到实战教程
立即下载
阿里云图数据库GDB,加速开启“图智”未来.ppt
立即下载
实时数仓Hologres技术实战一本通2.0版(下)
立即下载