本文根据讲课笔记整理

1、如何最小化安装系统

精简安装策略:

仅安装需要的,按需安装、不用不装

开发包、基本网络包、基本应用包


Centos6.x下的设置:

Linux运维经验分享与思路_第1张图片


Centos7.x下的设置:

Linux运维经验分享与思路_第2张图片


2、网络设置问题与经验

1)、服务器IP地址配置

/etc/sysconfig/network-scripts/ ifcfg-eth0/1/2….

重启网卡命令:

service network restart或者 /etc/init.d/network restart

2)、网关/主机名配置

/etc/sysconfig/network

3)、DNS配置

/etc/resolv.conf

4)、HOSTS文件配置

/etc/hosts


3、selinux, iptables策略设置

1)、selinux配置(如何关闭selinux)

cat  /etc/selinux/config

SELINUX的状态:

enforcing 开启状态

permissive 提醒的状态 

disabled 关闭状态

命令行关闭:setenforce  0

2)、iptables配置

/etc/sysconfig/iptables

推荐配置:

iptables -P INPUT ACCEPT

iptables -F


iptables -A INPUT -p tcp -m tcp --dport 80 -j ACCEPT

iptables -A INPUT -s 1.1.1.0/24  -p tcp -m tcp --dport 22 -j ACCEPT

iptables -A INPUT -s 2.2.2.2/32  -p tcp -m tcp --dport 22 -j ACCEPT

iptables -A INPUT -i eth1 -j ACCEPT

iptables -A INPUT -i lo -j ACCEPT 

iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT

iptables -A INPUT -p tcp -m tcp --tcp-flags FIN,SYN,RST,PSH,ACK,URG NONE -j DROP

iptables -A INPUT -p tcp -m tcp --tcp-flags FIN,SYN FIN,SYN -j DROP

iptables -A INPUT -p tcp -m tcp --tcp-flags SYN,RST SYN,RST -j DROP

iptables -A INPUT -p tcp -m tcp --tcp-flags FIN,RST FIN,RST -j DROP

iptables -A INPUT -p tcp -m tcp --tcp-flags FIN,ACK FIN -j DROP

iptables -A INPUT -p tcp -m tcp --tcp-flags PSH,ACK PSH -j DROP

iptables -A INPUT -p tcp -m tcp --tcp-flags ACK,URG URG -j DROP


iptables -P INPUT DROP

iptables -P OUTPUT ACCEPT

iptables -P FORWARD DROP


4、ssh登录系统策略

1)、登录策略

备份:cp /etc/ssh/sshd_config sshd_config_bak(运维必备守则)

vi /etc/ssh/sshd_config

#SSH链接默认端口,修改默认22端口为1万以上端口号,避免被扫描和***。

Port 22221

#不使用DNS反查,可提高ssh连接速度

UseDNS no

#关闭GSSAPI验证,可提高ssh连接速度

GSSAPIAuthentication no

#禁止root账号登陆

PermitRootLogin no

2)用户权限策略

禁止root用户远程登录系统,授权仅普通用户登录系统,需要管理员权限执行sudo即可,避免root用户之间登录。

如何授权用户登录与sudo设定?

/etc/sudoers文件

=

常见配置:

martin    ALL=(root)     NOPASSWD: /bin/mv, /bin/chmod 


5、更新yum源及必要软件安装

常用的几个yum源

epel源:https://fedoraproject.org/wiki/EPEL

repoforge源:http://repoforge.org/use/

6、定时自动更新服务器时间

1、通过crontab设置时间同步

推荐时间服务器:ntp.sjtu.edu.cn

/usr/sbin/ntpdate ntp.sjtu.edu.cn >> /var/log/ntp.log 2>&1; /sbin/hwclock –w

2、架设ntp server

关注两个文件:

/etc/ntp/ntpserver.conf

/etc/ntp.conf


7、精简开机自启动服务

线上服务器建议开启的服务

crond,network,syslog,sshd、iptables、udev-post、sysstat

快捷开启方法:

先关闭所有

for serv in `chkconfig --list|grep 3:on|awk '{print $1}'`;do chkconfig --level 3 $serv off;done

然后开启需要的服务:

for serv in `crond network syslog sshd iptables udev-post sysstat`;do chkconfig --level 3 $serv on;done


Linux运维经验分享与思路_第3张图片


8、删除不必要的系统用户和群组

可删除的系统用户和组

#删除不必要的用户

userdel adm

userdel lp

userdel sync

userdel shutdown

userdel halt

userdel news

userdel uucp

userdel video

userdel games

userdel gopher

userdel ftp

#删除不必要的群组

groupdel adm

groupdel lp

groupdel news

groupdel uucp

groupdel games

9、定时自动清理垃圾文件

查找大文件方法:du –sh /*

/var/spool/clientmqueue/目录,防止inode节点被占满

10、重要文件安全策略

chattr +i   /etc/sudoers

chattr +i   /etc/shadow

chattr +i   /etc/passwd

chattr +i   /etc/grub.conf

11、内核参数简单优化

1、关注ulimit命令


关注配置文件

[root@centos01 alertscripts]# ls /etc/security/limits.

limits.conf  limits.d/    


需要重点关注:ulimit –c、-f、-n、-u

12、系统故障排查关注点

1)、tail -f /var/log/messages        #应用日志查询

2)、tail -f /var/log/secure      #登录日志查询

3)、dmesg                        #系统日志查询

4)、/var/tmp、/tmp                #容易***点查询

5)、crontab  -l、/etc/crontab     #计划任务查询(经常***对象)