频道栏目
首页 > 资讯 > Linux > 正文

linux 优化参考

17-05-20        来源:[db:作者]  
收藏   我要投稿

linux 优化参考

1 概述

本规范适用于某运营商使用Linux操作系统的设备。本规范明确了Linux操作系统在安全配置方面的基本要求,适用于所有的安全等级,可作为编制设备入网测试、安全验收、安全检查规范等文档的参考。

由于版本不同,配置操作有所不同,本规范以Redhat 6.6为例,给出参考配置操作。

2 上架规范

2.1 配置iLo管理口

配置项编号 OS_LIUNX_01
配置项说明 服务器有远程管理端口的,请配置管理ip,进行远程管理
配置项命令 根据服务器用户手册,自行配置iLo管理口
配置项要求 必须
检查/审计 通过ping命令和https协议访问ip,测试ip是否可用

2.2硬盘RAID配置

配置项编号 OS_LIUNX_02
配置项说明 服务器内置硬盘请配置raid,系统raid类型使用raid1,其他硬盘采用raid5
配置项命令 根据服务器用户手册,按要求自行配置
配置项要求 必须
检查/审计 #cat /proc/scsi/scsi //通用检查办法,检查model字段
备注 运行时修改:/proc/sys/fs/suid_dumpbale

2.3服务器安装导轨

配置项编号 OS_LIUNX_03
配置项说明 机架服务器使用导轨上架,方便后期维护管理
配置项命令 根据服务器用户手册,按要求自行配置
配置项要求 必须
检查/审计 检查服务器导轨插拔正常

2.4服务器插线要求

1、集成网卡服务器

业务网络要求使用eth0、eth1两网口做双网卡绑定。(个别应用默认顺序取第一个接口mac地址,要求使用前两个端口做业务网络接口)

2、非集成网卡服务器

要求充分考虑网卡与网卡、网口与网口冗余、充分考虑网卡间散热问题。

光口卡同理操作。

3 系统安装

3.1系统版本要求

新上系统全部使用rhel6.6 64位操作系统。

rhel-server-6.6-x86_64-dvd.iso3.52 GB

SHA-256: 16044cb7264f4bc0150f5b6f3f66936ccf2d36e0a4152c00d9236fb7dcae5f32

[root@rhel6-6 /]$ uname -a

Linux rhel6-6 2.6.32-504.el6.x86_64 #1 SMP Tue Sep 16 01:56:35 EDT 2014 x86_64 x86_64 x86_64 GNU/Linux

目前机房生产平台用的较多的是rhel5.7和rhel6.1。

有特殊要求的则仍使用rhel6.1。

3.2分区要求

使用LVM分区、文件系统格式采用ext4。

分区 大小
/boot 500M
swap 8-16G(物理内存2倍,最大64G。根据实际情况选择)
/ 50G
/data 剩余空间分配data目录
/tools 30G
/admin 30G

3.3安装包要求

安装系统当中要将GCC等所有的开发包和管理包打全,以防后期存在缺包现象。以下包全部安装

Administration Tools

Development Tools

System Tools

telnet ftp lrzsz (这三个包要求安装)

“系统管理”菜单:所有包全选安装

servers: "server platform" "system administration tools"

“开发”菜单:所有包全选安装

Development : "Additional Development" "Desktop platform Development" "Development tools" "server platform Development"

“语言支持”菜单:要求安装英文语言包、简体中文语言包!

3.4用户要求

根据主机运维工作的实际需求,要求系统初始用户包括以下用户。密码根据项目整体要求配置

root

root用户密码根据要求进行配置

pcloud

新创建用户且附加组为wheel

参考命令:

#useradd -G wheel pcloud

bestpay

新创建用户

#useradd bestpay

logview

新创建用户且附加组为bestpay

参考命令:

#useradd –G bestpay logview

分区赋权

在root用户根目录下按3.3小节分区要求,给分区重新赋权

/data:

chown –R bestpay:bestpay/data

chmod 0750/data

/tools:

chown –R bestpay:bestpay /tools

chmod 0700/tools

/admin:

chown –R bestpay:bestpay /admin

