syslog-ng

Linux操作系统加固

眉间皱痕 提交于 2021-01-13 18:41:30
本帮助手册旨在指导系统管理人员或安全检查人员进行Linux操作系统的安全合规性检查和加固。 1. 账号和口令 1.1 禁用或删除无用账号 减少系统无用账号,降低安全风险。 操作步骤 使用命令 userdel <用户名> 删除不必要的账号。 使用命令 passwd -l <用户名> 锁定不必要的账号。 使用命令 passwd -u <用户名> 解锁必要的账号。 1.2 检查特殊账号 检查是否存在空口令和root权限的账号。 操作步骤 查看空口令和root权限账号,确认是否存在异常账号: 使用命令 awk -F: '($2=="")' /etc/shadow 查看空口令账号。 使用命令 awk -F: '($3==0)' /etc/passwd 查看UID为零的账号。 加固空口令账号: 使用命令 passwd <用户名> 为空口令账号设定密码。 确认UID为零的账号只有root账号。 1.3 添加口令策略 加强口令的复杂度等,降低被猜解的可能性。 操作步骤 使用命令 vi /etc/login.defs 修改配置文件。 PASS_MAX_DAYS 90 #新建用户的密码最长使用天数 PASS_MIN_DAYS 0 #新建用户的密码最短使用天数 PASS_WARN_AGE 7 #新建用户的密码到期提前提醒天数 使用chage命令修改用户设置。 例如, chage -m 0 -M 30

如何进行Linux操作系统的安全合规性检查和加固?

扶醉桌前 提交于 2021-01-13 18:31:53
本文旨在指导系统管理人员或安全检查人员进行 Linux 操作系统的安全合规性检查和加固。 1. 账号和口令 1.1 禁用或删除无用账号 减少系统无用账号,降低安全风险。 操作步骤 使用 命令 userdel <用户名> 删除不必要的账号。 使用 命令 passwd -l <用户名> 锁定不必要的账号。 使用命令 passwd -u <用户名> 解锁必要的账号。 1.2 检查特殊账号 检查是否存在空口令和root权限的账号。 操作步骤 1. 查看空口令和root权限账号,确认是否存在异常账号: 使用命令 awk -F: '($2=="")' /etc/shadow 查看空口令账号。 使用命令 awk -F: '($3==0)' /etc/passwd 查看UID为零的账号。 2.加固空口令账号: 使用命令 passwd <用户名> 为空口令账号设定密码。 确认UID为零的账号只有root账号。 1.3 添加口令策略 加强口令的复杂度等,降低被猜解的可能性。 操作步骤 1.使用命令 vi /etc/login.defs 修改配置文件。 PASS_MAX_DAYS 90 #新建用户的密码最长使用天数 PASS_MIN_DAYS 0 #新建用户的密码最短使用天数 PASS_WARN_AGE 7 #新建用户的密码到期提前提醒天数 2.使用chage命令修改用户设置。 例如,chage -m

ELSA企业日志归档查询系统

不问归期 提交于 2020-12-11 08:40:26
ELSA(全称:Enterprise Log Search and Archive)是一款基于syslog-ng(新一代日志收集器,但目前多数Linux发现版都不带此工具)、MySQL的开源级企业日志归档查询工具,由于它和Sphinx的完美搭配,支持全文索引可以像搜索Web一样轻松地搜索上亿个日志中的任意字符串(前提是你的服务器配置足够高)。单节点ELSA日志采集系统的工作原理图如下所示: 上面这张架构图可以看出ELSA从架构上分为三层: 日志接收器,由syslog-ng完成负责接收来自本地、网络以及导入的日志文件 日志存储索引,存储由MySQL数据库完成,索引由sphinx完成。 Web前端 。 ELSA利用syslog-ng的pattern-db解析器进行有效的日志规范化,并利用Sphinx全文索引进行日志搜索。系统内部API将查询结果汇总后,发送给客户端,整个系统是异步执行,可以跑多个查询。接收器syslog-ng在接收日志时并没有进行归一化处理(类比OSSIM-Agent插件),所以对日志的正则表达式计算量不大,可以在syslog-ng中保持高效的日志接收率,系统大部分有Perl脚本组成,MySQL每秒可插入100K行数据。Sphinx在索引中为新插入的行建立索引,每个2小时会重新建立一次永久索引。整个系统最大效率发挥时每秒钟可以处理100K条日志。

Out of memory: Kill process 6033 (mysqld) score 85 or sacrifice child

天大地大妈咪最大 提交于 2020-11-29 00:35:43
进入正题前先说明:OOM killer什么时候出现? linux 下允许程序申请比系统可用内存更多的内存,这个特性叫Overcommit。这样做是出于优化系统考虑,因为不是所有的程序申请了内存就立刻使用的,当你使用的时候说不定系统已经回收了一些资源了。不幸的是,当你用到这个Overcommit给你的内存的时候,系统还没有资源的话,OOM killer就跳出来了 今天外网某个游戏服无法登陆,查到mysqld进程不在了,于是查系统日志(/var/log/message)如下: ----------------------------------------------系统日志----开始--------------------------------------------- Apr 13 04:00:59 localhost kernel: Out of memory: Kill process 6033 (mysqld) score 85 or sacrifice child Apr 13 04:00:59 localhost kernel: Killed process 6033, UID 498, (mysqld) total-vm:56872260kB, anon-rss:3202560kB, file-rss:40kB Apr 13 09:28:37 localhost

