zoukankan      html  css  js  c++  java
  • Linux系统安装完的调整和安全

    精简开机系统自启动

    •五个企业环境中开机自启动的服务;

    sshd:远程连接linux服务器必须开启

    rsyslog:日志相关软件

    network:网络服务

    crond:系统和用户配置的计划任务周期性进行

    sysstat:收集系统性能数据,有利于判断系统是否正常

    •sysstat软件包介绍:

    安装:yum -y install sysstat

    sadc工具:

    位于/usr/lib64/sa/目录下,sadc是将数据写在一个二进制文件中,如果要查看内容要用sadf工具查看

    执行/usr/lib64/sa/sadc -
    输出会保存在/var/log/sall中
    需要用sadf或者sar -f /var/log/sa/sa11  # -f 从一个二进制文件中入去内容
    Linux 2.6.32-504.30.3.el6.x86_64 (alex)         2016年06月11日  _x86_64_       (1 CPU)     # 输出信息

    应用举例:

    1、查看cpu使用率:
    sar -u 1 5  # 表示每一秒统计一次,一共统计5次
    2、查看网络吞吐量
    sar -n DEV 2 5  # 表示每两秒统计一次,一共统计5次

    iostat:可以收集cpu使用状况,磁盘IO状态

    mpstat:一般用于多处理器中cpu使用率的统计

    详细参考:http://www.361way.com/use-sysstat/1521.html

    •sysstat软件包继承的主要工具有:

    iostat提供CPU使用率以及硬盘吞吐效率的数据

    mpstst提供单个或多个处理器的数据

    sar收集、报告并存储系统活跃信息

    •设置开机自启动服务的常见方法

    方法一:ntsysv

    方法二:setup

    查看运行级别是3的服务:

    chkconfig --list |grep 3:启用

    关闭iptables防火墙、selinux

    对于高并发高流量的业务不适合开启iptables防火墙,一般这种业务需要在前端配置硬件防火墙

    #关闭iptables防火墙
    /etc/init.d/iptables stop
    #关闭开机自启动
    chkconfig iptables off
    #查看iptables启动级别
    chkconfig --list |grep iptables
    centos7是firewall
    #关闭selinux
    vim /etc/selinux/conf
      #SELINUX=disabled

    更改ssh服务器端远程登入配置

    •windows服务器端远程端口:3389,管理员为administrator,普通用户为guest;linux服务器远程端口为:22,管理员为root,普通用户随意

    vi /etc/ssh/sshd_config
    Port 2222 #修改自己的ssh端口
    PermitRootLogin no #禁止用root登入自己的系统
    PermitEmptyPasswords no #禁止密码为空的用户登入
    UseDNS no #对远程主机进行反向解析,会减慢ssh连接速度
    GSSAPIAuthentication no #解决ssh远程连接慢的问题

    •更高级的ssh安全策略

    更改ssh的监听ip

    通过防火墙限制使用内网ip连接服务器

    通过拨号VPN服务器接通内网然后访问这些服务器

    通过sudo控制用户对系统命令的使用权限

    •为了安全以及管理方便,需要将使用root权限的用户加入sudo管理,用户可使用自己的账号登入系统,用root的权限来管理系统

    visudo == vi /etc/sudoers
    #第98行
    root    ALL=(ALL)    ALL
    alex    ALL=(ALL)    /usr/sbin/useradd,/usr/sbin/userdel #用户alex能够使用useradd和userdel命令

    •给普通用户创建root的权限

    visudo
    # 第98行
    alex    ALL=(ALL)    NOPASSWD:ALL    #alex拥有root所有权限不用输入密码

    查看/root目录时需要sudo ls /root 通过sudo命令获取权限

    注意:通过sudo授权后命令格式为:sudo 命令;

    sudo -l 可以查看该用户被授权的sudo命令集合

    linux中文显示设置

    •GBK用2个字节表示一个中文,UTF-8用3个字节表示一个中文

    vi /etc/sysconfig/i18n
    LANG="zh_CN.GBK"  # 中文格式的GBK  
    LANG="zh_CN.UTF-8"  # utf-8编码  <------------推荐
    LANG="en_US.GBK"  # 英文格式的GBK
    LANG="en_US.UTF-8"  # utf-8编码

     •使用secureCRT可以设置编码格式,必须和系统设置的一样

    Option--Session Option--Appearance
    选项--会话选项--外观-- 字符编码

    设置linux服务器时间同步

    linux的时间同步服务为ntp服务,机器少时使用,机器多了可以布置内网的时间服务器

    Linux网络同步时间:
    yum install ntpdate -y    #如果没有就安装
    ntpdate 0.asia.pool.ntp.org
    若上面的时间服务器不可用,也可以选择以下服务器同步时间:
       1.asia.pool.ntp.org
       2.asia.pool.ntp.org

        3.asia.pool.ntp.org

    同步硬件时间:(很多时候硬件时间也是不对的,需要同步)
    date #查看系统时间
    hwclock --show #查看硬件时间
    timedatectl set-timezone Asia/Shanghai #调整时区
    hwclock --systohc --localtime #将硬件时间调整为和系统时间一样
    clock -w #将日期写入CMOS

    历史记录数以及登入超时环境变量设置

    查看历史命令:history

    vi /etc/profile
    TIMEOUT=10 #链接超时时间
    HISTSIZE=10 #命令行的历史记录数
    HISTFILESIZE=10 #历史记录文件的命令数量

    调整linux系统文件描述符数量

    文件描述符是由无符号整数表示的句柄,进程使用它来标识打开的文件;对于内核而言,所有打开的文件都是通过文件描述符引用的,打开一个文件,内核向进程返回一个文件描述符。。

    查看文件描述符的命令

    ulimit -n

    方法一:
    vi /etc/security/limits.conf        # 最后一行添加

    * hard nofile 65535
    * soft nofile 65535
    * hard nproc 65535
    * soft nproc 65535

    vim /etc/security/limits.d/90-nproc.conf    #修改下面1行(centos6)

    *          soft    nproc     65535

    centos7是/etc/security/limits.d/20-nproc.conf

    修改系统总限制:

    echo 65535 > /proc/sys/kernel/pid_max

    echo "kernel.pid_max = 65535" >> /etc/sysctl.conf  #永久生效

    配置完成后需要重新登入才会生效

    加入开机启动项

    vi /etc/rc.local
    ulimit -HSn 65535

     

    swappiness,Linux内核参数,控制换出运行时内存的相对权重。swappiness参数值可设置范围在0到100之间。 低参数值会让内核尽量少用交换;

    现在一般1个G的内存可修改为10, 2个G的可改为5, 甚至是0。具体这样做:
      1.查看你的系统里面的swappiness
      $ cat /proc/sys/vm/swappiness
      不出意外的话,你应该看到是 60
      2.修改swappiness值为10
      $ sudo sysctl vm.swappiness=10
      但是这只是临时性的修改,在你重启系统后会恢复默认的60,为长治久安,还要更进一步:
      $ sudo gedit /etc/sysctl.conf
      在这个文档的最后加上这样一行:
      vm.swappiness=10
      然后保存,重启。ok,你的设置就生效了。

    linux服务器内核参数优化

    pass   可以选择升级内核,请看我另一片文章:  https://www.cnblogs.com/weiyiming007/p/9504962.html

    定时清理邮件服务临时目录垃圾文件

    CentOS 5 系统默认安装Sendmail服务,邮件临时存放位置:/var/spool/clientmqueue

    CenterOS 6没有安装Sendmail服务,而是改装Postfix服务,邮件临时存放位置:/var/spool/postfix/maildrop

    临时存放位置如果被垃圾文件填满会导致inode数量不够用,需要手动清理

    •Centos 5

    find /var/spool/clientmqueue/ -type f |xargs rm -f

    •Centos 6

    find /var/spool/postfix/maildrop -type f |xargs rm -f

    df -i 查看磁盘inode的总量、使用量、剩余量

    隐藏linux版本的信息(登入时)

    登入显示的版本信息存放在:/etc/issue

    复制代码
    cat /etc/issue
    # 输出
    CentOS release 6.6 (Final)
    Kernel 
     on an m
    # 执行命令 > /etc/issue # 清除文件内容,再次登入时则不显示linux的版本信息
    复制代码

    锁定关键系统文件,防止被提权篡改

    chstt,文件在/user/bin/下,为了防止被修改可以做软连

    上锁系统文件chattr,以后任何用户修改这个文件都不会成功,除非解锁

    +:代表在原有属性的基础上

    i:immutable不可修改的

    chattr +i /etc/passwd

    解锁系统文件

    chattr -i /etc/passwd

    查看文件的属性lsattr

    lsattr /etc/passwd

    清除多余的系统虚拟账号

    不是必须的优化选项,pass

    为grub菜单加密码

    目的:防止别人修改grub进行内核启动项设置以及用当用户模式修改root密码,安装系统后的设置如下:

    1、生成md5秘钥
    /sbin/grub-md5-crypt
    
    2、修改/etc/grub.conf
    在splashimage和title之间加入
    password  --md5  秘钥

    设置完成后管理grub就会提示输入密码

    禁止linux系统被ping

    为了增加系统的安全性。可以禁止我们的linux系统被ping,可惜修改iptables来设置

    一般不用

    echo 'net.ipv4.icmp_echo_ignore_all=1'  >> /etc/sysctl.conf

    sysctl -p 重载信息并更新启动

    如果要恢复:

    > /etc/sysctl.conf

    echo 0 > /proc/sys/net/ipv4/icmp_echo_ignore_all

    升级openssl,openssh,bash

    1、查看
    rpm -qa openssl openssh bash
    
    2、安装最新版本
    yun -y install openssl openssh bash
  • 相关阅读:
    vue自定义指令:v-drag使用 拖动拖拽
    element ui 中动态添加的树形结构(带删除功能的),不管点击删除哪个都会删除掉最后一个
    element ui 表格中的插槽用法
    报错:Uncaught SyntaxError: Unexpected token u in JSON at position 0
    vue报错:Duplicate keys detected: ' '. This may cause an update error
    el-input验证规则
    el-input 给v-model赋了默认值后不能编辑
    DC-2 渗透测试
    DC:1渗透测试
    CTF easytrick
  • 原文地址:https://www.cnblogs.com/weiyiming007/p/8134611.html
Copyright © 2011-2022 走看看