Linux 操纵的精良风俗总结

分享
手机游戏开发者 2024-9-30 18:32:20 74 0 来自 中国
从事运维,碰到过各式各样的题目,数据丢失,网站挂马,误删数据库文件,黑客攻击等各类题目。
一、线上操纵规范

1. 测试使用

当初学习Linux的使用,从底子到服务到集群,都是在假造机做的,固然老师告诉我们跟真机没有什么差异,但是对真实情况的渴望日渐上升,不外假造机的各种快照却让我们养成了各种手贱的风俗,以致于拿到服务器操纵权限时间,就如饥似渴的想去试试,记得上班第一天,老大把root暗码交给我,由于只能使用putty,我就想使用xshell,于是静静登录服务器实验改为xshell+密钥登录,由于没有测试,也没有留一个ssh毗连,全部重启sshd服务器之后,本身就被挡在服务器之外了,幸好当时我备份了sshd_config文件,厥后让机房职员cp已往就可以了,幸亏这是一家小公司,否则直接就被干了……光荣当年运气比力好。
第二个例子是关于文件同步的,各人都知道rsync同步很快,但是他删除文件的速率大大凌驾了rm -rf,在rsync中有一个下令是,以某目次为准同步某文件(如果第一个目次是空的,那么效果可想而知),源目次(有数据的)就会被删除,当初我就是由于误操纵,以及缺乏测试,就目次写反了,关键是没有备份……生产情况数据被删了 没备份,各人本身想后果吧,其紧张性不问可知。
2. Enter前再三确认

关于rm -rf / var 这种错误,我信托手快的人,大概网速比力慢的时间,出现的几率相称大 当你发现实行完之后,你的心至少是凉了半截。各人大概会说,我按了这么多次都没出不对,不消怕,我只想说 当出现一次你就明白了,不要以为那些运维事故都是在别人身上,如果你不留意,下一个就是你。
3. 切忌多人操纵

我在的上一家公司,运维管理相称杂乱,举一个最范例的例子吧,离职好几任的运维都有服务器root暗码。通常我们运维接到使命,都会进行简朴检察如果无法办理,就请求他人帮助,但是当题目焦头烂额的时间,客服主管(懂点linux),网管,你上司一起调试一个服务器,当你各种百度,各种对照,完了发现,你的服务器设置文件,跟前次你修改不一样了,然后再改返来,然后再谷歌,兴冲冲发现题目,办理了,别人却告诉你,他也办理了,修改的是不同的参数……这个,我就真不知道哪个是题目真正的缘故原由了,固然这照旧好的,题目办理了,皆大欢乐,但是你碰到过你刚修改的文件,测试无效,再去修改发现文件又被修改的时间呢?真的很恼火,切忌多人操纵。
4. 先备份后操纵

养成一个风俗,要修改数据时,先备份,好比.conf的设置文件。别的,修改设置文件时,发起解释原选项,然后再复制、修改,再者说,如果第一个例子中,有数据库备份,那rsync的误操纵不就没事了吧 以是说丢数据库非一朝一夕,任意备份一个就不消那么惨。
二、涉及数据

1. 慎用rm -rf

网上的例子许多,各种rm -rf /,各种删除主数据库,各种运维事故…… 一点小失误就会造成很大的丧失。如果真必要删除,肯定要审慎。
2. 备份操纵大于统统

原来上面都有各种关于备份,但是我想把它分别在数据类再次夸大,备份非常之紧张哇 我记得我的老师说过一句话,涉及到数据何种的审慎都不为过 我就职的公司有做第三方付出网站和网贷平台的 第三方付出是每两个小时完全备份一次,网贷平台是每20分钟备份一次 我不多说了,各人本身斟酌吧。
3. 稳固大于统统

着实不止是数据,在整个服务器情况,都是稳固大于统统,不求最快,但求最稳固,求可用性 以是未经测试,不要在服务器使用新的软件,好比nginx+php-fpm,生产情况中php各种挂啊 重启下就好了,大概换apache就好了。
4. 保密大于统统

如今各种艳照门漫天飞,各种路由器后门,以是说,涉及到数据,不保密是不可的。
三、涉及安全

1. ssh

更改默认端口(固然如果专业要黑你,扫描下就出来了)
克制root登录
使用平凡用户+key认证+sudo规则+ip地点+用户限定
使用hostdeny类似的防爆破解软件(凌驾频频实验直接拉黑)
筛选/etc/passwd中login的用户
2. 防火墙

防火墙生产情况肯定要开,而且要依照最小原则,drop全部,然后放行必要的服务端口。
3. 精致权限和控制粒度

能使用平凡用户启动的服务果断不使用root,把各种服务权限控制到最低,控制细粒度要精致。
4. 入侵检测和日志监控