chmod 0750/admin

3.5时间同步要求

在root用户下执行crontab –e

*/5* * * * /usr/sbin/ntpdate 172.18.70.10 172.18.70.20

15 7 * * * /sbin/hwclock –w

3.6字符集

使用系统缺省字符集配置。系统缺省字符集为en_US.UTF-8;有特殊需求,另行配置。修改字符集可以在文件/etc/sysconfig/i18n里改。

3.7网卡绑定

将服务器网卡两两做绑定,网卡绑定为主备模式。服务器网卡要求使用第一块网卡1口和第二块网卡1口;第一块网卡2口和第二块网卡2口;即避免由于单块网卡故障导致的业务中断,可以冗余。

以下为配置示例:

配置虚拟网卡:

[root@rhel6 network-scripts]# cp ifcfg-eth0 ifcfg-bond0

[root@rhel6 network-scripts]# vi ifcfg-bond0

DEVICE=bond0

BOOTPROTO=none

IPADDR=192.168.1.100

NETMASK=255.255.255.0

ONBOOT=yes

TAPE=Ethernet

GATEWAY=192.168.1.254

USERCTL=no

配置真实网卡:

[root@rhel6 network-scripts]# vi ifcfg-eth0

DEVICE=eth0

BOOTPROTO=none

ONBOOT=yes

USERCTL=no

SLAVE=yes ----写上就不用加开机启动

MASTER=bond0 ----写上就不用加开机启动

[root@rhel6 network-scripts]# vi ifcfg-eth1

DEVICE=eth0

BOOTPROTO=none

ONBOOT=yes

USERCTL=no

SLAVE=yes ----写上就不用加开机启动

MASTER=bond0----写上就不用加开机启动

加载模块让系统支持:

[root@rhel6 ~]vi/etc/modprobe.d/dist.conf

alias bond0 bonding

options bond0 miimon=100 mode=1-----模式1为主备

重启网络并检查配置:

service network restart

lsmod | grep bond

cat/proc/net/bonding/bond0

3.8配置snmp

参照其他平台,共同提名不能使用public,长度必须8位以上,至少三种(大小写字母,符号,特殊符号)结合,配置snmp服务器并指向采集服务器,采集服务器ip为172.18.55.65、172.18.55.66、172.18.55.67

ITSM二期要求新增采集地址:172.18.0.0/24;团体字为Itsm2014roJK!

以下为配置示例:

检查系统是否安装snmp服务

[root@rhel6 ~]# rpm -qa| grep snmp

net-snmp-devel-5.5-31.el6.x86_64

net-snmp-utils-5.5-31.el6.x86_64

net-snmp-5.5-31.el6.x86_64

net-snmp-libs-5.5-31.el6.x86_64

net-snmp-python-5.5-31.el6.x86_64

net-snmp-perl-5.5-31.el6.x86_64SNMP

若无以上包,则安装SNMP服务

1.配置好本地yum服务,使用yum安装

yum install -y net-snmp*

2.配置SNMP服务开机启动

#service snmpd start

#chkconfig snmpd on

#chkconfig --list | grep snmpd 查看开机启动设置是否成功

snmpd 0:关闭 1:关闭 2:启用 3:启用 4:启用 5:启用 6:关闭

验证SNMP服务

1.使用snmpwalk获取主机名

[root@rhel6 ~]# snmpwalk -v 2c -c public localhost sysName.0

SNMPv2-MIB::sysName.0 = STRING: rhel6.1

#snmpwalk用法

snmpwalk -v 1|2c|3(代表SNMP版本) -c IP地址 OID(对象标示符)

2.使用snmptranslate命令,检查snmp工具是否可以使用

# snmptranslate -To | head

.1.3

.1.3.6

.1.3.6.1

.1.3.6.1.1

.1.3.6.1.2

.1.3.6.1.2.1

.1.3.6.1.2.1.1

.1.3.6.1.2.1.1.1

.1.3.6.1.2.1.1.2

.1.3.6.1.2.1.1.3

查出了部分oid,则表示snmp工具可以正常使用

配置SNMP服务

配置项包括但不限于:

community string

