(11)Linux服务器管理维护注意事项
1.远程服务器关机及重启时的注意事项
为什么远程服务器不能关机?原因很简单,远程服务器没有放置在本地,关机后谁帮你按开机电源键启动服务器?虽然计算机技术曰新月异,但是像插入电源和开机这样的工作还是需要手工进行的。
如果服务器在远程,一旦关机,就只能求助托管机房的管理人员帮你开机了。
远程服务器重启时需要注意两点。
1) 远程服务器在重启前,要中止正在执行的服务
计算机的硬盘最怕在高速存储时断电或重启,非常容易造成硬盘损坏。所以,在重启前先中止你的服务,甚至可以考虑暂时断开对外提供服务的网络。
可能你会觉得服务器有这么娇贵吗?我的笔记本电脑经常强行关机,也没有发现硬盘损坏啊?这是因为你的个人计算机没有很多人访问,强制断电时硬盘并没有进行数据交换。小心驶得万年船!
2) 重启命令的选用
Linux 可以识别的重启命令有很多条,但是建议大家使用 "shutdown-r now" 命令重启。这条命令在重启时会正常保存和中止服务器中正在运行的程序,是安全命令。
最好在重启前执行几次 "sync" 命令,这条命令是数据同步命令,可以让暂时保存在内存中的数据同步到硬盘上。
重启和关机也是服务器需要注意的操作规范,不正确的重启和关机造成服务器故障的不在少数。
2.不要在服务器访问高峰运行高负载命令
在服务器访问高峰,如果使用一些对服务器压力较大的命令,有可能会造成服务器响应缓慢甚至死机。
哪些命令是高负载命令呢?如果大家使用过 Windows 操作系统,则也会留意一些操作会给计算机带来较大的运算压力,道理都是一样的,如复制大量的数据、压缩或者解压缩大文件、大范围的硬盘搜索等。
服务器的访问高峰期一般认为是在 17:00-24:00。当然,每台服务器具体提供的服务不同,访问高峰期有时也会有所出入。比如,服务器主要是供美国人民访问的,那就要考虑时差的问题;或者服务器提供的服务很特殊,访问高峰期可能也不同。
高负载命令一般建议在凌晨的 4:00-5:00 执行。那么,是不是说我们需要在凌晨上班?当然不是,这谁受得了啊?我们可以使用系统的计划任务,让操作自动在指定的时间段执行。
3.远程配置防火墙时不要把自己踢出服务器
防火墙是指将内网和外网分开,并依照数据包的 IP 地址、端口号和数据包中的数据来判断是否允许数据包通过的网络设备。
防火墙可以是硬件防火墙设备,也可以是服务器上安装的防火墙软件。
简单来讲,防火墙就是根据数据包自身的参数来判断是否允许数据包通过的网络设备。我们的服务器要想在公网中安全地使用,就需要使用防火墙过滤有害的数据包。
但在配置防火墙时,如果管理员对防火墙不是很熟悉,就有可能把自己的正常访问数据包和有害数据包全部过滤掉,导致自己也无法正常登录服务器。比如说,防火墙关闭了远程连接的 SSH 服务的端口。
防火墙配置完全是靠手工命令完成的,配置规则和配置命令相对也比较复杂,万一设置的时候心不在焉,悲剧就发生了。如何避免这种趟尬的情况发生呢?
最好的方法当然是在服务器本地配置防火墙,这样就算不小视自己的远程登录给过滤了,还可以通过本机登录来进行恢复。如果服务器已经在远程登录了,要配置防火墙,那么最好在本地测试完善后再进行上传,这样会把发生故障的概率降到最低。
虽然在本地测试好了,但是传到远程服务器上时仍有可能发生问题。于是笔者想到一个笨办法,如果需要远程配置防火墙,那么先写一个系统定时任务,让它每 5 分钟清空一下防火墙规则,就算写错了也还有反悔的机会,
等测试没有问题了再刪除这个系统定时任务。
总之,大家可以使用各种方法,只要留意不要在配置防火墙时把自己踢出服务器就好了。
4.指定合理的密码规范并定期更新
除了前面给大家介绍设置密码需要遵守复杂性、易记忆和时效性的三原则外,还需要注意密码的保存。
日常使用的密码,我们最简单的原则是写下来。服务器可能有很多,不可能所有的服务器都使用同样的密码,最好每台服务器的密码都不尽相同(但是在实际的工作中也不现实)。
一般的做法是给服务器分类,每类服务器的密码一致,这样可以有效地减少密码的数量。但是在有大量服务器的情况下,密码的数量还是很可怕的。
比如,当年笔者从事游戏运维的时候,有超过 2000 台服务器,再加上交换机和路由器等网络设备,虽然采用了每类服务器相同密码的方法,但是密码的总数量还是超过了 100 个……这时把密码一次性记忆下来基本上是一项不可能完成的任务。
那么,该如何保存这些密码呢?只能通过文档来保存了,当然这些文档不能是明文保存的,而是要加密的。
总之,合理的密码还要有合适的保存方式,这些在构建服务器架构的时候都是必须考虑的内容。
5.合理分配权限
管理服务器要遵守一个最基本的原则,“给予用户最小的权限”。
初次接触服务器的人会很迷惑,我们所有同事都使用管理员 root 账户登录多好,省得还要学习如何添加用户、设置权限。这样操作,如果是对个人计算机来讲问题不大,如日常使用的 Windows 桌面系统,但如果是服务器,就会出现重大的安全隐患。
在实际的工作中,因为给内部员工分配的权限不合理而导致数据泄密甚至触犯法律的情况屡见不鲜。所以,在服务器上,合理的权限规划必不可少!而且就算只有你是这台服务器的 root,我们也建议在管理服务器时,
能使用普通用户完成的操作都使用普通用户,确实完成不了的操作要么进行授权,要么再切换到 root 执行。因为 Linux 上的 root 用户权限实在过大,一旦误操作,后果是严重的,下场是惨淡的。
在实际的工作中,越是重要的服务器,对权限的管理越严格。原则上,在能够完成工作的前提下,分配的权限越小越安全。当然,权限越小,你需要做的规划和权限分配任务就越多,但是服务器也越可靠。
6.定期备份重要数据和日志
没有备份的服务器,就是在作死!
有的人知道备份重要,但是因为懒情或忘记,结果后悔莫及。很多事情都是知易行难的,备份来不得半点侥幸心理。如果公司的主要盈利项目是在互联网上的业务,那么数据的丟失就有可能造成公司的直接利益损失。
(11)Linux服务器管理维护注意事项的更多相关文章
- Linux 服务器管理建议
Linux 服务器管理建议 一.学习Linux 的注意事项 Linux 严格区分大小写 Linux 一切皆文件 Linux 不靠扩展名区分文件类型 靠权限位标识来确定的 特殊文件要求写扩展名(给管理员 ...
- linux服务器管理常用命令
1.ps命令 (Processes Status) ps这个命令是查看系统进程,ps 是显示瞬间行程的状态,并不动态连续. ==============ps 的参数说明================ ...
- 11.Linux用户管理
本笔记说的Linux用户管理主要包括以下内容: 1.用户配置文件(/etc/passwd /etc/shadow) 2.组配置文件(/etc/group /etc/gshadow) 3.用户缺省配 ...
- 阿里云宝塔Linux服务器管理面版初始化地址不能登入(原创)
宝塔面板是一款可以让Linux服务器实现图形可视化操作的集成系统. 安装好以后,页面初始化登录地址http://{您的服务器IP}:888不能登入. 不能登入通常是我们没有权限访问,需要更改安全组赋予 ...
- linux raid10管理维护
http://www.linuxidc.com/Linux/2015-10/124391.htm 制作raid10 http://www.linuxidc.com/Linux/2015-09/1 ...
- Linux服务器管理: 日志管理(一)
1.日志管理介绍: a.日志服务:在CentOS6.x中日志服务以及由rsyslogd取代了原有的syslogd服务.rsyslogd日志服务更加先进,功能更多.但是不论该服务的使用,还是日子文件的格 ...
- Linux服务器管理: 系统的进程管理ps命令
源码包:2015-06-30 12:11:25 首先我们可以通过网络去下载相应的源码包:我们以apache为例: [root@localhostA1 opt]# wget http://archive ...
- Linux服务器管理: RPM包
服务安装类型主要分两种: RPM安装和源码包编译安装: 1.RPM包查看: rpm -qa | grep 包名 用chkconfig --list 查看服务自启动命令 只对RPM包安装的服务生效 ...
- Microsoft SQL Server 数据库服务器管理维护角色
固定服务器角色: 按照从最低级别的角色(bulkadmin)到最高级别的角色(sysadmin)的顺序进行描述: Bulkadmin:这个服务器角色的成员可以运行BULK INSERT语句.这条语句允 ...
随机推荐
- java13编程基础之数组深入
大纲一维数组概述数组是相同类型数据的有序集合.数组描述的是相同类型的若干个数据,按照一定的先后次序排列组合而成.其中,每一个数据称作一个元素,每个元素可以通过一个索引(下标)来访问它们. 这些按序排列 ...
- java的多线程:线程安全问题
什么是线程安全? 为什么有线程安全问题? 当多个线程同时共享,同一个全局变量或静态变量,做写的操作时,可能会发生数据冲突问题,也就是线程安全问题.但是做读操作是不会发生数据冲突问题. 抢火车的例子: ...
- Head First 设计模式 —— 07. 适配器模式
思考题 你能想到真实世界中,还有哪些适配器的例子? P236 HDMI 转 VGA 转换器 Type-C 转 3.5mm 线 适配器模式解析 客户使用适配器的过程: P241 客户通过目标接口调用适配 ...
- 【函数分享】每日PHP函数分享(2021-1-7)
ltrim() 删除字符串开头的空白字符(或其他字符). string ltrim ( string $str[, string $character_mask]) 参数描述str 输入的字符串. c ...
- .netcore利用perf分析高cpu使用率
目录 一 在宿主机运行perf 二 容器内安装perf 1,重新构建镜像 2,下载火焰图生成脚本 3,安装linux-perf 三 CPU占用分析 1,perf record捕获进程 2,生成火焰图 ...
- .NET 云原生架构师训练营(模块二 基础巩固 RabbitMQ Masstransit 异常处理)--学习笔记
2.6.8 RabbitMQ -- Masstransit 异常处理 异常处理 其他 高级功能 异常处理 异常与重试 重试配置 重试条件 重新投递信息 信箱 异常与重试 Exception publi ...
- 【SpringBoot1.x】SpringBoot1.x 缓存
SpringBoot1.x 缓存 文章源码 JSR107 Java Caching 定义了 5 个核心接口,分别为: CachingProvider 定义了创建.配置.获取.管理和控制多个 Cache ...
- leetcode-242有效字母异位词
题目 给定两个字符串 s 和 t ,编写一个函数来判断 t 是否是 s 的字母异位词. 示例 1: 输入: s = "anagram", t = "nagaram&quo ...
- 相同的class的各位object互为友元(friend)
相同的class的各位object互为友元(friend) 这句话是啥意思? 我们来看一段代码: 1 class complex{ 2 3 private: 4 5 int r,i; 6 public ...
- Openstack OCATA 安装环境说明(一) 未完成版本
1 Openstack简介: 2 实验说明: 3 图例: 4 实验环境说明: 4.1 ) 网卡说明: 网卡名 网 段 连接方式 说明 eth0 10.10.5.0/24 仅主机网络 内部网络自动以IP ...