标签:linux系统优化
Linux系统的优化
优化内容有:
修改ip地址、网关、主机名、DNS等
关闭selinux,清空iptables
添加普通用户并进行sudo授权管理
更新yum源及必要软件安装
定时自动更新服务器时间
精简开机自启动服务
变更默认的ssh服务端口,禁止root用户远程连接
锁定关键文件系统
调整文件描述符大小
调整字符集,使其支持中文
去除系统及内核版本登录前的屏幕显示
内核参数优化
[root@localhost ~]# vi/etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0 #网卡名字
BOOTPROTO=static #静态IP地址获取状态如:DHCP表示自动获取IP地址
IPADDR=192.168.186.128 #IP地址
NETMASK=255.255.255.0 #子网掩码
ONBOOT=yes #引导时是否激活
GATEWAY=192.168.1.1
修改Linux系统的主机名:
[root@localhost ~]# vi/etc/sysconfig/network
HOSTNAME=lg #修改主机名,重启生效
GATEWAY=192.168.1.1 #修改默认网关,如果上面eth0里面不配置网关的话,默认就使用这里的网关了。
修改Linux的DNS
[root@localhost ~]# vi/etc/resolv.conf #修改DNS信息
nameserver 192.168.1.1
配置完成后,重启网卡,有3中方法:
1、#ifup eth0
2、#service network restart
3、#/etc/init.d/network restart
1. 关闭selinux,清空iptables
SELinux(Security-Enhanced Linux) 是美国国家安全局(NSA)对于强制访问控制的实现,是 Linux 上最杰出的新安全子系统。
关闭seliunx
[root@lg~]#sed–I ‘s#SELINUX=enforcing#SELINUX=disables#g’ /etc/selinux/config #修改配置文件则永久生效,但是必须要重启系统。
sed
[root@lg ~]# grep SELINUX=disabled/etc/selinux/config
SELINUX=disabled #查看更改后的结果
[root@lg ~]# setenforce 0 #临时生效命令
[root@lg ~]# getenforce #查看selinux当前状态
Permissive
清空iptables
[root@lg ~]# iptables –F #清理防火墙规则
[root@lg ~]# iptables –L #查看防火墙规则
[root@lg ~]#/etc/init.d/iptables save #保存防火墙配置信息
[root@lg ~]#useradd lg
[root@lg ~]#passwd 设置密码
[root@lg ~]#vi sudo
Lg ALL=(ALL) ALL NOPASSWD=ALL
:wq 保存退出
Linux下方便安装软件的优秀工具叫做yum工具,linux的二进制软件包一般是rpm。
类似window下的EXE程序 相当于360软件包
通过yum工具来安装软件,默认获取rpm包的软件配置是从国外centos官方源下载
因此,我们yum安装软件速度会比较慢,因此需要把默认获取rpm包配置从国外官方源,改成国内的优秀yum源
[root@lg ~]#rpm –qa|grep yum #确保系统中安装yum
[root@lg ~]#cd /etc/yum.repos.d/ 进入yum工具编辑
[root@lgyum.repos.d]#cp centos-base.repo centos-base.repo.ori 备份很重要
[root@lgyum.repos.d]#wgethttp://mirrors.163.com/.help/CentOS6-Base-163.repo下载
[root@lg yum.repos.d]#cpcentos-base-163.repo centos-base.repo 替换掉原来的yum 更新yum软件
[root@lgyum.repos.d]#yum install tree telnet dos2unix sysstat lrzsz
安装软件包
[root@lg yum.repos.d]#yum update 更新到最新
更新到不是什么好事,已经使用上的服务,不要更新,更新后会出现问题。
[root@lg yum.repos.d]#yum grouplist这个是包主
下载的地址:
http://mirrors.163.com/.help/CentOS6-Base-163.repo
安装看网页
http://mirrors.163.com/.help/centos.html
接下来执行如下命令,检测yum是否正常
[root@lg~]# yum cleanall #清空yum缓存
[root@lg~]# yummakecache #建立yum缓存
[root@lg ~]# echo ‘*/5 * * * * /usr/sbin/ntpdatetime.windows.com >/dev/null 2 >&1‘ >>/var/spool/cron/root
[root@lg ~]# echo ‘*/10* * * * /usr/sbin/ntpdate time.nist.gov >/dev/null 2>&1‘>>/var/spool/cron/root
命令的处理方法:1)ntsysv 2)setup –systemservice 3)脚本一键完成
刚装完操作系统可以只保留crond(定时任务),network(网络服务),rsyslog(日志),sshd(远程连接)这四个服务
[root@lg ~]# for sun in `chkconfig --list|grep3:on|awk ‘{print $1}‘`;do chkconfig --level 3 $sun off;done
[root@lg~]# for sun in crond rsyslog sshd network;do chkconfig --level 3 $sun on;done
[root@lg ~]# chkconfig--list|grep 3:on
crond 0:off 1:off 2:on 3:on 4:on 5:on 6:off
network 0:off 1:off 2:on 3:on 4:on 5:on 6:off
rsyslog 0:off 1:off 2:on 3:on 4:on 5:on 6:off
sshd 0:off 1:off 2:on 3:on 4:on 5:on 6:off
ssh默认端口号是22,要更改端口号为9688,需要编辑/etc/ssh/ssh_config和/etc/ssh/sshd_config两个文件即可;
禁止root远程登录,则需要编辑/etc/ssh/sshd_config。(可能部分Linux目录为/etc/sshd,请根据实际情况修改)
#cd/etc/ssh //进去ssh目录
#cpssh_config ssh_config.bak
#cpsshd_config sshd_config.bak //备份俩个文件
#vissh_config
将被注释掉的Port 22前的注释符号“#”去掉,并将22改为如上的9688,保存退出。
#vi sshd_config
找到PermitRootLogin,将后面的yes改为no,这样root就不能远程登录了,保存退出。
重启ssh:
#/etc/init.d/sshrestart
9.锁定关键文件系统
[root@c64 ~]# chattr +i /etc/passwd
[root@c64 ~]# chattr +i /etc/inittab
[root@c64 ~]# chattr +i /etc/group
[root@c64 ~]# chattr +i /etc/shadow
[root@c64 ~]# chattr +i /etc/gshadow
使用chattr命令后,为了安全我们需要将其改名
[root@c64 ~]# /bin/mv /usr/bin/chattr /usr/bin/任意名称
10. Linux中修改字符,中文设置
第一步
#cat/etc/sysconfig/i18n //字符集的配置文件位置及查看
第二步
#cp i18ni18n.lg20150708 /etc/sysconfig/ //备份i18n配置文件
第三步
#sed -i‘s#LAND="en_US.UTF-8"#LAND="zh_CN.UTF-8"#g‘/etc/sysconfig/il8n
第四步
#source/etc/sysconfig/i18n //让刚配置的文件生效
第五步
#echo$LAND
第六步
将CRT客户端字符集改成UTF-8
11.去除系统及内核版本登录前的屏幕显示
[root@c64 ~]# >/etc/RedHat-release
[root@c64 ~]# >/etc/issue
12.内核参数优化
说明:本优化适合apache,nginx,squid多种等web应用,特殊的业务也可能需要略作调整。
[root@c64~]# vi /etc/sysctl.conf
#by sun in 20131001
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 = 4000 65000
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
#一下参数是对iptables防火墙的优化,防火墙不开会有提示,可以忽略不理。
net.ipv4.ip_conntrack_max = 25000000
net.ipv4.netfilter.ip_conntrack_max = 25000000
net.ipv4.netfilter.ip_conntrack_tcp_timeout_established = 180
net.ipv4.netfilter.ip_conntrack_tcp_timeout_time_wait = 120
net.ipv4.netfilter.ip_conntrack_tcp_timeout_close_wait = 60
net.ipv4.netfilter.ip_conntrack_tcp_timeout_fin_wait = 120
[root@localhost ~]# sysctl –p #使配置文件生效
本文出自 “土鳖” 博客,谢绝转载!
标签:linux系统优化
原文地址:http://guosl.blog.51cto.com/2126191/1828203