Linux系统安装和安全配置技术规范管理
一、概述
1、目的及意义
为了加强所有Linux操作系统安装配置和安全管理, 使新装Linux系统更加科学化、规范化和置于更加安全的访问控制模式之下,特制定本规范,以备日后所有的新装Linux系统遵照并执行。
2、适用范围
适用于所有新装的Linux操作系统,日常运行的测试开发主机系统和生产主机系统,也可作为定期的系统安全检查标准流程。
二、安装前期准备
1、服务器配置
若服务器是物理机,则至少需要两块硬盘做raid1以保证系统的可用性,两个物理网卡以保证网络高可用。若是虚拟机,宿主机也需要符合此条件
2、系统版本选择
作为生产机,要求使用Red Hat Linux Enterprise 6.8或更高版本
三、系统的安装
按照安装提示的步骤一步步走下去,语言选择english,时区选上海,另外有几点需要注意。
1、主机命名规范
为了更好的分辨服务器的作用,主机按照以下规范命名
环境用途+期数 +业务类型 +服务功能 +数字
1)环境用途:P(正式环境),D(开发环境),T(测试环境)
2)期数:2 (t2)
3)业务类型:FAB/MOD/RPT/SPC/EDA/OEE……
4)服务功能:AP/DB
5)序号:01、02、03…
如:p2rvdap01(t2生产环境的RVD应用01号机)
d2moddb01(t2模组厂的数据库开发环境01号机)
2、磁盘划分
device mount point size
sda sda1 /boot 200M
lvm lv_root / 100G
lv_swap mem*1.5
lv_home /home 100G
默认使用以上分区,划分完系统启动分区/boot(某些服务器会多一个/boot/efi)后,将剩下的空间全部配置成LVM(Logical Volume Manager)。swap为内存交换空间,一般为内存的1.5倍,如果物理内存足够大,则可适当减少。根和家目录分完后,如果用户没有特别需求,则将剩下的空间保留,以便日后新建目录或扩容现有目录。
3、安装包选择
安装时手动来选择一些包,除了系统默认的包以外,再勾选以下的扩展包:
1)Base System:Compatibility libraries
2)Desktops:Desktop,Desktop Debugging and Performan,Desktop platform,Fonts,General Purpose Desktop,Graphical Administration Tools,X Windows
3)Development:Development tools(里面的rpm包要全选)
四、系统基础配置
1、安全配置
公司内部网络有防火墙等安全设备,所以要让服务器对外提供服务,则先关闭本地防火墙和selinux。
1)关闭防火墙:service iptables stop
2)关闭selinux:临时关闭用setenforce 0;永久关闭修改配置文件/etc/selinux/config,修改SELINUX=disabled。
2、网络配置
前面提到物理机需要至少两个网卡,分别接在两个不同的核心交换机上,以提高网络高可用性,在系统里需要把两个网卡做绑定,并选用mode=1(主备)的绑定模式。
1)首先关闭系统的NetworkManager服务,并且关闭开机自启动
service NetworkManager stop
chkconfig NetworkManager off
2)配置网络
在/etc/sysconfig/network-scripts目录下, ifcfg-eth0和ifcfg-eth1(根据具体服务器和网口位置而定)文件修改一下参数:
ONBOOT=yes
BOOTPROTO=none
NM_CONTROLLED=no
MASTER=bond0
SLAVE=yes
再创建文件ifcfg-bond0以手动配置IP地址
3、开机启动等级设置
安装时选择了桌面系统,但是一般情况下用不上,而且会消耗系统资源,所以将开机启动等级设置成无桌面的文本命令行界面。
编辑配置文件/etc/inittab,将最后一行修改为id:3:initdefault:
4、创建普通账号
root账号权限太大,故创建几个普通账号(csotdsa、perfmon)工日常使用
useradd -m csotsa
echo "Hp1nvent" | passwd --stdin csotsa
useradd -m perfmon
echo "Hp1nvent" | passwd --stdin perfmon
五、常用工具部署
为方便管理,安装一些插件及监控软件。
软件位置:\\oafile\15.信息中心\02.IT规划部\01 基础架构\ISO\linux\linux_6.x_tools\
1、工具安装
1)htop、banner
使用命令rpm -ivh banner-1.3.3-1.el6.x86_64.rpm htop-1.0.3-1.el6.rf.x86_64.rpm
htop是top命令的升级版,banner是打印大型字的工具
2)ipmitool:智能平台管理接口,使硬件管理具备“智能化”的通用接口
解压:tar -xvf ipmitool-1.8.15.tar.bz2
进入解压后的目录,运行命令./configure;make;make install
3)netdata:Linux 性能实时监测工具
解压:tar -xvf netdata-1.4.0.tar.gz
进入目录后运行命令./netdata-installer.sh
2、工具配置
1)yum源设置
编辑配置文件/etc/yum.repos.d /rhel-source.repo
修改yum Server :baseurl=网络)
使生效并跳过验证:
enabled=1
gpgcheck=0
2)nmon部署
nmon是Linux 性能专家提供监视和分析性能数据的功能
上传nmon_x86_64_rhel6和nmon_daily.sh至服务器
修改权限并移动:
chmod a+x nmon_x86_64_rhel6
mv -f nmon_x86_64_rhel6 /bin/nmon
chmod a+x nmon_daily.sh
cp nmon_daily.sh /home/perfmon/scripts
添加计划任务:
crontab -u perfmon -e
#daily OS performance data collecting
0 0 * * * /home/perfmon/scripts/nmon_daily.sh
3)编辑profile文件
在/etc/profile文件末尾添加:
# Set up shell command history env:
HISTDIR=/home/.sh_history
AUDIDIR=/var/adm/.sh_history
if [ ! -d $HISTDIR ]
then
mkdir -p $HISTDIR
chmod 777 $HISTDIR
fi
if [ ! -d $HISTDIR/${LOGNAME} ]
then
mkdir -p $HISTDIR/${LOGNAME}
chmod 700 $HISTDIR/${LOGNAME}
fi
if [ ! -d $AUDIDIR ]
then
mkdir -p $AUDIDIR
chmod 777 $AUDIDIR
fi
if [ ! -d $AUDIDIR/${LOGNAME} ]
then
mkdir -p $AUDIDIR/${LOGNAME}
chmod 700 $AUDIDIR/${LOGNAME}
fi
RHOST=`who -um | awk '{print $7}' | awk -F'[(,)]' '{print $2}'`
export HISTSIZE=10000
export HISTTIMEFORMAT="%F %T ${LOGNAME} "
export HISTFILE=$HISTDIR/${LOGNAME}/sh_history.`date +'%Y%m%d-%H%M%S'`_${LOGNAME}.${RHOST}.dat
trap "history > $AUDIDIR/${LOGNAME}/sh_logout.`date +'%Y%m%d-%H%M%S'`_${LOGNAME}.${RHOST}.dat;chmod 700 $AUDIDIR/${LOGNAME}/*.dat;echo 'logout'" 0
export HISTFILE=$HISTDIR/${LOGNAME}/sh_history.`date +'%Y%m%d-%H%M%S'`_${LOGNAME}.${RHOST}.dat
readonly HISTFILE
readonly HISTFILESIZE
readonly HISTSIZE
readonly HISTCMD
readonly HISTCONTROL
readonly HISTIGNORE
#Display banner
clear
echo
echo ================================================================================
echo -e "\033[41;37m WARNING:\033[0m This is a Confidential system of CSOT, All your activities will be"
echo " logged in audit trail."
echo -e "\033[41;37m WARNING:\033[0m YOU ARE ${LOGNAME} !! Please be careful and pay attention to operating."
echo ================================================================================
banner $HOSTNAME