一、关闭防火墙iptables: (1)关闭 /etc/init.d/iptables stop (2)检查 /etc/init.d/iptables status (3)设置开机不自动启动 chkconfig iptables off (4)检查 chkconfig --list iptables 二、关闭selinux(安全): 说明:永久生效,需要重启计算机。 (1)检查配置文件 cat /etc/selinux/config # This file controls the state of SELinux on the system. # SELINUX= can take one of these three values: # enforcing - SELinux security policy is enforced. # permissive - SELinux prints warnings instead of enforcing. # disabled - No SELinux policy is loaded. SELINUX=enforcing # SELINUXTYPE= can take one of these two values: # targeted - Targeted processes are protected, # mls - Multi Level Security protection. SELINUXTYPE=targeted (2)修改配置文件 sed -i "s#SELINUX=enforcing#SELINUX=disabled#g" /etc/selinux/config (3)不重启系统的临时生效办法 setenforce 0 #设置Permissive模式 getenforce #查生效情况 (4)参数说明 # enforcing - SELinux security policy is enforced. 正常开启 # permissive - SELinux prints warnings instead of enforcing. 打印警告,但是也是禁止了。 # disabled - No SELinux policy is loaded. 禁止状态。 三、更改yum源: (1)创建备份目录 mkdir -p /etc/yum.repos.d/{default,back} ###记住,每次操作之前一定要备份!备份!备份!重要的事说三遍 (2)备份所有默认的配置文件 \mv /etc/yum.repos.d/repo /etc/yum.repos.d/default (3)获取yum源 wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-6.repo (4)备份yum源 \cp /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/default 四、精简开机自启动服务: (1)只保留重要的基础服务,其余全部关闭 chkconfig --list|egrep -v "sysstat|crond|sshd|network|rsyslog"|awk '{print "chkconfig "$1,"off"}'|bash (2)检查 chkconfig --list|grep 3:on 五、修改Linux服务器字符集: (1)检查配置文件 cat /etc/sysconfig/i18n 里面默认应该有以下2行内容: LANG="en_US.UTF-8" ###默认每次提示为英文,如果不熟悉英语的小伙伴可以进行下列操作 SYSFONT="latarcyrheb-sun16" (2)备份配置文件 cp /etc/sysconfig/i18n{,.back} (3)修改(此步选做) 说明:可以将字符集修改为中文的,也可以不修改。 echo 'LANG="zn_CN.UTF-8"' > /etc/sysconfig/i18n echo 'SYSFONT="latarcyrheb-sun16"' >> /etc/sysconfig/i18n (4)生效 source /etc/sysconfig/i18n (5)检查 echo $LANG 六、内核优化: (1)修改配置文件/etc/sysctl.conf,添加如下内容(直接一次性复制以下所有内容,在命令行里粘贴执行即可) cat >>/etc/sysctl.conf<<EOF 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.nf_conntrack_max = 25000000 net.netfilter.nf_conntrack_max = 25000000 net.netfilter.nf_conntrack_tcp_timeout_established = 180 net.netfilter.nf_conntrack_tcp_timeout_time_wait = 120 net.netfilter.nf_conntrack_tcp_timeout_close_wait = 60 net.netfilter.nf_conntrack_tcp_timeout_fin_wait = 120 EOF (2)生效 sysctl -p 七、时间同步:(工作中时间同步很重要,非常重要!) (1)配置 echo '#time sync by oldboy at 2018-04-26' >> /var/spool/cron/root echo '/5 * * * * /usr/sbin/ntpdate ntp1.aliyun.com >/dev/null 2>&1' >> /var/spool/cron/root
###一般以阿里云时间服务器为基准,以下地址可自己选择: ntp1.aliyun.com ntp2.aliyun.com ntp3.aliyun.com ntp4.aliyun.com ntp5.aliyun.com ntp6.aliyun.com ntp7.aliyun.com (2)检查 crontab -l (3)备份 \cp /var/spool/cron/root{,.back} 八、加大文件描述: (1)配置 echo '* - nofile 65535 ' >>/etc/security/limits.conf (2)检查 tail -1 /etc/security/limits.conf (3)备份 \cp /etc/security/limits.conf{,.back} 九、下载安装系统基础软件: yum install -y lrzsz nmap tree dos2unix nc ###一些基础软件会在集群架构中经常用到 十、配置hosts文件: 说明:期中集群架构的域名解析均使用内网IP,基础服务共涉及差不多9台服务器 (1)修改 cat >/etc/hosts<<EOF 127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 ::1 localhost localhost.localdomain localhost6 localhost6.localdomain6 172.16.1.5 lb01 172.16.1.6 lb02 172.16.1.7 web01 172.16.1.8 web02 172.16.1.9 web03 172.16.1.51 db01 172.16.1.31 nfs01 172.16.1.41 backup 172.16.1.61 m01 EOF (2)备份 \cp /etc/hosts{,.back} 十一、处理/etc/bashrc以及/root/.bashrc: (1)备份配置文件 \cp /etc/bashrc{,.back} (2)处理/etc/bashrc 编辑配置文件/etc/bashrc(vim /etc/bashrc), 把这个文件的第36行注释掉, 然后在刚刚注释掉的第36行下面另起一行,添加以下内容: [ "$PS1" = "\s-\v\$ " ] && PS1="[[\e[34;1m]\u@\H[\e[0m] [\e[31;1m]\w[\e[0m] [\e[32;1m]\t[\e[0m]]\$ " 注意,上面那一行很长,必须要一点不差的复制粘贴进去,并且中间不能出现回车,只能有空格,一定要注意检查!!! 使之生效:source /etc/bashrc 查看效果:按组合键ctrl+d,然后重新登录系统。 ###咯,差不多就上面这样,我一老师写的,感觉挺方便的,不用随时pwd看路径和位置,在企业中尤其管用 (3)处理/etc/bashrc 修改配置文件/root/.bashrc(vim /root/.bashrc), 在最后一行alias下面添加以下2行内容: alias grep='grep --color' alias egrep='egrep --color' 保存并退出; 使之生效:. /root/.bashrc 注意:此处的点号(.)是一个命令,此命令等价于source命令。 十二、添加一个用户: (1)添加 useradd oldboy (2)检查 id oldboy (3)设置密码 echo 123456|passwd --stdin oldboy 十三、提权给新建的用户(解释一下,因为root 用户知道的人太多了,都知道是超级管理员,为了企业的安全,重新设置一个用户) 将oldboy添加到sudo管理,以后oldboy就相当于管理员 (1)备份 \cp /etc/sudoers{,.back} (2)修改 echo "oldboy ALL=(ALL) NOPASSWD: ALL " >> /etc/sudoers (3)检查 tail -1 /etc/sudoers (4)生效 visudo -c ###此时的oldboy权限相当于root用户 十四、优化SSH远程连接: (1)备份配置文件 cp /etc/ssh/sshd_config{,.back} (2)修改配置文件 编辑ssh服务的配置文件(vim /etc/ssh/sshd_config),在第12行下面添加如下内容: ####Start by oldboy#2018-04-26### Port 52113 ###同样为了安全,更改登录端口 PermitRootLogin no PermitEmptyPasswords no UseDNS no GSSAPIAuthentication no ####End by oldboy#2018-04-26### (3)检查 grep -A 5 -i 'Start by oldboy' /etc/ssh/sshd_config (4)重启ssh服务 /etc/init.d/sshd restart (5)检查 netstat -lntup | grep ssh (6)配置说明 ####Start by oldboy#2018-04-26### Port 52113 #使用大于10000的端口号 PermitRootLogin no #禁止root远程登录 PermitEmptyPasswords no #禁止空密码登录 UseDNS no #不使用dns解析 GSSAPIAuthentication no #连接慢的解决配置 ####End by oldboy#2018-04-26### 十五、xshell连接 ######################################################################################################## 企业中:如果学习的话上面优化差不多了,当然企业实战中还可以做隐藏Linux版本信息展示;锁定关键系统文件,防止被提权篡改;为grub菜单加密码;禁ping等