sec.name

sec.model

查看设备节点权限“view all”;被允许查看的sec.model组

指定检测的Process checks

disk checks

Executables/scripts

load average checks

3.9连存储的服务器

必须使用双hba卡;

确保连接到两个控制器的HBA卡/接口冗余;

单个HBA卡故障,或单个HBA卡某个接口故障,都满足冗余

3.10多路径软件

1、多路径配置要求

多路径必须绑定别名;

设置多路径服务为开机启动;

屏蔽掉本地磁盘,本地磁盘不做聚合;

结合数据库规范等配置实施

版本系统自带multipath即可,要求做盘符别名绑定。比如要确保数据库的两个节点扫描到的盘符一致。

注意在blacklist里面过滤本地磁盘!blacklist里面需要有以下参数:

blacklist {

devnode "^(ram|raw|loop|fd|md|dm-|sr|scd|st)[0-9]*"

devnode "^hd[a-z]"

devnode "^sd[a-d]" 过滤条件视实际情况,防止过滤掉多路径块设备!

}

2、多路径安装及配置参数简介

检查multipath是否安装成功:

#lsmod |grep dm_multipath

如果输出没有,则进行安装

#yum –y install device-mapper device-mapper-multipath

查看多路径状态查看模块是否加载成功

[root@rhel6 ~]# multipath -ll

Jan 01 02:36:12 | /etc/multipath.conf does not exist, blacklisting all devices. --配置文件没有

Jan 01 02:36:12 | A sample multipath.conf file is located at

Jan 01 02:36:12 | /usr/share/doc/device-mapper-multipath-0.4.9/multipath.conf

Jan 01 02:36:12 | You can run /sbin/mpathconf to create or modify /etc/multipath.conf

Jan 01 02:36:12 | DM multipath kernel driver not loaded --DM模块没加载

如果模块没有加载成功请使用下列命初始化DM,或重启系统

[root@rhel6 ~]# modprobe dm-multipath

[root@rhel6 ~]# modprobe dm-round-robin

[root@rhel6 ~]# service multipathd start

正在启动守护进程multipathd:

查看系统是否安装多路径

[root@rhel6 mapper]# rpm -qa | grep mapper

device-mapper-libs-1.02.62-3.el6.x86_64

device-mapper-multipath-libs-0.4.9-41.el6.x86_64

device-mapper-multipath-0.4.9-41.el6.x86_64

device-mapper-event-libs-1.02.62-3.el6.x86_64

device-mapper-1.02.62-3.el6.x86_64

device-mapper-event-1.02.62-3.el6.x86_64

multipath.conf配置说明

接下来的工作就是要编辑/etc/multipath.conf的配置文件

multipath.conf主要包括defaults、 blacklist、multipaths、devices三部份的配置

defaults是全局配置参数

blacklist用来过滤不需绑定的设备

multipaths用来绑定别名

devices用来定义存储厂商和自定义规则

blacklist配置

blacklist {

devnode "^(ram|raw|loop|fd|md|dm-|sr|scd|st)[0-9]*"

devnode "^hd[a-z]"

devnode "^sd[a-d]"

}

Multipaths部分配置multipaths和devices两部份的配置。

multipaths {

multipath {

wwid **************** #此值multipath -ll可以获取

alias data1 #映射后的别名,可以随便取

}

}

Devices部分配置

devices {

device {

vendor "iSCSI-Enterprise" #厂商名称

product "Virtual disk" #产品型号

path_grouping_policy multibus #默认的路径组策略

getuid_callout "/sbin/scsi_id -g -u -s /block/%n" #获得唯一设备号

path_checker readsector0 #决定路径状态的方法

path_selector "round-robin 0" #选择那条路径进行下一个IO操作的方法

failback immediate #故障恢复的模式有immediate和failover两种

no_path_retry queue #在disable queue之前系统尝试使用失效路径的次数的数值

rr_min_io 100 #在当前的用户组中,在切换到另外一条路径之前的IO请求的数目

}

}

3、多路径配置范例

1)IBM存储DS8000系列官方推荐配置

defaults {

user_friendly_names yes

}

