View a markdown version of this page

syslog デバイスの設定 - Amazon CloudWatch Logs

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

syslog デバイスの設定

syslog 取り込みを設定したら、VPC エンドポイント DNS 名にメッセージを送信するように syslog ソースを設定します。デバイスは、VPN または VPC への Direct Connect 接続を介してエンドポイントに到達します。

注記

例として、次の設定を示します。完全な設定オプションとベストプラクティスについては、syslog 実装の公式ドキュメント (rsyslog、syslog-ng、またはデバイスベンダー) を参照してください。

次の例では、 をセットアップ手順の VPC エンドポイント DNS 名 (例: ) VPCE_DNSに置き換えますvpce-0abc123def456.syslog-logs.us-east-1.vpce.amazonaws.com

rsyslog

rsyslog は、ほとんどの Linux ディストリビューションのデフォルトの syslog デーモンです。次の設定を に追加します/etc/rsyslog.d/50-cwl-syslog.conf

TCP + TLS:

# Forward all logs to CloudWatch Logs via TCP+TLS action(type="omfwd" target="VPCE_DNS" port="6514" protocol="tcp" StreamDriver="gtls" StreamDriverMode="1" StreamDriverAuthMode="x509/certvalid" template="RSYSLOG_SyslogProtocol23Format" queue.type="LinkedList" queue.filename="cwl_fwd" queue.saveOnShutdown="on" action.resumeRetryCount="-1")

TCP プレーンテキスト:

# Forward all logs to CloudWatch Logs via plaintext TCP action(type="omfwd" target="VPCE_DNS" port="1514" protocol="tcp" template="RSYSLOG_SyslogProtocol23Format" queue.type="LinkedList" queue.filename="cwl_fwd" queue.saveOnShutdown="on" action.resumeRetryCount="-1")

UDP:

# Forward all logs to CloudWatch Logs via UDP action(type="omfwd" target="VPCE_DNS" port="514" protocol="udp" template="RSYSLOG_SyslogProtocol23Format")

設定を追加したら、rsyslog を再起動します。

sudo systemctl restart rsyslog
注記

queue.type="LinkedList" および queue.saveOnShutdown="on"ディレクティブは、ディスクアシストキューイングを有効にします。VPC エンドポイントへの接続が一時的に失われた場合、rsyslog はメッセージをローカルにバッファし、配信を再試行します。

施設または重要度によるフィルタリング:

特定のメッセージのみを送信するには、アクションの前にフィルターを追加します。

# Send only auth messages via TCP+TLS auth,authpriv.* action(type="omfwd" target="VPCE_DNS" port="6514" protocol="tcp" StreamDriver="gtls" StreamDriverMode="1" StreamDriverAuthMode="x509/certvalid" template="RSYSLOG_SyslogProtocol23Format")

syslog-ng

syslog-ng は、ネットワークアプライアンスとエンタープライズ Linux システムで一般的に使用されます。次の設定を に追加します/etc/syslog-ng/conf.d/cwl-syslog.conf

TCP + TLS:

destination d_cwl_syslog { network("VPCE_DNS" port(6514) transport("tls") tls( peer-verify(required-trusted) ca-dir("/etc/ssl/certs") ) ); }; log { source(s_sys); destination(d_cwl_syslog); };

TCP プレーンテキスト:

destination d_cwl_syslog { network("VPCE_DNS" port(1514) transport("tcp") ); }; log { source(s_sys); destination(d_cwl_syslog); };

UDP:

destination d_cwl_syslog { network("VPCE_DNS" port(514) transport("udp") ); }; log { source(s_sys); destination(d_cwl_syslog); };

設定を追加したら、syslog-ng を再起動します。

sudo systemctl restart syslog-ng

クイック検証

VPC エンドポイントに到達できるホストから次のコマンドを使用して、接続を検証します。

TCP プレーンテキスト (ポート 1514):

echo "<134>1 $(date -u +%Y-%m-%dT%H:%M:%SZ) myhost myapp 1234 - - Hello from syslog" | \ nc VPCE_DNS 1514

TCP + TLS (ポート 6514):

echo "<134>1 $(date -u +%Y-%m-%dT%H:%M:%SZ) myhost myapp 1234 - - Hello TLS syslog" | \ openssl s_client -connect VPCE_DNS:6514 -quiet -no_ign_eof

UDP (ポート 514):

echo "<134>1 $(date -u +%Y-%m-%dT%H:%M:%SZ) myhost myapp 1234 - - Hello UDP syslog" | \ nc -u -w1 VPCE_DNS 514

テストメッセージを送信したら、CloudWatch Logs で配信を確認します (通常は 10~20 秒以内)。

aws logs filter-log-events \ --log-group-name /syslog/my-devices \ --start-time $(date -d '5 minutes ago' +%s000 2>/dev/null || echo $(($(date -v-5M +%s) * 1000))) \ --region $REGION

ネットワークアプライアンス

ほとんどのファイアウォール、ルーター、スイッチは、送信先 IP アドレスとポートを指定して外部 syslog サーバーの設定をサポートしています。VPC エンドポイント ENI のプライベート IP アドレス (エンドポイントの下の Amazon VPC コンソールで表示) と、サポートされているポート (6514、1514、または 514) のいずれかを使用します。

特定の設定構文については、デバイスのドキュメントを参照してください。設定するキー設定は次のとおりです。

  • サーバーアドレス – VPC エンドポイントの DNS 名または ENI プライベート IP アドレス。

  • ポート – 6514 (TCP+TLS)、1514 (TCP)、または 514 (UDP)。

  • プロトコル – TCP (推奨) または UDP。

  • 形式 – RFC 5424 (推奨) または RFC 3164 (レガシー)。どちらもサポートされています。

TLS 証明書の信頼

ポート 6514 の TLS 接続は、Amazon Trust Services によって発行された AWSマネージド証明書を使用します。Amazon Trust Services ルート証明書は標準の CA トラストストアに含まれているため、ほとんどのオペレーティングシステムと syslog デーモンはこの証明書を自動的に信頼します。

デバイスがデフォルトで証明書を信頼しない場合は、https://www.amazontrust.com/repository/ から Amazon Trust Services ルート証明書をダウンロードし、デバイスの CA トラストストアに追加します。