Syslog'u TLS ile şifreleme

Bu sayfada

  • Amaç
  • Syslog'u TLS ile şifrelemenin adımları
  • -Kendinden imzalı bir sertifika oluşturma
  • -Her makine için makine sertifikası oluşturma
  • -Sertifikaların dağıtımını yapma
  • -TLS kullanarak uzak sunucuyu TCP üzerinden iletişim kuracak biçimde yapılandırma
  • -İstemci makinelerini yapılandırma
  • -Bir günlük yönetimi çözümünü kullanma

Amaç

TLS ile şifreleme yoluyla syslog sunucularında uzaktan günlük kaydını güvenli hale getirmek.

Syslog trafiği, uzak sunucu ile istemciler arasında karşılıklı kimlik doğrulamasının gerçekleştirilmesini sağlayan TLS/SSL'nin kullanılması yoluyla şifrelenebilir, bu da bağlantıyı izinsiz izleme saldırılarının önlenebilmesini sağlar. Aşağıdaki adımlarda bunun nasıl yapılacağı açıklanmaktadır.

Lütfen aşağıdakileri sağladığınızdan emin olun:

  • TLS tarafından iletişim için kullanılan bağlantı noktası 6514 giden noktasının güvenlik duvarınızda ve ağda açık olduğundan emin olun.
  • GTLS sürücüsünü kullandığımızdan, hem istemcilere hem de uzak sunucuya gnuTLS yüklenir.
  • Üçüncü bir taraf hiçbir koşul altında sertifika anahtarlarına erişemez.

Syslog'u TLS ile şifrelemenin adımları

Kendinden imzalı bir sertifika oluşturma

Aşağıda, gnuTLS ile uzak syslog sunucusunda kendinden imzalı bir sertifika oluşturmanın adımları açıklanmaktadır.

  • Bu komutu kullanarak özel bir anahtar oluşturun:
  • certtool --generate-privkey --outfile ca-key.pem
  • Dosyayı kök kullanıcı dışındaki kimsenin erişemeyeceği şekilde ayarlayın.
  • chmod 400 ca-key.pem
  • Kendinden imzalı CA sertifikasını oluşturmak için aşağıdaki komutu kullanın:
  • certtool --generate-self-signed --load-privkey ca-key.pem --outfile ca.pem

Sizden istendiğinde, ayrıntıları uygun şekilde girin. Bu aşamada Sertifika Yetkilisi (CA) ayarlanmış olacaktır.

Her makine için makine sertifikası oluşturma

  • Özel bir anahtar oluşturun ve bu anahtarı key.pem dosyasında saklayın.
  • certtool --generate-privkey --outfile key.pem --bits 2048
  • Aşağıdaki komutu kullanarak makine sertifikasını oluşturun. request.pem dosyasının adı, makineye özgü olarak belirlenir. Örneğin, makineniz server1 olduğunda, ilgili dosya server1-request.pem olarak adlandırılabilir.
  • certtool --generate-request --load-privkey key.pem --outfile request.pem
  • Aşağıdaki komut ile makine sertifikasını CA'nın özel anahtarını kullanarak imzalayın
  • certtool --generate-certificate --load-request request.pem --outfile cert.pem --load-ca-certificate ca.pem --load-ca-privkey ca-key.pem

    Sizden istendiğinde, gereken şekilde ayrıntıları girin.

Sertifikaların dağıtılması

  • Aşağıdaki dosyaların tüm sunucu ve istemci makinelerine kopyalanması gerekir:
    • ca.pem'in bir kopyası
    • cert.pem
    • Key.pem

Kök sunucuda bu anahtarların depolanacağı bir dizin oluşturun.

Bu dosyalara kök kullanıcı dışında hiçbir kullanıcı erişememelidir.

TLS kullanarak uzak sunucuyu TCP üzerinden iletişim kuracak biçimde yapılandırma

  • Aşağıda verilen kodla yeni /etc/rsyslog.d/logserver.conf yapılandırma dosyasını oluşturun:
  • module(load="imuxsock") # local messages
    module(load="imtcp" # TCP listener
    StreamDriver.Name="gtls"
    StreamDriver.Mode="1" # run driver in TLS-only mode
    StreamDriver.Authmode="anon"
    )
    # make gtls driver the default and set certificate files global(
    DefaultNetstreamDriver="gtls"
    DefaultNetstreamDriverCAFile="https://www.manageengine.com/path/to/contrib/gnutls/ca.pem"
    DefaultNetstreamDriverCertFile="https://www.manageengine.com/path/to/contrib/gnutls/cert.pem"
    DefaultNetstreamDriverKeyFile="https://www.manageengine.com/path/to/contrib/gnutls/key.pem"
    )
    # start up listener at port 6514
    input( type="imtcp"
    port="6514"
    )

İstemci makinelerini yapılandırma

  • Aşağıdaki kodla yeni /etc/rsyslog.d/logclient.conf dosyasını oluşturun:
  • global(
    DefaultNetstreamDriver="gtls"
    DefaultNetstreamDriverCAFile="https://www.manageengine.com/path/to/contrib/gnutls/ca.pem"
    DefaultNetstreamDriverCertFile="https://www.manageengine.com/path/to/contrib/gnutls/cert.pem"
    DefaultNetstreamDriverKeyFile="https://www.manageengine.com/path/to/contrib/gnutls/key.pem"
    )
    # set up the action for all messages action(
    type="omfwd"
    target="central.example.net"
    protocol="tcp"
    port="6514"
    StreamDriver="gtls"
    StreamDriverMode="1"
    # run driver in TLS-only mode StreamDriverAuthMode="x509/name"
    StreamDriverPermittedPeers="central.example.net"
    )

Bu şekilde, sisteminiz syslog'ların şifreli iletimine uygun biçimde ayarlanmış olacaktır.

Bir günlük yönetimi çözümünü kullanma

Kapsamlı bir günlük yönetimi çözümü olan EventLog Analyzer, ağ genelindeki cihazlardan günlük verilerini toplar, analiz eder, bunların korelasyonunu belirler, bunlar için arama yapar ve bu verileri arşivler. Çözüm, farklı güvenlik protokollerinin kullanılması yoluyla toplama ve iletim sırasında günlük verilerinin güvenliğini sağlar. Buradan EventLog Analyzer hakkında daha fazla bilgi edinebilirsiniz.

Sırada ne var?

EventLog Analyzer ile syslog verilerinizin güvenliğini artırın