我在 docker 容器中有 php-fpm,在Dockerfile我编辑 fpm 配置文件 ( /etc/php5/fpm/pool.d/www.conf) 以设置要访问的访问日志和要访问的/var/log/fpm-access.log错误日志/var/log/fpm-php.www.log:
# Do some php-fpm config
# Redirect worker stdout and stderr into main error log
# Activate the fpm access log
# Enable display errors
# Enable the error log
RUN sed -i '/^;catch_workers_output/ccatch_workers_output = yes' /etc/php5/fpm/pool.d/www.conf && \
sed -i '/^;access.log/caccess.log = /var/log/fpm-access.log' /etc/php5/fpm/pool.d/www.conf && \
sed -i '/^;php_flag\[display_errors\]/cphp_flag[display_errors] = off' /etc/php5/fpm/pool.d/www.conf && \
sed -i '/^;php_admin_value\[error_log\]/cphp_admin_value[error_log] = /var/log/fpm-php.www.log' /etc/php5/fpm/pool.d/www.conf && \
sed …Run Code Online (Sandbox Code Playgroud) 我正在尝试在 Ubuntu 10.04 LTS 上使用股票 rsyslogd (4.2.0-2ubuntu8.1) 实现一个简单的集中式系统日志服务器。在这一点上,我的所有客户端节点都将日志发送到中央服务器,但是客户端发送的日志消息包含它们的短主机名而不是它们的 FQDN。
根据 Ubuntu rsyslogd 联机帮助页:
如果远程主机与主机位于同一域中,rsyslogd 正在运行,则只会记录简单的主机名而不是整个 fqdn。
这对我来说是有问题的,因为我在环境之间重复使用短名称,例如 core1.example.com 和 core1.stg.example.com 都将它们的消息记录为 core1。
客户端和服务器都有相同的 /etc/default/rsyslog:
RSYSLOGD_OPTIONS="-c4"
Run Code Online (Sandbox Code Playgroud)
和相同的 /etc/rsyslogd.conf 文件:
$ModLoad imuxsock
$ModLoad imklog
$PreserveFQDN on
$ActionFileDefaultTemplate RSYSLOG_TraditionalFileFormat
$FileOwner root
$FileGroup adm
$FileCreateMode 0640
$IncludeConfig /etc/rsyslog.d/*.conf
Run Code Online (Sandbox Code Playgroud)
客户端有这个 /etc/rsyslog.d/remote.conf 文件,告诉他们发送到远程服务器:
*.* @@syslog.example.com
Run Code Online (Sandbox Code Playgroud)
并且服务器使用这个 /etc/rsyslog.d/server.conf 文件:
$ModLoad imtcp
$InputTCPServerRun 514
$DirGroup root
$DirCreateMode 0755
$FileGroup root
$template PerHostAuth,"/srv/rsyslog/%$YEAR%/%$MONTH%/%$DAY%/%HOSTNAME%/auth.log"
$template PerHostCron,"/srv/rsyslog/%$YEAR%/%$MONTH%/%$DAY%/%HOSTNAME%/cron.log"
$template PerHostSyslog,"/srv/rsyslog/%$YEAR%/%$MONTH%/%$DAY%/%HOSTNAME%/syslog"
$template PerHostDaemon,"/srv/rsyslog/%$YEAR%/%$MONTH%/%$DAY%/%HOSTNAME%/daemon.log"
$template PerHostKern,"/srv/rsyslog/%$YEAR%/%$MONTH%/%$DAY%/%HOSTNAME%/kern.log"
$template PerHostLpr,"/srv/rsyslog/%$YEAR%/%$MONTH%/%$DAY%/%HOSTNAME%/lpr.log"
$template PerHostUser,"/srv/rsyslog/%$YEAR%/%$MONTH%/%$DAY%/%HOSTNAME%/user.log"
$template PerHostMail,"/srv/rsyslog/%$YEAR%/%$MONTH%/%$DAY%/%HOSTNAME%/mail.log"
$template PerHostMailInfo,"/srv/rsyslog/%$YEAR%/%$MONTH%/%$DAY%/%HOSTNAME%/mail.info" …Run Code Online (Sandbox Code Playgroud) 通过ssh登录时,在auth.log上可以看到如下内容:
Dec 14 16:29:30 app sshd[22781]: Accepted publickey for dev from XXX.XXX.XX.XXX port XXXXX ssh2: RSA SHA256:pO8i...
Run Code Online (Sandbox Code Playgroud)
我一直在试图弄清楚这个 SHA256 信息是什么,但我找不到任何似乎匹配的信息。首先,我认为这可能是来自我正在连接的客户端的一些信息(公钥、指纹、散列主机名等),但我没有找到任何需要确认的信息,无论是在服务器端。
我找到的最接近的信息是here,但我不明白它说“这是一个使用密钥进行身份验证的示例。它显示了 kewy(可能是拼写错误)指纹作为 base64 中的 SHA256 哈希。” ,因为我还没有找到任何类型的相应密钥指纹。
谢谢你。
我在必须与 Windows 机器共享文件的存储服务器上运行 CentOS。SMB 版本是smbd version 3.5.5-68.fc13
我在 /var/log/messages 中收到很多关于尝试连接到 CUPS 服务器失败的错误消息。它们看起来像这样:
Nov 30 18:49:34 big03 smbd[9927]: [2010/11/30 18:49:34.850620, 0] printing/print_cups.c:108(cups_connect)
Nov 30 18:49:34 big03 smbd[9927]: Unable to connect to CUPS server localhost:631 - Connection refused
Run Code Online (Sandbox Code Playgroud)
我知道这个问题是由 SMB 附带打印机共享支持这一事实产生的,但我真的对此不感兴趣。我只想禁用该功能以摆脱消息。
知道我该怎么做吗?
从失败的恶意 SSH 尝试中可以学到什么关于“用户”的信息?
/var/log/secure)/var/log/secure)有没有其他提取方法?无论是隐藏在日志文件中的信息、随机技巧还是来自 3rd 方工具等。
我已经使用 Apache 多年了,我理所当然地认为它可以为我处理日志轮换。我一直在挖掘 IIS 配置和谷歌搜索,但我找不到 IIS 开启日志轮换的选项。
配置 IIS 以删除超过特定阈值的日志的首选方法是什么?是否有任何产品可以为您做到这一点?企业 Windows 商店是做什么的?
配置:IIS 6.0 / Windows Server 2003 32 位
我们有几个维护系统的开发人员,我希望他们能够轻松读取 /var/log/httpd 中的日志文件,而无需 root 访问权限。我为“其他”用户设置了读取权限,但是当我对日志文件运行 tail 时,我的权限被拒绝:
[root@ourserver httpd]# chmod -R go+r /var/log/httpd
[root@ourserver httpd]# ls -la
drwxr--r-- 13 root root 4096 Oct 25 03:31 .
drwxr-xr-x. 6 root root 4096 Oct 20 03:24 ..
drwxr-xr-x 2 root root 4096 Oct 20 03:24 oursite.com
drwxr-xr-x 2 root root 4096 Oct 20 03:24 oursite2.com
-rw-r--r-- 1 root root 0 May 7 03:46 access_log
-rw-r--r-- 1 root root 3446 Oct 24 22:05 error_log
[me@ourserver ~]$ tail -f /var/log/httpd/oursite.com/error.log
tail: cannot open `/var/log/httpd/oursite/error.log' …Run Code Online (Sandbox Code Playgroud) 我有一个 nginx 实例,该实例设置为将访问记录到 /var/log/nginx/access.log 并将错误记录到 /var/log/nginx/errors.log,但是一旦 logrotate 每周运行,文件就会移动到*.log.1 和新的 *.log 文件被创建,但 nginx 继续记录到 log.1 文件而不是新的 .log 文件(并且没有任何内容被压缩)。我第一次注意到这一点,自日志轮换以来已经过去了 3 周,并且日志变得越来越大。运行kill -HUP `cat /run/nginx.pid`使 nginx 再次开始记录到正确的位置,但问题在下周再次出现。
这令人沮丧的更重要的原因是我将日志设置为通过 rsyslog 上传到 Loggly,当 nginx 停止记录到文件时,我有 rsyslog 轮询,然后事情停止上传,我没有收到任何警报。
我怀疑这与重新启动 nginx 或重新加载配置有关,因为它直到我进行了配置更改并以我认为正常的方式重新加载配置后才启动。我尝试运行,kill -USR1 `cat /run/nginx.pid`但文件继续记录到错误的位置,直到我运行kill -HUP `cat /run/nginx.pid`,我已经知道这不能解决问题。
知道发生了什么吗?我承认我不是 logrotate 或 nginx 管理方面的专家,但我的谷歌在这方面失败了。
这是我的 nginx logrotate 脚本,如果您还有什么想看的,请告诉我。除了定义输出位置之外,nginx.conf 在日志记录方面没有什么特别之处。
/var/log/nginx/*.log {
weekly
missingok
rotate 52
compress
delaycompress
notifempty
create 0640 www-data adm
sharedscripts
prerotate
if [ -d /etc/logrotate.d/httpd-prerotate ]; then \
run-parts …Run Code Online (Sandbox Code Playgroud) 我试图确定谁最近登录了我办公室的特定机器。所以我使用了last,但是 wtmp 从昨天(星期一)14:30 左右开始。我希望找到至少可以追溯到周日的信息。有没有办法在不通过授权日志文件的情况下获取该信息?
一些用户已通过 RDP 登录到服务器。
我想监视活动,但不太了解 Windows Server。
我希望有一些我可以参考的日志。
有任何想法吗?:)