

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

# syslog デバイスの設定
<a name="CWL_Syslog_DeviceConfig"></a>

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
<a name="CWL_Syslog_DeviceConfig_Rsyslog"></a>

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
<a name="CWL_Syslog_DeviceConfig_SyslogNg"></a>

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
```

## クイック検証
<a name="CWL_Syslog_DeviceConfig_QuickTest"></a>

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
```

## ネットワークアプライアンス
<a name="CWL_Syslog_DeviceConfig_NetworkDevices"></a>

ほとんどのファイアウォール、ルーター、スイッチは、送信先 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 証明書の信頼
<a name="CWL_Syslog_DeviceConfig_TLS"></a>

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

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