zoukankan      html  css  js  c++  java
  • Linux安全加固--精简启动项

    1、关闭不必要的服务

    1.1、centos6.x服务操作命令

    1.1.1、常用命令

    查看服务开启或关闭状态:

    [root@localhost ~]# chkconfig --list
    aegis           0:off 1:off 2:on 3:on 4:on 5:on 6:off
    agentwatch      0:off 1:off 2:on 3:on 4:on 5:on 6:off
    atd             0:off 1:off 2:off 3:on 4:on 5:on 6:off
    auditd          0:off 1:off 2:on 3:on 4:on 5:on 6:off
    blk-availability 0:off 1:on 2:on 3:on 4:on 5:on 6:off
    cloud-config    0:off 1:off 2:on 3:on 4:on 5:on 6:off
    cloud-final     0:off 1:off 2:on 3:on 4:on 5:on 6:off
    cloud-init      0:off 1:off 2:on 3:on 4:on 5:on 6:off
    cloud-init-local 0:off 1:off 2:on 3:on 4:on 5:on 6:off
    cloud-init-upgrade 0:off 1:off 2:on 3:on 4:on 5:on 6:off
    cloudmonitor    0:off 1:off 2:on 3:on 4:on 5:on 6:off
    crond           0:off 1:off 2:on 3:on 4:on 5:on 6:off
    ecs_mq-service 0:off 1:off 2:on 3:on 4:on 5:on 6:off
    eni-service     0:off 1:off 2:on 3:on 4:on 5:on 6:off
    htcacheclean    0:off 1:off 2:off 3:off 4:off 5:off 6:off
    httpd           0:off 1:off 2:off 3:off 4:off 5:off 6:off
    ip6tables       0:off 1:off 2:on 3:on 4:on 5:on 6:off
    iptables        0:off 1:off 2:off 3:off 4:off 5:off 6:off
    irqbalance      0:off 1:off 2:off 3:on 4:on 5:on 6:off
    iscsi           0:off 1:off 2:off 3:on 4:on 5:on 6:off
    iscsid          0:off 1:off 2:off 3:on 4:on 5:on 6:off
    lvm2-monitor    0:off 1:on 2:on 3:on 4:on 5:on 6:off
    mdmonitor       0:off 1:off 2:on 3:on 4:on 5:on 6:off
    multipathd      0:off 1:off 2:off 3:off 4:off 5:off 6:off
    mysqld          0:off 1:off 2:off 3:off 4:off 5:off 6:off
    netconsole      0:off 1:off 2:off 3:off 4:off 5:off 6:off
    netfs           0:off 1:off 2:off 3:on 4:on 5:on 6:off
    network         0:off 1:off 2:on 3:on 4:on 5:on 6:off
    nscd            0:off 1:off 2:off 3:off 4:off 5:off 6:off
    ntpd            0:off 1:off 2:on 3:on 4:on 5:on 6:off
    ntpdate         0:off 1:off 2:off 3:off 4:off 5:off 6:off
    php-fpm         0:off 1:off 2:off 3:off 4:off 5:off 6:off
    postfix         0:off 1:off 2:on 3:on 4:on 5:on 6:off
    rdisc           0:off 1:off 2:off 3:off 4:off 5:off 6:off
    restorecond     0:off 1:off 2:off 3:off 4:off 5:off 6:off
    rsyslog         0:off 1:off 2:on 3:on 4:on 5:on 6:off
    saslauthd       0:off 1:off 2:off 3:off 4:off 5:off 6:off
    sshd            0:off 1:off 2:on 3:on 4:on 5:on 6:off
    svnserve        0:off 1:off 2:off 3:off 4:off 5:off 6:off
    sysstat         0:off 1:on 2:on 3:on 4:on 5:on 6:off
    udev-post       0:off 1:on 2:on 3:on 4:on 5:on 6:off
    xinetd          0:off 1:off 2:off 3:on 4:on 5:on 6:off
    xinetd based services:
    chargen-dgram: off
    chargen-stream: off
    daytime-dgram: off
    daytime-stream: off
    discard-dgram: off
    discard-stream: off
    echo-dgram:     off
    echo-stream:    off
    rsync:          off
    tcpmux-server: off
    time-dgram:     off
    time-stream:    off
    [root@localhost ~]#
    

    单独查看某一个服务的状态:

    [root@localhost ~]# chkconfig postfix --list
    postfix         0:off 1:off 2:on 3:on 4:on 5:on 6:off
    [root@localhost ~]#
    

    让某个服务开机不启动:

    [root@localhost ~]# chkconfig postfix off
    [root@localhost ~]# chkconfig postfix --list
    postfix         0:off 1:off 2:off 3:off 4:off 5:off 6:off
    [root@localhost ~]# 
    

    让某个服务在指定init级别启动:

    [root@localhost ~]# chkconfig postfix --level 234 on
    [root@localhost ~]# chkconfig postfix --list
    postfix         0:off 1:off 2:on 3:on 4:on 5:off 6:off
    [root@localhost ~]#
    

    让某个服务在指定init级别关闭:

    [root@localhost ~]# chkconfig postfix --level 234 off
    [root@localhost ~]# chkconfig postfix --list
    postfix         0:off 1:off 2:off 3:off 4:off 5:off 6:off
    [root@localhost ~]#
    

    让某个服务在所有级别(默认2345)都启动:

    [root@localhost ~]# chkconfig postfix on
    [root@localhost ~]# chkconfig postfix --list
    postfix         0:off 1:off 2:on 3:on 4:on 5:on 6:off
    [root@localhost ~]#
    

    查看系统服务的相关说明:

    [root@localhost ~]# rpm -qi $(rpm -qf /etc/init.d/postfix)
    Name        : postfix                      Relocations: (not relocatable)
    Version     : 2.6.6                             Vendor: CentOS
    Release     : 6.el6_7.1                     Build Date: Tue 10 Nov 2015 05:59:54 PM HKT
    Install Date: Wed 22 Aug 2018 11:38:05 AM HKT      Build Host: c6b8.bsys.dev.centos.org
    Group       : System Environment/Daemons    Source RPM: postfix-2.6.6-6.el6_7.1.src.rpm
    Size        : 10190116                         License: IBM
    Signature   : RSA/SHA1, Tue 10 Nov 2015 08:41:47 PM HKT, Key ID 0946fca2c105b9de
    Packager    : CentOS BuildSystem http://bugs.centos.org
    URL         : http://www.postfix.org
    Summary     : Postfix Mail Transport Agent
    Description :
    Postfix is a Mail Transport Agent (MTA), supporting LDAP, SMTP AUTH (SASL),
    TLS
    [root@localhost ~]# 
    

    以上命令只适用于系统自带的服务,或者用yum和rpm安装的一些服务,如果是自己源码安装的,可能没这么详细。

    自己安装了一些服务之后,可以手动将它们加进系统服务管理中:

    如何增加一个服务:

    1、服务脚本必须存放在/etc/ini.d/目录下;

    2、chkconfig --add servicename

    在chkconfig工具服务列表中增加此服务,此时服务会被在/etc/rc.d/rcN.d中赋予K/S入口了;

    3.chkconfig --level35 mysqld on

    修改服务的默认启动等级。

    1.1.2、关闭不需要的服务

    这里,postfix服务是提供邮件服务的,这里我们并没有用到,所以我们选择把它关闭

    [root@localhost ~]# chkconfig postfix off
    
    [root@localhost ~]# chkconfig postfix --list
    
    postfix         0:off 1:off 2:off 3:off 4:off 5:off 6:off
    
    [root@localhost ~]#
    

    服务可能在运行,我们让服务现在就关闭:

    [root@localhost ~]# service postfix stop
    Shutting down postfix:                                     [  OK  ]
    [root@localhost ~]# service postfix status
    master is stopped
    [root@localhost ~]#
    

    其它服务也一样操作,下面我们会列出一个可以关闭的服务列表。

    1.2、Centos7.x服务操作命令

    1.2.1、常用命令

    查看服务开启或关闭状态:

    CentOS7已不再使用chkconfig 管理启动项,使用systemctl工具来管理服务程序,包括了service和chkconfig

    启动一个服务: systemctl start firewalld.service

    关闭一个服务: systemctl stop firewalld.service

    重启一个服务: systemctl restart firewalld.service

    显示一个服务的状态: systemctl status firewalld.service

    在开机时启用一个服务: systemctl enable firewalld.service

    在开机时禁用一个服务: systemctl disable firewalld.service

    查看服务是否开机启动: systemctl is-enabled firewalld.service;echo $?

    查看已启动的服务列表: systemctl list-unit-files|grep enabled

    使用 systemctl list-unit-files 可以查看各个服务的状态,这个信息有点多,

    image

    所以我们过滤一下打开的:

    [root@localhost ~]# systemctl list-unit-files | grep enable
    auditd.service                            enabled 
    autovt@.service                           enabled 
    crond.service                             enabled 
    dbus-org.fedoraproject.FirewallD1.service enabled 
    firewalld.service                         enabled 
    getty@.service                            enabled 
    irqbalance.service                        enabled 
    kdump.service                             enabled 
    lvm2-monitor.service                      enabled 
    microcode.service                         enabled 
    NetworkManager-wait-online.service        enabled 
    postfix.service                           enabled 
    rsyslog.service                           enabled 
    sshd.service                              enabled 
    systemd-readahead-collect.service         enabled 
    systemd-readahead-drop.service            enabled 
    systemd-readahead-replay.service          enabled 
    tuned.service                             enabled 
    vmtoolsd.service                          enabled 
    xinetd.service                            enabled 
    dm-event.socket                           enabled 
    lvm2-lvmetad.socket                       enabled 
    lvm2-lvmpolld.socket                      enabled 
    default.target                            enabled 
    multi-user.target                         enabled 
    remote-fs.target                          enabled 
    runlevel2.target                          enabled 
    runlevel3.target                          enabled 
    runlevel4.target                          enabled 
    [root@localhost ~]# 
    

    1.2.2、关闭不需要的服务

    同上面一样,接下来我们关闭postfix服务。

    [root@localhost ~]# systemctl disable postfix.service
    Removed symlink /etc/systemd/system/multi-user.target.wants/postfix.service.
    [root@localhost ~]#
    [root@localhost ~]# systemctl list-unit-files | grep postfix
    postfix.service                           disabled
    

    关闭正在运行的postfix

    [root@localhost ~]# systemctl stop postfix.service

    1.3、系统启动项列表

    参考:https://blog.csdn.net/alexdream/article/details/10955797

    https://www.cnblogs.com/jonsea/p/5571267.html

    https://www.getlinux.cn/centos7-x-chang-yong-fu-wu-jian-jie.html

    服务名称

    功能

    默认

    建议

    备注

    aegis

    阿里云安骑士

    on

    on

    agentwatch

    阿里云Ecs监控

    on

    on

    atd

    计划任务,/etc/at.allow,/etc/at.deny

    on

    off

    可用crond代替

    auditd

    配合selinux审核

    on

    off

    autovt

    登录相关

    on

    on

    blk-availability

    lvm2相关

    on

    on

    有lvm就开

    cloud-config

    Ecs云配置,配合cloud-init

    on

    on

    cloud-final

    配合cloud-init

    on

    on

    cloud-init

    云初始化服务

    on

    on

    cloud-init-local

    配合cloud-init

    on

    on

    cloud-init-upgrade

    配合cloud-init

    on

    on

    cloudmonitor

    云监控

    on

    on

    crond

    计划任务

    on

    on

    dbus-org.fedoraproject.FirewallD1

    桌面网卡管理

    on

    off

    default.target

    默认启动项

    on

    on

    multi-user.target

    同default.target

    on

    on

    ecs_mq-service

    Ecs相关

    on

    on

    eni-service

    Ecs网卡相关

    on

    on

    firewalld

    Centos7的默认防火墙

    on

    off

    getty

    tty控制台相关 保留

    on

    on

    htcacheclean

    Apache清除磁盘缓存

    off

    off

    httpd

    http服务器

    off

    off

    看需要,可用Nginx代替

    ip6tables

    ipv6防火墙

    on

    off

    不用ipv6就关闭

    iptables

    ipv4防火墙

    on

    on

    看需要,阿里云安全组可代替

    irqbalance

    cpu负载均衡

    on

    on

    多核cpu需要

    iscsi

    网络存储相关,san

    on

    off

    看需要

    iscsid

    网络存储相关,san

    on

    off

    kdump

    内核崩溃信息捕获

    on

    on

    看需要

    lvm2-monitor

    Lvm监控

    on

    on

    有lvm就开

    mdmonitor

    软raid监控

    on

    on

    建议开

    microcode

    处理器稳定性增强 保留

    on

    on

    multipathd

    off

    off

    NetworkManager-wait-online

    网卡守护进程 关闭

    on

    off

    netconsole

    网络驱动程序调试用

    off

    off

    netfs

    网络文件系统

    on

    off

    有用nfs可以开

    network

    启动是激活网络接口

    on

    on

    必须开

    nscd

    name cache,应该与DNS相关

    off

    off

    ntpd

    自动对时服务

    on

    on

    ntpdate

    自动对时服务

    off

    off

    php-fpm

    Php解释器

    off

    off

    用到开

    postfix

    替代sendmail的邮件服务器

    on

    off

    rdisc

    自动检测路由器

    off

    off

    restorecond

    selinux相关

    off

    off

    用selinux就开

    rsyslog

    系统的日志服务

    on

    on

    必须开

    saslauthd

    sasl认证服务相关

    off

    off

    sshd

    ssh服务端

    on

    on

    必须开

    svnserve

    Svn服务端

    off

    off

    服务端开,客户端关闭

    sysstat

    系统状态监测命令提供 iostat 和 sar

    on

    on

    systemd-readahead-collect

    内核调用--预读取 保留

    on

    on

    systemd-readahead-drop

    --

    systemd-readahead-replay

    --

    dm-event

    设备映射用

    on

    on

    udev-post

    设备管理系统

    on

    on

    xinetd

    超级守护进程

    on

    off

    用到可以开

    remote-fs.target

    远程挂载文件系统

    on

    off

    用到再开

    runlevel2.target

    运行级别 用于兼容6的SysV

    on

    on

    runlevel3.target

    --

    on

    on

    runlevel4.target

    --

    on

    on

  • 相关阅读:
    华为防火墙server-map、ALG
    华为防火墙来回路径不一致、智能选路随笔
    锐捷交换机修改openssl秘钥加密算法
    华为交换机板卡类型
    H3C交换机堆叠口、MAD检测口
    内网用户使用公网IP访问内部服务
    记一次SSL证书排错
    解析teambition文件为分享链接
    tomcat启动乱码如何解决?
    BOM与DOM的区别与联系
  • 原文地址:https://www.cnblogs.com/doublexi/p/9729921.html
Copyright © 2011-2022 走看看