blacklist {

devnode "^hd[a-z]"

devnode "^(ram|raw|loop|fd|md|dm-|sr|scd|st)[0-9]*"

devnode "^cciss.*"

}

devices {

device {

vendor "IBM"

product "2107900"

path_grouping_policy multibus

getuid_callout "/lib/udev/scsi_id --whitelisted --device=/dev/%n"

path_selector "round-robin 0"

path_checker tur

features "1 queue_if_no_path"

hardware_handler "0"

prio const

rr_weight uniform

rr_min_io 1000

}

}

multipaths {

multipath {

wwid 3600a098038303553495d47*******

aliasdata1

}

}

2)IBM存储DS4800系列官方推荐配置

defaults {

user_friendly_names yes

}

blacklist {

devnode "^hd[a-z]"

devnode "^(ram|raw|loop|fd|md|dm-|sr|scd|st)[0-9]*"

devnode "^cciss.*"

}

devices {

device {

vendor "IBM"

product "1815"

path_grouping_policy group_by_prio

getuid_callout "/sbin/scsi_id -g -u -s /block/%n"

path_selector "round-robin 0"

path_checker rdac

features "0"

hardware_handler "1 rdac"

prio_callout "/sbin/mpath_prio_rdac /dev/%n"

failback immediate

rr_weight uniform

no_path_retry queue

rr_min_io 1000

}

}

multipaths {

multipath {

wwid 3600a098038303553495d47*******

aliasdata1

}

}

3)NetApp存储官方推荐配置

defaults {

user_friendly_names yes

max_fds max

flush_on_last_del yes

queue_without_daemon no

}

blacklist {

devnode "^hd[a-z]"

devnode "^(ram|raw|loop|fd|md|dm-|sr|scd|st)[0-9]*"

devnode "^cciss.*"

}

devices {

device {

vendor "NETAPP"

product "LUN"

path_grouping_policy group_by_prio

features "3 queue_if_no_path pg_init_retries 50"

prio "alua"

path_checker tur

failback immediate

path_selector "round-robin 0"

hardware_handler "1 alua"

rr_weight uniform

rr_min_io 128

getuid_callout "/lib/udev/scsi_id -g -u -d /dev/%n"

}

}

multipaths {

multipath {

wwid 3600a098038303553495d47*******

aliasdata1

}

}

3.11udev配置(块设备管理、ASM组)

以下只针对数据库服务器,或有多路径需求的服务器,否则可跳过本小节。

1、配置注意事项

multipath配置中将本地磁盘或SCSI设备加入黑名单blacklist

multipath第一次配置完成后重启操作系统;

应用上线后使用multipath –v2、multipath –ll、service multipath reload命令执行初始化扫描检查

udev第一次配置完成后,执行start_udev扫盘操作

应用上线后使用以下命令扫盘

# udevadm control --reload-rules

# udevadm trigger --type=devices --action=change

2、将LUN加载到主机

将刚刚创建的几个LUN加载到数据库的主机组里,映射,后台同步。[page]

分别在节点1和节点2进行如下操作:

先查看机器有几块HBA卡

# ls /sys/class/fc_host/

host1 host2 host3

写入"---"到“scan”文件,有几张HBA卡就写几次。

# echo "- - -" > /sys/class/scsi_host/host1/scan

# echo "- - -" > /sys/class/scsi_host/host2/scan

# echo "- - -" > /sys/class/scsi_host/host3/scan

然后就可以通过如下命令查看新增的磁盘

#fdisk –l

3、使用UDEV绑定磁盘

以root用户登录数据库服务器节点1,修改以下文件:

vi/etc/udev/rules.d/99-oracle.rules

添加以下内容:

KERNEL=="dm-*", PROGRAM="scsi_id --page=0x83 --whitelisted --device=/dev/%k",RESULT=="3600a098038303553495d474c457a4c62", OWNER:="grid", GROUP:="asmadmin"

KERNEL=="dm-*", PROGRAM="scsi_id --page=0x83 --whitelisted --device=/dev/%k",RESULT=="3600a098038303553495d474c457a4c4c", OWNER:="grid", GROUP:="asmadmin"

