linux基础优化

linux基础优化:
1、关闭selinux

临时:
[root@huang ~]# getenforce
Enforcing
[root@huang ~]# setenforce 0
[root@huang ~]# getenforce
Permissive
[root@huang ~]#

永久:

# sed -i 's#enforcing#disabled#g' /etc/selinux/config

2、系统默认级别

[root@huang ~]# tail -n 1 /etc/inittab
id:3:initdefault:
[root@huang ~]#rulevel  //也可查看当前级别

3、精简开机启动项
需开机启动如下服务,剩下全部关闭
sshd  远程连接服务
rsyslog 日志服务
network 网络服务
crond 定时任务
sysstat 监控系统的负载记录(isostat 提供cpu使用率和硬盘的吞吐率  mpstat提供单个或多个处理器相关数据 sar负责收集,报告并存储系统活跃的信息)
方法:

for i in `chkconfig --list|grep -vE "(crond|sshd|network|rsyslog|sysstat)"|awk '{print $1}'`;do chkconfig $i off;done

4、关闭防火墙(学习环境使用)

# service iptables stop
#iptables -F //清空防火墙
# service iptables save

5、设置显示语言

[root@huang ~]# echo $LANG
en_US.UTF-8
[root@huang ~]# cat /etc/sysconfig/i18n
LANG="en_US.UTF-8"     #英文
或
LANG="zh_CN.UTF-8"     #中文
SYSFONT="latarcyrheb-sun16"
[root@huang ~]#

6、时间同步
设置开机自动校时和定时校时。
开机校时,写在/etc/rc.local里。
定时校时,crontab –e进行编辑修改。
校时命令
ntpdate 时间服务器地址

[root@study ~]# ntpdate asia.pool.ntp.org
[root@study ~]# crontab -l
59 23 * * * /usr/sbin/ntpdate asia.pool.ntp.org && /usr/sbin/hwclock -w
[root@study ~]#


7、解决ssh连接慢的问题
注:建议先备份文件

# vim /etc/ssh/sshd_config
UseDNS no
GSSAPIAuthentication no
# /etc/init.d/sshd reload   #平滑重启


8、常用变量设置
# TMOUT=20    #回话超时时间
# HISTSIZE=5   #记录的历史命令的个数
# HISTFILESIZE=20   #记录历史命令的行数
永久生效:
把以上命令写入 /etc/profile后

# source /etc/profile   #永久生效


9、调整linux系统文件描述符数量
说明:对于高并发业务来说,默认值是不够的

[root@huang ~]# ulimit -n
1024
调整方法:
[root@huang ~]# echo "*               -       nofile          65535"  >>/etc/security/limits.conf

退出系统后再登录即可生效


10、内核优化
注:适应于大部分web生产环境

net.ipv4.tcp_syn_retries = 1
net.ipv4.tcp_synack_retries = 1
net.ipv4.tcp_keepalive_time = 600
net.ipv4.tcp_keepalive_probes = 3
net.ipv4.tcp_keepalive_intvl =15
net.ipv4.tcp_retries2 = 5
net.ipv4.tcp_fin_timeout = 2
net.ipv4.tcp_max_tw_buckets = 36000
net.ipv4.tcp_tw_recycle = 1
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_max_orphans = 32768
net.ipv4.tcp_syncookies = 1
net.ipv4.tcp_max_syn_backlog = 16384
net.ipv4.tcp_wmem = 8192 131072 16777216
net.ipv4.tcp_rmem = 32768 131072 16777216
net.ipv4.tcp_mem = 786432 1048576 1572864
net.ipv4.ip_local_port_range = 1024 65000
net.ipv4.ip_conntrack_max = 65536
net.ipv4.netfilter.ip_conntrack_max=65536
net.ipv4.netfilter.ip_conntrack_tcp_timeout_established=180
net.core.somaxconn = 16384
net.core.netdev_max_backlog = 16384

11、定时清理服务器临时目录垃圾文件

[root@huang ~]# find /var/spool/postfix/maildrop/ -type f |xargs rm -f

写脚本,定时清理:

[root@huang ~]# mkdir -p /server/scripts
[root@huang ~]# echo "find /var/spool/postfix/maildrop/ -type f |xargs rm -f" >> /server/scripts/del_file.sh
[root@huang ~]# echo "00 00 * * * /bin/sh /server/scripts/del_file.sh >/dev/null 2>&1" >>/var/spool/cron/root
[root@huang ~]# crontab -l
00 00 * * * /bin/sh /server/scripts/del_file.sh >/dev/null 2>&1
[root@huang ~]# df -i
Filesystem      Inodes IUsed   IFree IUse% Mounted on
/dev/sda2      1234576 69428 1165148    6% /
tmpfs           125514     1  125513    1% /dev/shm
/dev/sda1        51200    44   51156    1% /boot
[root@huang ~]#


12、隐藏linx版本信息显示
注:清空这两个文件内容即可

[root@huang ~]# cat /etc/issueCentOS
 release 6.9 (Final)Kernel \r on an \m
[root@huang ~]# cat /etc/issue.netCentOS
 release 6.9 (Final)Kernel \r on an \m


13、锁定系统文件

[root@huang ~]# chattr +i /etc/passwd /etc/shadow /etc/group /etc/gshadow /etc/inittab
注:锁定后所有用户都不能对文件修改删除
如果想更加安全可以把chattr命令改名
[root@huang ~]# mv /usr/bin/chattr /usr/bin/yanqi01

#######################################解锁如果失败,可以尝试使用下列方法################################
1、执行chattr 
#chattr -i  /etc/passwd
# lsattr -v /etc/passwd 
2095582053 ------------- /etc/passwd
# chattr -i  /etc/shadow
8、同步文件
pwconv


14、清空虚拟帐号
看老男孩的书籍或博客,不是必须的


15、通过防火墙设定指定的IP可以ping服务器

# iptables -t filter -I INPUT -p icmp --icmp-type 8 -i eth0 -s 10.0.0.0/24 -j ACCEPT


16、升级典型漏洞的软件版本

openssh5.3有漏洞建议升级到最新版本

[root@localhost ~]# rpm -qa openssl openssh bash
bash-4.1.2-40.el6.x86_64
openssl-1.0.1e-48.el6.x86_64
openssh-5.3p1-117.el6.x86_64
[root@localhost ~]# yum -y install openssl openssh bash 
[root@localhost ~]# rpm -qa openssl openssh bash
bash-4.1.2-48.el6.x86_64
openssl-1.0.1e-57.el6.x86_64
openssh-5.3p1-123.el6_9.x86_64
[root@localhost ~]#


17、变量的设置 

1、打开文本默认显示行号    
  centos 编辑/etc/vimrc   在最后一行添加set nu   保存退出
  
2、详细记录操作命令执行时间和帐号     
 [root@huang ~]# cat /etc/profile
 export HISTTIMEFORMAT="%F %T `whoami` "     #最后添加一行,保存退出。
 
3、grep筛选文件显示颜色
vim /etc/bashrc  #编辑该文件,在最后一行添加:
export GREP_OPTIONS='--color=auto' GREP_COLOR='31'
export PS1="\[\e[32;1m\][\u@\H \W]#\[\e[0m\]"   #蓝色显示主机名
export PS1="[\u@\H \W]#"   #显示主机全名

保存后使用以下命令生效 
source /etc/bashrc


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章