使用第三方软件,时刻检测体系关键文件以及各种服务设置文件的改动 好比,/etc/passwd,/etc/my.cnf,
/etc/httpd/con/httpd.con等; 使用会合化的日志监控体系,监控/var/log/secure,/etc/log/message,ftp
上传下载文件等报警错误日志; 别的针对端口扫描,也可以使用一些第三方软件,发现被扫描就直接拉入host.deny。这些信息对于体系被入侵后排错很有资助。有人说过,一个公司在安全投入的本钱跟他被安全攻击丧失的本钱成正比,安满是一个很大的话题 也是一个很底子的工作,把底子做好了,就能相称的进步体系安全性,其他的就是安全高手做的了。
四、一样平常监控

1. 体系运行监控

许多多少人踏入运维都是从监控做起,大的公司一样平常都有专业24小时监控运维。体系运行监控一样平常包括硬件占用率 常见的有,内存,硬盘,cpu,网卡,os包括登录监控,体系关键文件监控 定期的监控可以推测出硬件破坏的概率,而且给调优带来很实用的功能。
2. 服务运行监控

服务监控一样平常就是各种应用,web,db,lvs等,这一样平常都是监控一些指标 在体系出现性能瓶颈的时间就能很快发现并办理。
3. 日志监控

这里的日志监控跟安全的日志监控类似,但这里一样平常都是硬件,os,应用步伐的报错和警报信息 监控在体系稳固运行的时间确实没啥用,但是一旦出现题目,你又没做监控,就会很被动了。
五、性能调优

1. 深入相识运行机制

着实按一年多的运维履向来说,谈调优根本就是纸上谈兵,但是我只是想简朴总结下,如果有更深入的相识,我会更新。在对软件进行优化之前,好比要深入相识一个软件的运行机制,好比nginx和apache,各人都说nginx快,那就必须知道nginx为什么快,使用什么原理,处置惩罚请求比apache,而且要能跟别人用浅近易懂的话说出来,须要的时间还要能看懂源代码,否则统统以参数为调优对象的文档都是瞎谈。
2. 调优框架以及先后

熟悉了底层运行机制,就要有调优的框架和先后顺序,好比数据库出现瓶颈,许多多少人直接就去更改数据库的设置文件,我的发起是,先根据瓶颈去分析,检察日志,写出来调优方向,然后再入手,而且数据库服务器调优应该是末了一步,开始的应该是硬件和操纵体系,如今的数据库服务器都是在各种测试之后才会发布的 适用于全部操纵体系,不应该先从他入手。
3. 每次只调一个参数

每次只调一个参数,这个相比各人都相识,调的多了,你就本身就含糊了。
4. 基准测试

判断调优是否有效,和测试一个新版本软件的稳固性和性能等方面,就必须要基准测试了,测试要涉及许多因素 测试是否靠近业务真实需求这要看测试人的履历了,相干资料各人可以参考《高性能mysql》第三版相称的好 我的老师曾说过,没有放之四海皆准的参数,任何参数更改任何调优都必须符合业务场景 以是不要再谷歌什么什么调优了,对你的提升和业务情况的改善没有恒久作用。
六、运维心态

1. 控制心态

许多rm -rf /data都在放工的前几分钟,都在烦躁的高峰,那么你还不计划控制下你的心态么! 有人说了,烦躁也要上班,但是你可以在烦躁的时间只管制止处置惩罚关键数据情况;越是有压力,越要岑寂,否则会丧失更多。大多人都有rm -rf /data/mysql的履历,发现删除之后,那种心情你可以想象一下,但是如果没有备份,你急又有什么用,一样平常这种情况下,你就要岑寂想下最坏计划了,对于mysql来说,删除了物理文件,一部分表还会存在内存中,以是断开业务,但是不要关闭mysql数据库,这对规复很有资助,并使用dd复制硬盘,然后你再进行规复 固然了大多时间你就只能找数据规复公司了。试想一下,数据被删了,你各种操纵,关闭数据库,然后修复,不但有大概覆盖文件,还找不到内存中的表了。
2. 对数据负责

生产情况不是儿戏,数据库也不是儿戏,肯定要对数据负责。不备份的后果优劣常严峻的。
3. 追根究底

许多运维职员比力忙,碰到题目办理就不会再管了,记得客岁一个客户的网站总是打不开,颠末php代码报错 发现是session和whos_online破坏,前任运维是通过repair修复的,我就也如许修复了,但是过了几个小时,又出现了反复三四次之后,我就去谷歌数据库表莫名破坏缘故原由:一是myisam的bug,二是mysqlbug,三是mysql在写入过程中 被kill,末了发现是内存不敷用,导致OOM kill了mysqld历程 而且没有swap分区,背景监控内存是够用的,末了升级物理内存办理。
4. 测试和生产情况

在紧张操纵之前肯定要看本身地点的呆板,只管制止多开窗口。

转载自:https://zhuanlan.zhihu.com/p/365519427
您需要登录后才可以回帖 登录 | 立即注册

Powered by CangBaoKu v1.0 小黑屋藏宝库It社区( 冀ICP备14008649号 )

GMT+8, 2024-11-22 00:52, Processed in 0.172386 second(s), 32 queries.© 2003-2025 cbk Team.

快速回复 返回顶部 返回列表