……

有几块盘,添加几条,RESULT结果是WWWN号

以root用户登录数据库服务器节点2,修改以下文件:

vi/etc/udev/rules.d/99-oracle.rules

添加以下内容:

KERNEL=="dm-*", PROGRAM="scsi_id --page=0x83 --whitelisted --device=/dev/%k",RESULT=="3600a098038303553495d474c457a4c62", OWNER:="grid", GROUP:="asmadmin"

KERNEL=="dm-*", PROGRAM="scsi_id --page=0x83 --whitelisted --device=/dev/%k",RESULT=="3600a098038303553495d474c457a4c4c", OWNER:="grid", GROUP:="asmadmin"

……

有几块盘,添加几条,RESULT结果是WWWN号

4、查看磁盘所有者及权限

通过udev相关命令重新扫描硬件改动:(此处谨慎操作,注意数据库状态)

# udevadm control --reload-rules

# udevadm trigger --type=devices --action=change

在/dev/目录下查看存储磁盘asm-disk$i

#cd /dev/

#ll |grep asm-disk

注意磁盘权限跟进数据库安装要求进行配置,一般权限为grid:grid

后续查看ASM空间情况、进行ASM相关配置。

3.12CVE漏洞软件包版本

请务必安装以下对应无漏洞版本软件包。

Bash版本要求:

Red Hat Enterprise Linux 6bash-4.1.2-15.el6_5.2

Red Hat Enterprise Linux 5bash-3.2-33.el5_11.4

Red Hat Enterprise Linux 4bash-3.0-27.el4.4

Red Hat Enterprise Linux 7bash-4.2.45-5.el7_0.4

OpenSSH版本要求:

Red Hat Enterprise Linux 6openssh-6.9p1

Red Hat Enterprise Linux 5openssh-6.9p1

OpenSSL版本要求:

Red Hat Enterprise Linux 6 affectedopenssl-1.0.2d

Red Hat Enterprise Linux 5 not affectedopenssl-1.0.2d

Glibc漏洞修复版本要求:

Red Hat Enterprise Linux Server 5glibc-2.5-123.el5_11.1.x86_64

Red Hat Enterprise Linux Server 6glibc-2.12-1.149.el6_6.5.x86_64

4 补丁

4.1系统补丁(仅供参考)

如厂商对安装的Linux操作系统版本有安全公告的,需进行对应的补丁升级。

要求及时安装系统补丁。更新补丁前,要求先在测试系统上对补丁进行可用性和兼容性验证。

系统补丁安装方法为(以下示例若无特别说明,均以RedHat Linux为例):使用up2date命令自动升级或在ftp://update.redhat.com下载对应版本补丁手工单独安装。对于企业版5及之后的版本,可以直接使用yum工具进行系统补丁升级:

yum update

4.2其他应用补丁(仅供参考)

除Linux开发商官方提供的系统补丁之外,基于Linux系统开发的服务和应用(如APACHE、PHP、OPENSSL、MYSQL等)也必须安装最新的安全补丁。

以RedHat Linux为例,具体安装方法为:首先确认机器上安装了gcc及必要的库文件。然后再应用官方网站下载对应的源代码包,如 *.tar.gz,并解压:

tar zxfv *.tar.gz

根据使用情况对编译配置进行修改,或直接采用默认配置。

cd *

./configure

进行编译和安装:

make

make install

注意:补丁更新要慎重,可能出现硬件不兼容、或者影响当前应用系统的情况。安装补丁前,应该在测试机上进行测试。

5 主机名、账号和口令安全配置基线

5.1主机命名规范

为区分不同主机的不同功能,我们对主机名进行统一命名,命名方式按以下规则:

主机名=平台名-应用服务器名-IP后两位;例如,个帐nginx服务器10.168.168.82,主机名应该设置为:grzh-nginx-168-82

其中平台名按照平台的全程缩写,如:个人账户=grzh 应用服务器按照实际应用起名,如:apache=apache IP即ip的后两位

下面举例个人账户平台nginx应用服务器为例,假设其内网IP为10.168.168.82那么举例如下:

