公司企业多用Linux服务器,其中涉及到的一些安全管理对于安全运维人员来说是必不可少的应知技能,

以下案例沿着背景->需求->具体要求->操作步骤的流程进行描述,可以加深对安全管理的理解。

1. 操作条件:

  (1)装有 Cent OS Linux 操作系统的虚拟机一台

2. 背景:
某企业有一台服务器,其信息如下:
(1) 该服务器上存在管理员 root,密码为 root,另存有一些具有 root 权限的
其他账户,经确认这些账户长期未使用;
(2) “/secure”文件夹为公司开发部的重要文件夹,目前权限为所有人完全
  控制。实际使用需求为:只有 “develops”组的管理员“deadmin”和
  “develops”小组成员能对组进行任何操作;其他用户组只能查看。
(3) 服务器默认可以通过所有的 TTY 进行登录,并且 root 用户可以通过 SSH进行远程登录;
(4) 任何用户可以切换 su 登录。

3. 需求: 现需要对该服务器进行安全加固,减少攻击面:
(1) 防止黑客爆破 root 用户密码,并防止黑客通过其他管理员用户入侵的可能性。对新建账户强制要求8位以上的复杂密码,
   并至少每两个月修改一次密码,到期前一个礼拜 醒客户修改密码;
(2) 防止未经授权的文件访问;
(3) 防止未经授权的 TTY 登录,仅留 1,2 两个 TTY 登录入口;
(4) 防止 root 用户直接远程登录;
(5) 防止因忘记注销而产生的安全问题,超时 5 分钟后自动注销;
(6) 防止任意用户使用 su 切换成 root 账户;
(7) 防止账户文件被修改。

4. 具体要求:
(1) 找出并锁定未使用的管理员账户,并对管理员账户设置强密码 1qaz@WSX;
(2) 检查口令策略是否符合要求,并正确设置;
(3) 根据访问需求设置“/secure”文件夹权限;
(4) 正确部署登录策略(包括 TTY 登录、远程登录、和 su 切换限制);
(5) 正确设置自动注销;
(6) 正确限制 su 切换,仅限 wheel 组才能切换至 root;
(7) 锁定账户文件防止被修改。
5. 操作步骤:
步骤1. 安全管理账户:
  (1) 为 root 用户设置强密码:打开终端,依次输入下列命令
    passwd root
    1qaz@WSX
    1qaz@WSX
  (2) 找出 UID 为 0 的用户,并锁定:在终端中依次输入下列命令
    cat/etc/passwd //发现UID为0的用户为testadmin
    passwd -l testadmin //锁定 testadmin 用户
  (3) 创建/secure 文件夹的使用账户和组:在终端中依次输入下列命令
    groupadd develops
    useradd -g develops deadmin
    passwd deadmin
    zaq1@WSX
    zaq1@WSX //这里密码任意 步骤2. 文件系统安全管理:
  (1) 设置适当的用户文件权限:在终端中依次输入下列命令
    chown deadmin:develops /secure
    chmod 774 /secure
  步骤3. 系统加固
  (1) 设置口令策略:在终端中依次输入下列命令
    cat /etc/login.defs
    vi /etc/login.defs(按 i 进行编辑,qw 保存并推出) 修改如下行:
    PASS_MAX_DAYS 60
    PASS_MIN_DAYS 0
    PASS_MIN_LEN 8
    PASS_WARN_AGE 7
  (2) 防止 TTY 登录,仅留 1,2 两个 TTY 登录入口:在终端中输入下列命令
    vi /etc/inittab (按 i 进行编辑,qw 保存并推出) 注释如下行:
    #3:2345:respawn:/sbin/mingetty tty3
    #4:2345:respawn:/sbin/mingetty tty4
    #5:2345:respawn:/sbin/mingetty tty5
    #6:2345:respawn:/sbin/mingetty tty6
  (3) 设置自动注销超时时间:在终端中输入下列命令
    vi /etc/profile (按 i 进行编辑,qw 保存并推出) 在 HISTSIZE=1000 下面加入行:
    TMOUT=300
  (4) 防止任意用户使用 su 切换到 root:在终端中输入下列命令
    vi /etc/pam.d/su (按 i 进行编辑,qw 保存并推出) 在头部加入行:
    auth required pam_wheel.so group=wheel
  (5) 防止 root 用户远程登录:在终端中输入下列命令
    vi /etc/ssh/sshd_config (按 i 进行编辑,qw 保存并推出) 修改如下行:
    PermitRootLogin no
  (6) 锁定账户文件:在终端中依次输入下列命令
    chattr +i /etc/passwd
    chattr +i /etc/shadow
    chattr +i /etc/gshadow
    chattr +i /etc/group

