zoukankan      html  css  js  c++  java
  • linux系统基础优化和安全重点小结

    本文描述一些基本的系统优化知识点,为适应批量配置,所有代码为非交互式配置方法,可在crt中通过命令窗口做简单的批量处理。

    1. 不用root登录管理系统,而以普通用户登录通过sudo授权管理。作为一个例子这里新建一个用户,并做sudo提权
      useradd gotimmygo
       echo 123456|passwd --stdin gotimmygo
       cp /etc/sudoers{,ori}
       echo "gotimmygo    ALL=(ALL)       NOPASSWD:ALL">>/etc/sudoers
       tail -1 /etc/sudoers
       visudo -c
    2. 更改默认的远程连接ssh服务端口,禁止root用户远程连接,甚至要更改ssh服务只监听内网IP。
    3. 超时时间、操作记录数更改
      1 echo "export TMOUT=300" >>/etc/profile
      2 echo "export HISTSIZE=10">>/etc/profile
      3 echo "export HISTFILESIZE=10">>/etc/profile
    4. 定时更新服务器时间,使其和互联网时间同步。
      1 echo "#####time sync by xuyan at 2017-12-16">>/var/spool/cron/root
      2 echo "*/5 * * * * /usr/bin/ntpdate ntp1.aliyun.com >>/dev/null 2>&1" >>/var/spool/cron/root
      3 crontab -l
    5. 配置yum更新源,从国内更新源下载安装软件包。
    6. 关闭SELinux及iptables(在工作场景中,如果有外部IP一般要打开iptables,高并发流量的服务器可能无法开启)。
      ##关闭SELinux
      sed -i "s#SELINUX=enforcing#SELINUX=disabled#g" /etc/selinux/config
       setenforce 0
       getenforce
      
      ##关闭iptables
      /etc/init.d/iptables status
      /etc/init.d/iptables stop
      chkconfig iptables off
    7. 调整文件描述符的数量,进程及文件的打开都会消耗文件描述符数量。配置完成后重新登录才可以生效,可以使用命令ulinmit -n进行查看
      echo ‘*             -      nofile             65535’>>/etc/security/limits.conf
    8. 定时自动清理邮件临时目录垃圾文件,防止磁盘的inode数被小文件占满(注意centos6和centos5要清除的目录不同)。
    9. 精简并保留必要的开机自启动服务(如cron、network、sshd、rsyslog、sysstat)
      chkconfig --list|egrep -v  "crond|ssh|network|rsyslog|sysstat"|awk '{print "chkconfig",$1,"off"}'|bash
      chkconfig --list|grep "3:on"
    10. linux内核参数优化/etc/sysctl.conf,执行sysctl –p生效。,其中各语句的释义可以百度查看
       1 cat >>/etc/sysctl.conf<<EOF
       2 net.ipv4.tcp_fin_timeout = 2
       3 net.ipv4.tcp_tw_reuse = 1
       4 net.ipv4.tcp_tw_recycle = 1
       5 net.ipv4.tcp_syncookies = 1
       6 net.ipv4.tcp_keepalive_time = 600
       7 net.ipv4.ip_local_port_range = 4000 6000
       8 net.ipv4.tcp_max_syn_backlog = 16384
       9 net.ipv4.tcp_max_tw_buckets = 36000
      10 net.ipv4.route.gc_timeout = 100
      11 net.ipv4.tcp_syn_retries = 1
      12 net.ipv4.tcp_synack_retries = 1
      13 net.core.somaxconn = 16384
      14 net.core.netdev_max_backlog = 16384
      15 net.ipv4.tcp_max_orphans = 16384
      16 net.ipv4.tcp_keepalive_probes = 3
      17 net.ipv4.tcp_keepalive_intvl =15
      18 net.ipv4.tcp_retries2 = 5
      19 net.ipv4.tcp_max_tw_buckets = 36000
      20 net.ipv4.tcp_wmem = 8192 131072 16777216
      21 net.ipv4.tcp_rmem = 32768 131072 16777216
      22 net.ipv4.tcp_mem = 786432 1048576 1572864
      23 net.ipv4.ip_local_port_range = 1024 65000
      24 net.ipv4.ip_conntrack_max = 65536
      25 net.ipv4.netfilter.ip_conntrack_max=65536
      26 net.ipv4.netfilter.ip_conntrack_tcp_timeout_established=180
      27 vm.swappiness=10
      28 ###以下是对iptables的优化,防火墙不开会提示,可以忽略不计
      29 net.nf_conntrack_max = 25000000
      30 net.netfilter.nf_conntract_max = 25000000
      31 net.netfilter.nf_conntract_tcp_timeout_established = 180
      32 net.netfilter.nf_conntract_tcp_timeout_time_wait = 120
      33 net.netfilter.nf_conntract_tcp_timeout_close_wait = 60
      34 net.netfilter.nf_conntract_tcp_timeout_fin_wait = 120
      35 EOF
      36
    11. 更改系统字符集为”zh_CN.UTF-8”,使其支持中文,防止出现乱码问题。这里在linux系统中应该要安装相应的中文字符集

      1 cp /etc/sysconfig/i18n{,i18n.ori}
      2 echo ''LANG="zh_CN.UTF-8"'>/etc/sysconfig/i18n
      3 source /etc/sysconfig/i18n
      4 export LANG=zh_CN.UTF-8
    12. 锁定关键系统文件,如/etc/passwd,/etc/shadow,/etc/group,/etc/gshadow,/etc/inittab,处理以上内容后吧chattr、lsattr改名为oldboy,转移走,这样就安全多了。
    13. 清空/etc/isuue、/etc/issue.net,去除系统及内核版本登录前的屏幕显示。
      1 >/etc/issue
      2 >/etc/issue.net
      3 cat /etc/issue
      4 cat /etc/issue.net
    14. 清楚多余的系统虚拟用户账号。
    15. 为grub引导菜单加密码。
    16. 禁止主机被ping。
    17. 打补丁并升级已知漏洞的软件。
  • 相关阅读:
    1---如何在sequence中监测DUT中的信号--一共有哪些方法可以实现
    DMA简介
    软件工程 实践者的研究方法 第18章答案
    软件工程 实践者的研究方法 第17章答案
    软件工程 实践者的研究方法 第16章答案
    软件工程 实践者的研究方法 第15章答案
    软件工程 实践者的研究方法 第14章答案
    软件工程 实践者的研究方法 第13章答案
    软件工程 实践者的研究方法 第12章答案
    软件工程 实践者的研究方法 第11章答案
  • 原文地址:https://www.cnblogs.com/Go-Spurs-Go/p/8046135.html
Copyright © 2011-2022 走看看