修改主机名,及对应的IP运行如下命令

echo“10.168.168.82 grzh-nginx-168-82”>> /etc/hosts

生效当前配置运行如下命令

hostname grzh-nginx-168-82

对/etc/sysconfig/network、/etc/hosts都要进行修改

注:主机命名中,只能包含字母、数字、连字符(‘-’),并且名称不能以连字符结尾。“连字符”英文名称“hyphen”,不是中划线,请务必区别。

5.2账号安全控制要求

系统中的临时测试账号、过期无用账号等必须被删除或锁定。以RedHat Linux为例,设置方法如下:

锁定用户:#usermod -L $name

删除用户: userdel $name

需要锁定的用户:games nobody

5.3口令策略配置要求

要求设置口令策略以提高系统的安全性。例如要将口令策略设置为:非root用户强制在90天内更改口令、之后的10天之内禁止更改口令、用户在口令过期的28天前接受到系统的提示、口令的最小长度为8位。以RedHat Linux为例,可在/etc/login.defs文件中进行如下设置:

#vi /etc/login.def

PASS_MAX_DAYS 90

PASS_MIN_DAYS 10

PASS_MIN_LEN 8

PASS_WARN_AGE 28

5.4口令复杂度和密码锁定策略配置要求

要求口令输错6次锁定300秒,设定口令输错三次断开连接,最少8位,最少1位小写字母,最少1位数字,最少一位特殊符号。以RedHat Linux为例,在/etc/pam.d/system-auth进行如下设置:(redhat5.1以上版本支持 pam_tally2.so,其他版本使用pam_tally.so)

# vi /etc/pam.d/system-auth

auth required pam_tally2.so deny=6 unlock_time=300

password requisite pam_cracklib.so try_first_pass retry=3 minlen=8

lcredit=-1 dcredit =-1 ocredit =-1

5.5口令重复次数限制配置要求

要求口令重复不能超过5次。以RedHat Linux为例,在/etc/pam.d/system-auth进行如下设置:

# vi /etc/pam.d/system-auth

password sufficient pam_unix.so sha512 shadow nullok

try_first_pass use_authtok remember=5

5.6设置登录Banner

设置系统登录Banner

# echo "Authorized users only . All activity may be monitored and reported" > /etc/motd

5.7设置openssh登陆Banner

通过配置文件配置openssh的Banner

步骤 1 执行如下命令创建ssh banner信息文件:

#touch /etc/sshbanner

#chown bin:bin /etc/sshbanner

#chmod 644 /etc/sshbanner

#echo "Authorized users only . All activity may be monitored and reported" > /etc/sshbanner

#echo "Banner /etc/sshbanner" > /etc/ssh/sshd_config

#service sshd

5.8Pam的设置

指定wheel组用户可以使用su命令

vi /etc/pam.d/su 可发看到如下内容

#auth required pam_wheel.so use_uid

#auth required /lib/security/$ISA/pam_wheel.so use_uid

去掉前面的注释符“#”号。

若没有时可以添加,但注意顺序。请在

# Uncomment the following line to require a user to be in the "wheel" group.

说明下的首行添加。

5.9root登录策略的配置要求

禁止直接使用root登陆,必须先以普通用户pcloud登录,然后再su成root。

查看/etc/securetty 中包含有console参数

(确保已正确配置了/etc/pam.d/su)

将用户pcloud加入wheel组:

Usermod -G wheel pcloud

#usermod -G wheel pcloud

id pcloud

uid=504(pcloud) gid=502(pcloud) groups=502(pcloud),10(wheel)

5.10root的环境变量基线

root环境变量基线设置要求如表所示:

6 网络与服务安全配置标准

所有生产系统,不允许用管理员权限root等用户起应用程序。常见的apache等中间件等所有服务请新建立普通用户启动进程。

6.1最小化启动服务

1、关闭防火墙、selinux

执行:chkconfig --level 12345 iptables off

chkconfig --level 12345 ip6tables off

编辑/etc/selinux/config,修改为“SELINUX=disabled”禁用状态

2、Xinetd服务(可选)