将日志输出到Docker容器外

帅比萌擦擦* 提交于 2020-04-30 11:39:35
原文: 将日志输出到Docker容器外 1.1 使用 Docker 容器日志 我们可以利用 docker logs 命令查看 Docker 容器内部应用程序运行时所产生的日志,可以免除首先进入 Docker 容器,再打开应用程序的日志文件的过程。docker logs 会监控容器中操作系统的标准输出设备(STDOUT),一旦 STDOUT 有数据产生,就会将这些数据传输到另一个“设备”中,该 Docker 的被称为“日志驱动(Logging Driver)” 1.2 Docker 日志驱动 例如,我们有一个容器实例 ID 为 “da6743d61e1a” ,随后我们使用 docker logs 命令,查看 da6743d61e1a 容器的日志 docker logs -f da6743d61e1a 此时,Docker 日志也在同步输出,输出的日志类似下面这样。 . ____ _ __ _ _ /\\ / ___'_ __ _ _(_)_ __ __ _ \ \ \ \ ( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \ \\/ ___)| |_)| | | | | || (_| | ) ) ) ) ' |____| .__|_| |_|_| |_\__, | / / / / =========|_|==============|___/=/_/_/_

浅谈SD-WAN的故障排除方法

风流意气都作罢 提交于 2020-04-11 18:42:41
当SD-WAN出现问题或者您怀疑它导致应用程序出现问题时,您会怎么做?当然是,排除故障。 但SD-WAN故障排除要求IT团队非常了解他们正在处理的网络设备、连接和拓扑,以及许多其他因素。以下是IT团队在处理SD-WAN问题时可以遵循的一些有用的监控和实际故障排除的步骤。 SD-WAN故障排除的第一步是了解网络是什么时候开始无法正常运行的。在大多数情况下,监控SD-WAN与监控常规网络并没有太大区别。物理组件通常最容易监控的:他们要么工作,要么不工作。由于抽象会使得多个网络链路看起来好像是一个,因此逻辑函数可能会更具挑战性。 监控SD-WAN 1. 事件处理。 一个好的网络管理架构中最有用的元素是检查来自网络设备(包括SD-WAN设备)的事件。把事件想象成是网络让你知道值得注意的事情发生了。该过程不需要轮询,并且它可以随着网络的增长而扩展。 与简单网络管理协议(SNMP)陷阱相比,我更喜欢使用syslog事件,因为它们不需要将特定的管理信息库加载到管理系统中来查看详细信息。IT团队应该配置SD-WAN设备,以便将事件发送到公共事件处理系统,在那里可以存储、关联和操作事件。 预算受限的组织可以使用开源收集器(如syslog-ng)以及各种分析工具来总结网络可以生成的大量事件。有预算的组织可以研究ELK堆栈 - Elasticsearch,Logstash和Kibana

writing a custom template/parser/filter for use in syslog-ng

自古美人都是妖i 提交于 2020-01-01 18:52:28
问题 My application generates logs and sends them to syslog-ng. I want to write a custom template/parser/filter for use in syslog-ng to correctly store the fields in tables of an SQLite database (MyDatabase). This is the legend of my log: unique-record-id usename date Quantity BOQ possible,item,profiles Count Vendor applicable,vendor,categories known,request,types vendor_code credit All these 12 fields are tab separated, and the parser must store them into 12 columns of table MyTable1 in

Correlation using patterndb and syslog

蓝咒 提交于 2019-12-12 05:06:43
问题 I am trying to make a correlation using patterndb, my requirement is when an exception or a message gets added into a context more than 4 times in 60 secondes a message gets generated.Here is my patterndb xml and syslog configuration file. example.xml <patterndb version='4' pub_date='2010-10-17'> <ruleset name='ssh' id='123456678'> <pattern>ssh</pattern> <rules> <rule provider='me' id='182437592347598' context-id='ssh-login-logout' context-timeout='60' context-scope='process'> <patterns>

unable to filter badly-formatted messages in syslog-ng

℡╲_俬逩灬. 提交于 2019-12-12 00:56:12
问题 I am contacting you regarding an issue I have with syslog-NG. some of our devices (mainly HP switches and SANs) are sending syslog messages that do not respect the syslog RFC 5424 it seems. to give you a few examples : if I sniff the network interface of the server, we can see these "wrong" messages like that (as you can see, after the PRI, we can see the PROGRAM, then timezone and fields separated with commas. in short, mixed fields, missing fields etc. not a standard syslog message) : <190

syslog-ng read file permission denied

不想你离开。 提交于 2019-12-11 00:19:01
问题 i need to send tomcat Catalina.out log content by Syslog-ng but but after restarting Syslog service ,it gets permission denied error so how can i give a read access to Syslog-ng for read from CATALINA.out ? "tomcat directory belongs to specific user and specific group so cannot be change." 回答1: it's possible that your Selinux/apparmor profile doesn't allow syslog-ng to access the file. See this blogpost for tips: https://syslog-ng.com/blog/using-syslog-ng-with-selinux-in-enforcing-mode/ 回答2: