标签:学习 style ftpd 类型 option ctime 详细信息 功能 inux
高级入侵检测环境:是一个入侵检测工具,主要用途是检查文件的完整性,审计计算机上的那些文件被更改过了。
AIDE能够构造一个指定文件的数据库,它使用aide.conf作为其配置文件。AIDE数据库能够保存文件的各种属性,包括:权限(permission)、索引节点序号(inode number)、所属用户(user)、所属用户组(group)、文件大小、最后修改时间(mtime)、创建时间(ctime)、最后访问时间(atime)、增加的大小以及连接数。AIDE还能够使用下列算法:sha1、md5、rmd160、tiger,以密文形式建立每个文件的校验码或散列号。
配置文件:/etc/aide.conf
# These are the default rules. #p: permissions #i: inode: #n: number of links #u: user #g: group #s: size #b: block count #m: mtime #a: atime #c: ctime #S: check for growing size #acl: Access Control Lists #selinux SELinux security context #xattrs: Extended file attributes #md5: md5 checksum #sha1: sha1 checksum #sha256: sha256 checksum #sha512: sha512 checksum #rmd160: rmd160 checksum #tiger: tiger checksum #haval: haval checksum (MHASH only) #gost: gost checksum (MHASH only) #crc32: crc32 checksum (MHASH only) #whirlpool: whirlpool checksum (MHASH only) #R: p+i+n+u+g+s+m+c+acl+selinux+xattrs+md5 #L: p+i+n+u+g+acl+selinux+xattrs #E: Empty group #>: Growing logfile p+u+g+i+n+S+acl+selinux+xattrs
1、安装
# yum install aide
2、配置需要监控的文件夹
[root@centos6 ~]# vim /etc/aide.conf /data/* R
3、生成数据库并改名为现在使用的文件名
[root@centos6 ~]# cd /var/lib/aide/ [root@centos6 aide]# aide --init AIDE, version 0.14 ### AIDE database at /var/lib/aide/aide.db.new.gz initialized. [root@centos6 aide]# ls aide.db.new.gz [root@centos6 aide]# mv aide.db.new.gz aide.db.gz
4、检查文件完整性,建议将aide数据库存放到安全的地方
# aide --check
5、更新数据库
# aide --update
能够授权指定用户在指定主机上代表指定用户执行某些指令。
sudo命令
visudo:编辑/etc/sudoers
-v:检查语法合格性
-f file:编辑文件
配置文件:/etc/sudoers, /etc/sudoers.d/*,支持使用通配符
授权格式:用户 主机=(代表用户) 命令
用户和代表用户:
主机:
命令:
root ALL=(ALL) ALL #系统默认为root用户开的后门,root用户可以在任意主机上以任意用户的身份执行任意操作
别名:
类型:User_Alias, Runas_Alias, Host_Alias ,Cmnd_Alias
格式:必须以大小的A-Z开头,中间可以是大小的A-Z,数字和下划线
[root@centos6 sudoers.d]# visudo -f netadmin User_Alias NETADMIN = user1,user2,user3 Cmnd_Alias NETCMD = /sbin/ip,/sbin/route,/sbin/ifconfig,/bin/netstat,/usr/sbin/ss Host_Alias HOST = 192.168.0.6 Runas_Alias OP = root NETADMIN HOST=(OP) NETCMD
日志文件:/var/log/secure
*注意
user4 ALL=(root) /bin/cat /var/log/messages*
这样授权是错误的,以下命令也可以执行
# /bin/cat /var/log/messages /etc/shadow
所以我们如果想实现这样的需求就需要按照以下这样的写法:
dongfei ALL=(root) /bin/cat /var/log/messages*,!/bin/cat /var/log/messages* *
[dongfei@centos6 ~]$ sudo cat /var/log/messages /etc/shadow Sorry, user dongfei is not allowed to execute ‘/bin/cat /var/log/messages /etc/shadow‘ as root on centos6.
作者:Wieste Venema
简介:工作在第四层(传输层)的TCP协议,对有状态连接的特定服务进行安全检测并实现访问控制;某进程是否接受libwrap的控制取决于发起此进程的程序在编译时是否针对libwrap进行编译。
检查sshd服务是否能够被TCP_Wrappers控制
[dongfei@centos6 ~]$ which sshd /usr/sbin/sshd [dongfei@centos6 ~]$ ldd /usr/sbin/sshd |grep libwrap.so libwrap.so.0 => /lib64/libwrap.so.0 (0x00007f61ba6aa000) #sshd服务依赖libwrap.so库,可以被控制
配置文件:/etc/hosts.allow(白名单), /etc/hosts.deny(黑名单)
规则:先检查白名单,如果被白名单匹配则允许访问;如果白名单没有匹配到则交给黑名单匹配,如果匹配则拒绝;如果都没有匹配到则使用默认策略(默认允许)。
配置语法:服务列表@主机IP:客户端地址列表 [:选项]
服务列表@主机IP:
客户端列表:
选项:
tcpdmatch:在本地测试
tcpdmatch [-d] daemon[@host] client
-d 测试当前目录下的hosts.allow和hosts.deny
[root@centos6 data]# cat hosts.allow [root@centos6 data]# cat hosts.deny sshd:192.168.0.7 [root@centos6 data]# tcpdmatch -d sshd 192.168.0.7 #如果客户端是192.168.0.7是否可以访问本机的sshd服务 client: address 192.168.0.7 server: process sshd access: denied(拒绝) [root@centos6 data]# tcpdmatch -d sshd 192.168.0.8 client: address 192.168.0.8 server: process sshd access: granted
它提供了对所有服务进行认证的中央机制,适用于login,远程登录(telnet,rlogin,fsh,ftp,点对点协议(PPP)),su等应用程序中。系统管理员通过PAM配置文件来制定不同应用程序的不同认证策略;应用程序开发者通过在服务程序中使用PAM API(pam_xxxx( ))来实现对认证方法的调用;而PAM服务模块的开发者则利用PAM SPI来编写模块(主要是引出一些函数pam_sm_xxxx( )供PAM接口库调用),将不同的认证机制加入到系统中;PAM接口库(libpam)则读取配置文件,将应用程序和相应的PAM服务模块联系起来。
模块文件目录:/lib64/security/*.so
环境相关的设置:/etc/security/
主配置文件:/etc/pam.conf,默认不存在
为每种应用模块提供一个专用的配置文件:/etc/pam.d/*
PAM认证过程:
专用配置文件/etc/pam.d/*格式
module-type control module-path arguments
个人学习笔记
AIDE,sudo,TCP_Wrappers,PAM认证等系统安全访问机制
标签:学习 style ftpd 类型 option ctime 详细信息 功能 inux
原文地址:https://www.cnblogs.com/L-dongf/p/9070770.html