如果xinetd服务中的服务,都不需要开放,则可以直接关闭xinetd服务。

# chckconfig --level 12345 xinetd off

3、关闭邮件服务

1)如果系统不需要作为邮件服务器,并不需要向外面发邮件,可以直接关闭邮件服务。

# chkconfig --level 12345 sendmail off

4、关闭图形登录服务(X Windows)

在不需要图形环境进行登录和操作的情况下,要求关闭X Windows。

# vi /etc/inittab

id:5:initdedault //修改为 id:3:initdedault

配置文件访问权限

chown root:root /etc/inittab

chmod 0600 /ect/inittab

5、关闭Xfont服务器服务

如果关闭了X Windows服务,则X font服务器服务也应该进行关闭。

chkconfig xfs off

6、关闭其他默认启动服务

系统默认会启动很多不必要的服务,有可能造成安全隐患。建议关闭以下不必要的服务:

apmd canna FreeWnn gpm hpoj innd irda isdn kdcrotate lvs mars-nwe oki4daemon privoxy rstatd rusersd rwalld rwhod spamassassin wine nfs nfslock autofs ypbind ypserv yppasswdd portmap smb netfs lpd apache httpd tux snmpd named postgresql mysqld webmin kudzu squid cupskrb5-telnetekrb5-telnet

chkconfig --level 12345 servername off

在关闭上述服务后,应同时对这些服务在系统中的使用的账号(如rpc、rpcuser、lp、apache、http、httpd、named、dns、mysql、postgres、squid等)予以锁定或删除。

6.2最小化xinetd网络服务

1、停止默认服务

要求禁止以下Xinetd默认服务:

chargen chargen-udp cups-lpd daytime daytime-udp echo echo-udp eklogin finger gssftp imap imaps ipop2 ipop3 krb5-telnet klogin kshell ktalk ntalk pop3s rexec rlogin rsh rsync servers services


2、其他

对于xinet必须开放的服务,应该注意服务软件的升级和安全配置,并推荐使用SSH和SSL对原明文的服务进行替换。

7 文件与目录安全配置

7.1临时目录权限配置标准

临时目录/tmp、/var/tmp必须包含粘置位,以避免普通用户随意删除由其他用户创建的文件。

# chmod +t /tmp

# chmod +t /var/tmp

7.2重要文件和目录权限配置标准

在Linux系统中,/usr/bin、/bin、/sbin目录为可执行文件目录,/etc目录为系统配置目录,包括账号文件、系统配置、网络配置文件等,这些目录和文件相对重要。重要文件及目录的权限配置标准必须按照表4-1进行配置。

7.3umask配置标准

umask命令用于设置新创建文件的权限掩码。要求编辑/etc/profile文件,设置umask为027。

7.4core dump状态

执行:more /etc/security/limits.conf 检查是否包含下列项:

* soft core 0

* hard core 0

建议:关闭系统的core dump

core dump中可能包括系统信息,易被入侵者利用

7.5ssh的安全设置

vi /etc/ssh/sshd_config 设定下列选项

PermitRootLogin no 禁止root用户直接登录

UseDNS no禁用解析

/etc/init.d/sshd restart 设置完重启sshd服务

7.6bash历史记录

为了安全的记录登陆用户所使用的命令内容和时间,请在/etc/profile下添加如下脚本:

TMOUT=300

HISTSIZE=2000 此行在原有配置上修改数字便可

HISTTIMEFORMAT="%F-%T: "

为使全局变量生效,运行如下命令 source /etc/profile

7.7其他注意事项

如果服务器安装有ftp,请限制ftp用户的根目录,不允许匿名用户登录ftp服务器,不允许root登录ftp服务器,将ftp用户的bash改成false或nologin,将ftp的登录banner改成非系统默认。

关闭本地的iptables和selinux

8 系统Banner的配置

要求修改系统banner,以避免泄漏操作系统名称、版本号、主机名称等,并且给出登陆告警信息。

1.修改/etc/issue文件,加入:

ATTENTION:You have logged onto a secured server. ONLY Authorized users can access.

2.修改/etc/issue.net文件,加入:

ATTENTION:You have logged onto a secured server. ONLY Authorized users can access.

