简介
本文档介绍如何设置和配置从思科邮件安全设备(ESA)到外部系统日志服务器的邮件日志(或其他日志类型)的安全复制推送(SCP)。
背景信息
管理员可能会收到说明无法使用SCP推送日志的错误通知,或者可能有说明密钥不匹配的错误日志。
先决条件
在ESA将SCP日志文件到的系统日志服务器上:
- 确保要使用的目录可用。
- 查看“/etc/ssh/sshd_config”以查看AuthorizedKeysFile设置。 这会指示SSH接受authorized_keys并在用户的主目录中查找以.ssh/authorized_keys文件写入的key_name字符串:
AuthorizedKeysFile %h/.ssh/authorized_keys
- 验证要使用的目录的权限。 您可能需要更改权限:
- “$HOME”上的权限设置为755。
- “$HOME/.ssh”上的权限设置为755。
- 对“$HOME/.ssh/authorized_keys”的权限设置为600。
UNIX/Linux上的文件级限制和权限
有三种类型的访问限制:
Permission Action chmod option
======================================
read (view) r or 4
write (edit) w or 2
execute (execute) x or 1
还有三种类型的用户限制:
User ls output
==================
owner -rwx------
group ----rwx---
other -------rwx
文件夹/目录权限:
Permission Action chmod option
===============================================================
read (view contents: i.e., ls command) r or 4
write (create or remove files from dir) w or 2
execute (cd into directory) x or 1
数字记法:
用于表示Linux权限的另一个方法是八进制表示法,如stat -c %a
所示。此表示法至少包含三个数字。最右边的三个数字分别代表权限的不同组成部分:所有者、组和其他人。
这些数字中的每一个都是二进制数字系统中其组成位的总和:
Symbolic Notation Octal Notation English
============================================================
---------- 0000 no permissions
---x--x--x 0111 execute
--w--w--w- 0222 write
--wx-wx-wx 0333 write & execute
-r--r--r-- 0444 read
-r-xr-xr-x 0555 read & execute
-rw-rw-rw- 0666 read & write
-rwxrwxrwx 0777 read. write & execute
对于第#3步,将$HOME目录设置为755的建议为:7=rwx
5=r-x
5=r-x
这意味着该目录具有默认权限-rwxr-xr-x
(以八进制表示法表示为0755)。
在ESA上配置邮件日志的SCP推送
- 运行CLI命令logconfig。
- 选择new选项。
- 选择此订阅的日志文件类型,对于IronPort Text Mail Logs,此项为“1”,或者您选择的任何其他日志文件类型。
- 输入日志文件的名称。
- 选择适当的日志级别。 通常,您需要选择“3”作为“Informational”,或您选择的任何其他日志级别。
- 当系统提示“Choose the method to retrieve the logs”时,为SCP Push选择“3”。
- 输入要将日志传送到的IP地址或DNS主机名。
- 输入远程主机上要连接的端口。
- 输入远程主机上要放置日志的目录。
- 输入用于日志文件的文件名。
- 如果需要,可以配置基于系统的唯一标识符,如$hostname、$serialnumber,并将其附加到日志文件名中。
- 设置传输前的最大文件大小。
- 如果适用,配置日志文件的基于时间的回滚。
- 当询问“Do you want to enable host key checking?”时,输入“Y”。
- 系统随后显示“请将以下SSH密钥放入您的authorized_keys文件中,以便可以上传日志文件”。
- 复制该密钥,因为您需要将SSH密钥放在Syslog服务器上的“authorized_keys”文件中。 将logconfig中提供的密钥粘贴到Syslog服务器上的$HOME/.ssh/authorized_keys文件中。
- 从ESA,运行CLI命令commit以保存和提交配置更改。
也可以从GUI中完成日志配置:系统管理>日志订阅
注意:请查看《ESA用户指南》中的“日志记录”一章,了解完整的详细信息和更多信息。
确认
Hostkeyconfig
运行命令logconfig > hostkeyconfig。 您应该看到系统日志服务器的一个条目被配置为“ssh-dss”,其缩写密钥类似于配置过程中提供的密钥。
myesa.local > logconfig
...
[]> hostkeyconfig
Currently installed host keys:
1. 172.16.1.100 ssh-dss AAAAB3NzaC1kc3MAAACBAMUqUBGztO0T...OutUns+DY=
系统日志
系统日志记录以下信息:引导信息、虚拟设备许可证到期警报、DNS状态信息和用户使用commit命令键入的注释。系统日志对于排除设备的基本状态故障非常有用。
从CLI运行命令tail system_logs将实时查看系统状态。
您还可以选择CLI命令rollovernow并选择与日志文件关联的编号。 您将在system_logs中看到日志文件SCP到您的系统日志服务器:
myesa.local > tail system_logs
Press Ctrl-C to stop.
Thu Jan 5 11:26:02 2017 Info: Push success for subscription mail_logs: Log mail_logs.myesa.local.@20170105T112502.s pushed via SCP to remote host 172.16.1.100:22
高级故障排除
如果从本地主机和使用ssh连接到系统日志服务器持续出现问题,请运行“ssh testuser@hostname -v”以详细模式测试用户访问。 这有助于进行故障排除,以显示ssh连接不成功之处。
$ ssh testuser@172.16.1.100 -v
OpenSSH_7.3p1, LibreSSL 2.4.1
debug1: Reading configuration data /Users/testuser/.ssh/config
debug1: /Users/testuser/.ssh/config line 16: Applying options for *
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: /etc/ssh/ssh_config line 20: Applying options for *
debug1: Connecting to 172.16.1.100 [172.16.1.100] port 22.
debug1: Connection established.
debug1: identity file /Users/testuser/.ssh/id_rsa type 1
debug1: key_load_public: No such file or directory
debug1: identity file /Users/testuser/.ssh/id_rsa-cert type -1
debug1: identity file /Users/testuser/.ssh/id_dsa type 2
debug1: key_load_public: No such file or directory
debug1: identity file /Users/testuser/.ssh/id_dsa-cert type -1
debug1: key_load_public: No such file or directory
debug1: identity file /Users/testuser/.ssh/id_ecdsa type -1
debug1: key_load_public: No such file or directory
debug1: identity file /Users/testuser/.ssh/id_ecdsa-cert type -1
debug1: key_load_public: No such file or directory
debug1: identity file /Users/testuser/.ssh/id_ed25519 type -1
debug1: key_load_public: No such file or directory
debug1: identity file /Users/testuser/.ssh/id_ed25519-cert type -1
debug1: Enabling compatibility mode for protocol 2.0
debug1: Local version string SSH-2.0-OpenSSH_7.3
debug1: Remote protocol version 2.0, remote software version OpenSSH_6.6.1p1 Ubuntu-2ubuntu2.8
debug1: match: OpenSSH_6.6.1p1 Ubuntu-2ubuntu2.8 pat OpenSSH_6.6.1* compat 0x04000000
debug1: Authenticating to 172.16.1.100:22 as 'testuser'
debug1: SSH2_MSG_KEXINIT sent
debug1: SSH2_MSG_KEXINIT received
debug1: kex: algorithm: curve25519-sha256@libssh.org
debug1: kex: host key algorithm: ssh-dss
debug1: kex: server->client cipher: chacha20-poly1305@openssh.com MAC: <implicit> compression: zlib@openssh.com
debug1: kex: client->server cipher: chacha20-poly1305@openssh.com MAC: <implicit> compression: zlib@openssh.com
debug1: expecting SSH2_MSG_KEX_ECDH_REPLY
debug1: Server host key: ssh-dss SHA256:c+YpkZsQyUwi3tkIVJFXHAstwlkdewO1G0s7P2khV7U
debug1: Host '172.16.1.100' is known and matches the DSA host key.
debug1: Found key in /Users/testuser/.ssh/known_hosts:5
debug1: rekey after 134217728 blocks
debug1: SSH2_MSG_NEWKEYS sent
debug1: expecting SSH2_MSG_NEWKEYS
debug1: rekey after 134217728 blocks
debug1: SSH2_MSG_NEWKEYS received
debug1: Skipping ssh-dss key /Users/testuser/.ssh/id_dsa - not in PubkeyAcceptedKeyTypes
debug1: SSH2_MSG_SERVICE_ACCEPT received
debug1: Authentications that can continue: publickey,password
debug1: Next authentication method: publickey
debug1: Offering RSA public key: /Users/testuser/.ssh/id_rsa
debug1: Authentications that can continue: publickey,password
debug1: Trying private key: /Users/testuser/.ssh/id_ecdsa
debug1: Trying private key: /Users/testuser/.ssh/id_ed25519
debug1: Next authentication method: password
testuser@172.16.1.100's password: <<< ENTER USER PASSWORD TO LOG-IN >>>
debug1: Enabling compression at level 6.
debug1: Authentication succeeded (password).
Authenticated to 172.16.1.100 ([172.16.1.100]:22).
debug1: channel 0: new [client-session]
debug1: Requesting no-more-sessions@openssh.com
debug1: Entering interactive session.
debug1: pledge: exec
debug1: No xauth program.
Warning: untrusted X11 forwarding setup failed: xauth key data not generated
debug1: Requesting authentication agent forwarding.
debug1: Sending environment.
debug1: Sending env LANG = en_US.UTF-8
debug1: Sending env LC_CTYPE = en_US.UTF-8