Linux运维经验分享与思路

本文根据讲课笔记整理

1、如何最小化安装系统

精简安装策略:

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

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

Centos6.x下的设置:

Centos7.x下的设置:

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文件

<user list> <host list> = <operator list> <tag list> <command list>

常见配置:

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

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命令

关注配置文件

[[email protected] 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     #计划任务查询(经常攻击对象)

时间: 2024-08-16 20:49:44

Linux运维经验分享与思路的相关文章

运维经验分享(七)-- Linux Shell之ChatterServer服务控制脚本第三次优化

运维经验分享作为一个专题,目前共7篇文章 <运维经验分享(一)-- Linux Shell之ChatterServer服务控制脚本> <运维经验分享(二)-- Linux Shell之ChatterServer服务控制脚本二次优化> <运维经验分享(三)-- 解决Ubuntu下crontab不能正确执行Shell脚本的问题(一)> <运维经验分享(四)--关于 java进程管理的服务控制脚本编程思路分析> <运维经验分享(五)-- 改进的java进程管

运维经验分享(四)--关于 java进程管理的服务控制脚本编程思路分析

运维经验分享作为一个专题,目前共7篇文章 <运维经验分享(一)-- Linux Shell之ChatterServer服务控制脚本> <运维经验分享(二)-- Linux Shell之ChatterServer服务控制脚本二次优化> <运维经验分享(三)-- 解决Ubuntu下crontab不能正确执行Shell脚本的问题(一)> <运维经验分享(四)--关于 java进程管理的服务控制脚本编程思路分析> <运维经验分享(五)-- 改进的java进程管

运维经验分享(六)-- 深究crontab不能正确执行Shell脚本的问题(二)

运维经验分享作为一个专题,目前共7篇文章 <运维经验分享(一)-- Linux Shell之ChatterServer服务控制脚本> <运维经验分享(二)-- Linux Shell之ChatterServer服务控制脚本二次优化> <运维经验分享(三)-- 解决Ubuntu下crontab不能正确执行Shell脚本的问题(一)> <运维经验分享(四)--关于 java进程管理的服务控制脚本编程思路分析> <运维经验分享(五)-- 改进的java进程管

运维经验分享(五)-- 改进的java进程管理的服务控制脚本

运维经验分享作为一个专题,目前共7篇文章 <运维经验分享(一)-- Linux Shell之ChatterServer服务控制脚本> <运维经验分享(二)-- Linux Shell之ChatterServer服务控制脚本二次优化> <运维经验分享(三)-- 解决Ubuntu下crontab不能正确执行Shell脚本的问题(一)> <运维经验分享(四)--关于 java进程管理的服务控制脚本编程思路分析> <运维经验分享(五)-- 改进的java进程管

51CTO学习笔记--Linux运维故障排查思路与系统调优技巧视频课程(高俊峰)

51CTO学习笔记--Linux运维故障排查思路与系统调优技巧视频课程 第一课 Linux运维经验分享与思路 1.一般把主机名,写到hosts下    127.0.0.1    hostname,因为很多应用要解析到本地.oracle没有这个解析可能启动不了. 2.注释掉UUID以及MAC地址,需要绑定网卡的时候,这个可能会有影响. 3.磁盘满了无法启动,  var下木有空间,无法创创建PID等文件,导致文件无法启动,按e   进入single  然后b  重启进入单用户模式. 4.ssh登陆系

6 个 Linux 运维典型问题,大牛的分析解决思路在这里

作为一名合格的 Linux 运维工程师,一定要有一套清晰.明确的解决故障思路,当问题出现时,才能迅速定位.解决问题,这里给出一个处理问题的一般思路: 重视报错提示信息:每个错误的出现,都是给出错误提示信息,一般情况下这个提示基本定位了问题的所在,因此一定要重视这个报错信息,如果对这些错误信息视而不见,问题永远得不到解决. 查阅日志文件:有时候报错信息只是给出了问题的表面现象,要想更深入的了解问题,必须查看相应的日志文件,而日志文件又分为系统日志文件(/var/log)和应用的日志文件,结合这两个

Linux运维39期-听老男孩第一次分享学习方法

今天下午老男孩老师来到Linux运维39期分享学习方法: 1:怎样学好Linux?听到这个问题,感觉自己早已忘记开学习自己总结的学习方法,部分方案也没有去执行: 2:预习方法,老男孩老师推荐根据老师提供的预习知识点,自己去上网学,不要去花费大量时间去看预习视频,我的想法是快速浏览预习视频,看到重点知识去截图,遇到不会的知识,上课要重点听: 3:上课要保持最大化的输入,课前要预习: 4:激发老师讲课的动力的方法是,与老师互动,赞美老师: 5:下课保持最大化的输出,与同学们讨论: 6:日事日毕---

Linux服务器集群运维经验

公司大概有5000+以上的服务器节点,包括各种应用,我和同事共同维护大约2500+的服务器,主要包括一些视频cdn,直播视频cdn,webcdn和p2p服务器. 以下是自己在运维工作中的一点经验和看法,希望对大家有所帮助 1.       服务器型号的区分,为以后的统一化和标准化作硬件上的准备,很多人忽视这一点,其实如果这一点做得好会使后面的运维工作轻松很多,根据应用我们主要把服务器分为3中,cpu密集型,主要用于大量计算应用,比如p2p;内存密集型,用于cache类应用,比如squid,var

运维老鸟分享linux运维发展路线规划【转】

linux运维发展路线常见的就是下面两条路线: 第一条:运维应用-->系统架构-->运维开发-->系统开发 第二条:运维应用-->应用dba-->架构dba-->开发DBA 下面详细每个阶段的职位说明(以北上广为例): 01.运维应用级别:这个阶段就是玩别人的软件,例如:linux,nginx,mysql,php,nagios  大多数的linux运维工程师,网络工程师,系统工程师都是这个阶段. 这个阶段的工资平均3-10K.处在这个阶段的伙伴们要注意了.这里属于金字塔