9防病毒软件安装

为了服务器的安装,安装完统一安装防病毒软件具体安装方法见《上海某运营商 SAV for Linux 客户端安装配置维护手册》

防病毒软件介质通过ftp下载:

地址: 端口:

用户名: 密钥:

10ITSM监控agent安装

为了实现对主机运行状态的监控,需要安装ITSM监控代理。通过FTP服务器上传安装文件“nimldr.tar.Z”至服务器/tmp目录下。具体操作步骤如下:

chmod +x nimldr.tar #增加可执行权限

./nimldr #执行安装

在安装的过程中须要注意以下几点:

安装需要使用root权限。

安装过程中需要输入的HUB的 IP是:172.18.138.41

安装中需要输入的服务器账号和密码是:administrator/ ibCAadmin980

回退操作:

卸载时运行命令:

Turn off all NMS processes: /opt/Nimsoft/bin/niminit stop

Remove the robot: /opt/Nimsoft/bin/inst_init.sh remove

删除安装目录/opt/nimsoft 目录下的所有文件

注:

软件安装目录是:/opt/Nimsoft

成功安装后,显示:Cleaning up temporary files

Finished Robot installation!

11内核参数优化

1、调整以下内核参数,以提高系统安全性:

设置tcp_max_syn_backlog,以限定SYN队列的长度

设置rp_filter为1,打开反向路径过滤功能,防止ip地址欺骗

设置accept_source_route为0,禁止包含源路由的ip包

设置accept_redirects为0,禁止接收路由重定向报文,防止路由表被恶意更改

设置secure_redirects为1,只接受来自网关的“重定向”icmp报文

配置方法为:

在系统不作为不同网络之间的防火墙或网关时,要求进行如下设置。

设置ip_forward为0,禁止ip转发功能

设置send_redirects为0,禁止接收转发重定向报文

配置方法如下:

以上描述的实际操作,只需在/etc/sysctl.conf文件加入如下内容便可:

net.ipv4.tcp_max_syn_backlog = 4096

net.ipv4.conf.all.rp_filter = 1

net.ipv4.conf.all.accept_redirects = 0

net.ipv4.conf.all.secure_redirects = 0

net.ipv4.conf.default.secure_redirects = 0

net.ipv4.conf.default.send_redirects = 0

net.ipv4.conf.all.send_redirects = 0

net.ipv4.tcp_tw_reuse = 1

net.ipv4.tcp_tw_recycle = 1

net.ipv4.ip_local_port_range = 1024 65535

net.ipv4.tcp_keepalive_time = 1800

net.ipv4.tcp_keepalive_probes = 5

net.ipv4.tcp_keepalive_intvl = 30

2、调整文件最大打开数、进程数

vi /etc/security/limits.conf(在最后添加如下参数)

* soft nproc 102400

* hard nproc 102400

* soft nofile 102400

* hard nofile 102400

vi /etc/security/limits.d/90-nproc.conf(文件做以下修改)

* soft nproc 102400

* hard nproc 102400

* soft nofile 102400

* hard nofile 102400

root soft nproc unlimited

为了使用户下次登录时生效,我们必须在用户登录时调用pam_limits.so模块。

#vi /proc/sys/fs/file-max

数字大于limits.conf里面设置的值

vi /etc/pam.d/login

在最后加入

session required pam_limits.so #这样用户下次登录就生效了,需重启应用

12syslog日志的配置

1.syslog的基线配置要求如表所示:

2.要求将日志输出至日志服务器,或者至少输出至本地文件中。

13重启服务器

在服务器第一次配置,对以上初始配置操作完成后,请操作人员务必重启一次服务器!!!

系统重启完成后确认用户可正常登陆,网络可正常访问。

相关TAG标签
上一篇:js闭包
下一篇:jQuery选择器之层级选择器
相关文章
图文推荐

关于我们 | 联系我们 | 广告服务 | 投资合作 | 版权申明 | 在线帮助 | 网站地图 | 作品发布 | Vip技术培训 | 举报中心

版权所有: 红黑联盟--致力于做实用的IT技术学习网站