Linux系统安全加固浅谈
对于企业来说,安全加固是一门必做的安全措施。主要分为:账号安全、认证授权、协议安全、审计安全。总的来说,就是4A(统一安全管理平台解决方案),账号管理、认证管理、授权管理、审计管理。用漏洞扫描工具扫描了一下自己的阿里云主机,发现很多系统问题不合格,所以列举总结了以下Linux系统安全加固的方法,仅供参考。
1、用户账号---唯一身份。 2、统一认证---你是谁。 3、授权管理---你有什么权限。 4、操作审计---你可以干什么。
以下文档规定了国内4A认证公司系统维护管理的Linux操作系统的主机应当遵循的操作系统安全性设置标准,旨在之道系统管理人员或者安全检查人员进行Linux操作系统的安全合规性检查和配置。
第一类:账号口令
(1)、口令生存期 [root@wenzhiyi ~]# vim /etc/login.defs
PASS_MAX_DAYS 90
PASS_MIN_DAYS 10
PASS_WARN_AGE 7
(2)、口令复杂度 [root@wenzhiyi ~]# vim /etc/pam.d/system-auth,在文件中找到如下内容:password requisite pam_cracklib.so 将其修改为:
password requisite pam_cracklib.so try_first_pass retry=3 dcredit=-1 lcredit=-1 ucredit=-1 ocredit=-1 minlen=8
备注:至少包含一个数字、一个小写字母、一个大写字母、一个特殊字符、且密码长度>=8
(3)、版本信息 [root@wenzhiyi ~]# cat /etc/system-releaseCentOS release 6.8 (Final)
(4)、限制某用户登陆
[root@wenzhiyi ~]#vim /etc/hosts.deny 对配置文件进行修改
添加内容:
#禁止192.168.0.254用户对服务器进行ssh的登陆sshd : 192.168.0.254
或者用防火墙策略:
iptables -I INPUT -s 61.37.81.1 -j DROP
# 61.37.81.1的包全部屏蔽
iptables -I INPUT -s 61.37.81.0/24 -j DROP
#61.37.81.1到61.37.81.255的访问全部屏蔽
iptables -I INPUT -s 192.168.1.202 -p tcp --dport 80 -j DROP
# 192.168.1.202的80端口的访问全部屏蔽
iptables -I INPUT -s 192.168.1.0/24 -p tcp --dport 80 -j DROP
#192.168.1.1~192.168.1.1255的80端口的访问全部屏蔽
(5)、检查是否有除root用户以外UID为0的用户[root@wenzhiyi ~]# awk -F “:” '($3==0) {print $1} ' /etc/passwd操作系统Linux超级用户策略安全基线要求项目,要求除roo外不能有UID为0的用户。
(6)、登录超时限制[root@wenzhiyi ~]# cp -p /etc/profile /etc/profile_bak
[root@wenzhiyi ~]# vi /etc/profile
TMOUT=300
export TMOUT
(7)、检查是否使用PAM认证模块禁止wheel组之外的用户su为root[root@wenzhiyi ~]# #vim /etc/pam.d/su # 新添加以下两行auth sufficient pam_rootok.soauth required pam_wheel.so use_uid
注意:auth与sufficient之间由两个tab建隔开,sufficient与动态库路径之间使用一个tab建隔开
然后,:usermod -G wheel username #username为需要添加至wheel组的用户名称,将用户添加到wheel组。注意,第一步加固表明只有wheel组中的用户才能使用su命令切换到root用户,因此必须将需要切换到root的用户添加到wheel组,以使它可以使用su命令成为root用户,如果系统不存在wheel组,则新增,新增方法:groupadd wheel。
第二类:协议安全
(1)、限制root用户远程登录SSh [root@wenzhiyi ~]# grep -v "[[:space:]]*#" /etc/ssh/sshd_config |grep "PermitRootLogin no"
PermitRootLogin no 并且修改为protocol 2
(2)、使用SSH协议进程远程登陆 [root@wenzhiyi ~]# #cp -p /etc/xinetd.d/telnet /etc/xinetd.d/telnet_bak
[root@wenzhiyi ~]# /etc/xinetd.d/telnet(vi /etc/xinetd.d/telnet),把disable项改为yes,即disable = yes.
[root@wenzhiyi ~]# #service xinetd restart
使用Telnet这个用来访问远程计算机的TCP/IP协议以控制你的网络设备,相当于在离开某个建筑时大喊你的用户名和口令。很快会有人进行监听,并且他们会利用你安全意识的缺乏。传统的网络服务程序如:ftp、pop和telnet在本质上都是不安全的,因为它们在网络上用明文传送口令和数据,别有用心的人非常容易就可以截获这些口令和数据。SSH是替代Telnet和其他远程控制台管理应用程序的行业标准。SSH命令是加密的并以几种方式进行保密。 在使用SSH的时候,一个数字证书将认证客户端(你的工作站)和服务器(你的网络设备)之间的连接,并加密受保护的口令。
(3)、禁止root用户登陆FTP
[root@wenzhiyi ~]##cat /etc/pam.d/vsftpd
auth required pam_listfile.so item=user sense=deny file=/etc/vsftpd/ftpusers onerr=succeed#其中file=/etc/vsftpd/ftpusers即为当前系统上的ftpusers文件.
[root@wenzhiyi ~]#echo “root” >> /etc/vsftpd/ftpusers
daemon
bin
sys
lp
uucp
nuucp
listen
nobody
noaccess
nobody4
root
(4)、禁止匿名FTP [root@wenzhiyi ~]# vim /etc/vsftpd/vsftpd.conf
anonymous_enable=NO #如果存在anonymous_enable则修改,如果不存在则手动增加
(5)、预防Flood攻击[root@wenzhiyi ~]# vim /etc/sysctl.conf[root@wenzhiyi ~]# net.ipv4.tcp_syncookies = 1[root@wenzhiyi ~]# sysctl -p 让命令生效
第三类:认证权限
(1)、文件与目录缺省权限控制 [root@wenzhiyi ~]#cp /etc/profile /etc/profile.bak
[root@wenzhiyi ~]# vim /etc/profileumask 027[root@wenzhiyi ~]#source /etc/profile
(2)、配置用户最小权限 [root@wenzhiyi ~]# chmod 644 /etc/passwd
[root@wenzhiyi ~]# chmod 400 /etc/shadow
[root@wenzhiyi ~]# chmod 644 /etc/group
第四类:日志审计
什么是日志?简单地说,日志就是计算机系统、设备、软件等在某种情况下记录的信息。具体的内容取决于日志的来源。例如,Linux操作系统会记录用户登录和注销的消息,防火墙将记录ACL通过和拒绝的消息,磁盘存储系统在故障发生或者在某些系统认为将会发生故障的情况下生成日志信息。日志中有大量信息,这些信息告诉你为什么需要生成日志,系统已经发生了什么。
例如,Web服务器一般会在有人访问Web页面请求资源(图片、文件等等)的时候记录日志。如果用户访问的页面需要通过认证,日志消息将会包含用户名。这就是日志数据的一个例子:可以使用用户名来判断谁访问过一个资源。通过日志,IT管理人员可以了解系统的运行状况,安全状况,甚至是运营的状况。
(1)、启用远程日志功能
[root@wenzhiyi ~]# vim /etc/rsyslog.conf,增加如下内容:*.* @Syslog日志服务器IP ###注意:*和@之间存在的是tab键,非空格。
(2)、检查是否记录安全事件日志
[root@wenzhiyi ~]# vim /etc/syslog.conf 或者 /etc/rsyslog.conf,在文件中加入如下内容:
*.err;kern.debug;daemon.notice /var/log/messages
[root@wenzhiyi ~]# chmod 640 /var/log/messages[root@wenzhiyi ~]# service rsyslog restart
Linux系统安全加固浅谈相关推荐
- Linux系统常用函数,浅谈linux下的一些常用函数的总结(必看篇)
1.exit()函数 exit(int n) 其实就是直接退出程序, 因为默认的标准程序入口为int main(int argc, char** argv),返回值是int型的. 一般在shell下 ...
- 【Linux系统编程】浅谈进程地址空间与虚拟存储空间
早期的内存分配机制 在早期的计算机中,要运行一个程序,会把这些程序全都装入内存,程序都是直接运行在内存上的,也就是说程序中访问的内存地址都是实际的物理内存地址.当计算机同时运行多个程序时,必须保证这些 ...
- linux系统防火墙配置浅谈
1防火墙规则配置文件 /etc/sysconfig/iptables *filter :INPUT DROP [0:0] --禁止所有外部IP访问 #:FORWARD DROP [ ...
- 【Linux系统编程】 浅谈标准I/O缓冲区
标准I/O库提供缓冲的目的是尽可能地减少使用read和write调用的次数.它也对每个I/O流自动地进行缓冲管理,从而避免了应用程序需要考虑这一点所带来的麻烦.不幸的是,标准I/O库最令人迷惑的也是它 ...
- linux cp mv区别,浅谈Linux下mv和cp命令的区别
1.功能上的区别 mv:用户可以使用该命令为文件或目录重命名或将文件由一个目录移入另一个目录中. cp: 该命令的功能是将给出的文件或目录拷贝到另一文件或目录中. 2.从inode角度来区分 mv:会 ...
- linux安全pdf,linux系统安全加固.pdf
通用 linux 系统安全加固手册 系统安全加固手册 1 帐户安全配置要求 1 帐户安全配置要求 1.1 创建/etc/shadow 影子口令文件 1.1 创建/etc/shadow 影子口令文件 配 ...
- android 系统升级 方法,安卓系统怎么升级 浅谈安卓系统更新升级的几种方法
最近有网友问小编"安卓系统怎么升级?",针对该问题,笔者也在网上查找了下相关资料,不过并没有找到什么有价值的相关介绍,多数都是介绍如何自动升级.或者下载升级版包等等方法,对于一些常 ...
- linux安全加固浅谈
难易程度:★★★ 阅读点:linux;python;web安全; 文章作者:xiaoye 文章来源:i春秋 关键字:网络渗透技术 前言 linux被越来越多的企业使用,因此掌握一些基本的linux安全 ...
- linux read函数_浅谈Linux内核IO体系之磁盘IO
前言 Linux I/O体系是Linux内核的重要组成部分,主要包含网络IO.磁盘IO等.基本所有的技术栈都需要与IO打交道,分布式存储系统更是如此.本文主要简单分析一下磁盘IO,看看一个IO请求从发 ...
最新文章
- 61 Celery Beat 任务调度
- Express engine 学习笔记 - 工作在反向代理背后的 Express 设置
- 给定0~N之间的N个数字(大于等于0,小于N,不重复)进行按小到大排列(不用其它的经典排序算法)
- C++ 类设计核查表
- 什么叫组网_家庭wifi,如何组网最合适
- linux下得到date命令,linux下date命令获得今天日期的用法
- html清除内部所有补白,如何清除行内元素之间的HTML空白
- 数据结构(字符串)—— 删除“b“和“ac“
- [位运算|状态压缩] leetcode 78 子集
- D-Link 老款路由器被曝多个高危漏洞,未完全修复
- 右键菜单_右键菜单太长会导致电脑卡顿?轻松删除右键菜单无用项
- SDUST 作业10 Problem D 魔方阵
- 给apk去签名、重新签名
- python标准化输出到txt_3大利器推荐,帮你写出规范漂亮的python代码
- 视频教程-SQL语句视频课程(进阶版)-Oracle
- Android相机开发实战
- 特征选择mRMR算法实现全解
- C语言误差用什么变量,C语言-实型变量
- 百度ueditor编辑器控制图片在编辑框中的大小
- JFreeChart图形开发包学习笔记
热门文章
- 3S电池过放的一种处理办法
- docker debian_使用Docker构建Debian软件包
- java 正则表达式 非贪婪模式_正则表达式的贪婪模式和非贪婪模式
- 从零搭建直播聊天平台(二.nginx-rtmp)
- bitlocker解密(不知道密钥)
- Android中Theme主题和Style样式使用介绍总结
- 运筹说 第13期 | 线性规划硬核知识点梳理—数学模型图解法
- 数据校验@Validated(解决javax.validation.ConstraintViolationException问题)
- 报错error Irregular whitespace not allowed no-irregular-whitespace的解决办法
- leetcode刷题(97)——105. 从前序与中序遍历序列构造二叉树