企业级 Linux 安全管理实例(1)的更多相关文章

  1. [企业级linux安全管理]- 安全管理基础(1)

    1. 操作条件:  (1)装有 Cent OS Linux 操作系统的虚拟机一台 2. 背景: 某企业有一台服务器,其信息如下: (1)  该服务器上存在管理员 root,密码为 root,另存有一些 ...

  2. Linux多线程实例练习 - pthread_cancel()

    Linux多线程实例练习 - pthread_cancel 1.代码 xx_pthread_cancel.c #include <pthread.h> #include <stdio ...

  3. Linux多线程实例练习 - pthread_exit() 与 pthread_join()

    Linux多线程实例练习 - pthread_exit 与 pthread_join pthread_exit():终止当前线程 void pthread_exit(void* retval); pt ...

  4. Linux多线程实例练习 - pthread_create()

    Linux多线程实例练习 pthread_create():创建一个线程 int pthread_create(pthread_t *tidp, const pthread_attr_t *attr, ...

  5. Linux:进程实例信息(/proc)

    https://blog.csdn.net/test1280/article/details/73632333 Linux:进程实例信息(/proc) 问几个问题: 1.怎么知道一个进程对应哪个可执行 ...

  6. CentOS 7.1 中文正式版下载 - 最流行的免费开源企业级 Linux 服务器操作系统

    如果说 Ubuntu 是现今最受桌面用户欢迎的 Linux 操作系统,那么 CentOS 就是最受公司.企业.IDC 喜爱的 Linux 发行版了.得益于极为出色的稳定性,全球范围内无数著名网站均选用 ...

  7. [AWS - EC2] 如何向 Amazon Linux 2 实例传输文件,下载文件。How to send/ download files from Amazon Linux 2 Instance

    1. 需要: 安装 WinSCP 2. 需要: PuTTY 生成的ppk格式密钥, 没有的话请移步此文章,完成1, 2, 3步即可. 3. 打开 WinSCP , 如果提示已经有PuTTY配置是否导入 ...

  8. [AWS - EC2]如何使用 PuTTY 连接到 Amazon Linux 2 实例。How to Connect Amazon Linux 2 Instance from Windows Using PuTTY

    1. 下载 PuTTY 2. 安装到任意目录 3. 打开 PuTTYgen (注意不是 PuTTY), 如图: 选择 RSA , 点击 Load. 找到从 AWS 创建实例的时候生成的 key,要选择 ...

  9. shell linux基本命令实例、笔记

    1. 在当前文件夹下.查找20分钟内,被訪问过的文件, 并将文件的详情显示出来: find ./ -name '*.log' -mmin -20 -exec ls -l {} \;   当然,须要指出 ...

随机推荐

  1. Adapter模式

    Adapter模式主要用于将一个类的接口转换为另外一个接口,通常情况下再不改变原有体系的条件下应对新的需求变化,通过引入新的适配器类来完成对既存体系的扩展和改造.实现方式主要包括: 1.类的Adapt ...

  2. ZigBee HomeAutomation分析

    引用请注明出处!联系邮箱是huhao0126@163.com 本例程讲解,基于TI CC2530-2.5.1a中的HomeAutomation文件夹中的SampleLight和SampleSwitch ...

  3. 3月3日[Go_deep]Populating Next Right Pointers in Each Node

    原题:Populating Next Right Pointers in Each Node 简单的链表二叉树增加Next节点信息,没什么坑.不过还是WA了两次,还是有点菜,继续做,另外leetcod ...

  4. 从对偶问题到KKT条件

    转自:http://xuehy.github.io/%E4%BC%98%E5%8C%96/2014/04/13/KKT/ 从对偶问题到KKT条件 Apr 13, 2014 对偶问题(Duality) ...

  5. 解决 Chrome 浏览器自动调整小于11px字体的问题

    不知道说是 Chrome 智能呢?还是说它多此一举?Chrome 浏览器中存在默认会自动将小于11px大小的字体调整为12px.我在写 BlueNight 主题的最新评论时候就设置了评论发布时间为11 ...

  6. MySql 服务端与客户端下载地址

    mysql官网的注册,要上传户口,才能下载. 在网上搜了个下载地址. mysql-5.6.8-rc http://mysql.stu.edu.tw/Downloads/MySQL-5.6/mysql- ...

  7. 《WPF程序设计指南》读书笔记——第1章 应用程序与窗口

    1.空白WPF项目的创建: 1)新建项目:在VS2010中,文件-新建-项目-visual c#-windows-空项目: 2)添加引用:PresentationFramework,Presentat ...

  8. 长安CS15_手动——16款

    一.输入数据 1.CAN总线描述:位置,颜色,速率,总线类型 1)位置:OBD 2)颜色:3) 速率:500k 4)总线类型:HSCAN 5)测试时间:2016.5.4 2.车辆特征 1)排量:1.5 ...

  9. JDBC 简介

    [摘要] 1) JDBC : (Java Database Connectivity ,java数据基础连接)是标准的Java 访问数据库的API.即Java数据库编程接口,是一组标准的Java语言中 ...

  10. Oracle SQL的硬解析、软解析、软软解析

    Oracle中每条sql在执行前都要解析,解析分为硬解析.软解析.软软解析. Oracle会缓存DML语句,相同的DML语句会进行软解析.但不会缓存DDL语句,所以DDL每次都做硬解析.硬解析是一个很 ...