web-dev-qa-db-fra.com

Comment enverriez-vous Syslog * en toute sécurité * sur l'Internet public?

J'ai donc quelques serveurs que je voudrais me connecter de manière centralisée, mais je ne veux évidemment pas transmettre les données en cas de sécurité sur Internet.

J'ai essayé Syslog-ng mais je ne peux pas le faire fonctionner de manière sécurisée, un ssh -L PORT:localhost:PORT user@Host Le tunnel SSH ne fonctionnera pas car je pense que les journaux semblent provenir de la machine locale, et un VPN semble un peu comme surkill.

21
JamesHannah

Avez-vous essayé Syslog-NG et Stunnel?

  1. Installer stunnel
  2. Créez des fichiers de certificat pour Syslog-NG sur Stunnel
  3. Configurez Stunnel pour une utilisation avec Syslog-NG
  4. Installer SysLog-NG
  5. Configurer syslog-ng
  6. TERMINÉ!

REMARQUE:

Stunnel ( http://www.stunnel.org ) est un programme qui vous permet de chiffrer arbitraire TCP connexions à l'intérieur SSL (Secure Sockets Layer) disponible sur UNIX et Windows. Stunnel peut vous permettre de sécuriser les démons et les protocoles non conscients de la SSL (comme POP, IMAP, LDAP, etc.) en offrant un scyptien offrant au cryptage, ne nécessitant aucune modification du code du démon.

19
KPWINC

Réponse courte: VPN

Cela peut sembler trop chers, mais c'est la bonne réponse et non celle compliquée à la mise en place.

12
Kevin Kuphal

RSYSLOG peut faire cela. Cryptage du trafic syslog avec TLS

9
Brian De Smet

Vous pouvez également consulter le tunnel sécurisé Kiwi gratuit http://www.solarwinds.com/products/kiwi_syslog_server/related_tools.aspx

2
Ken Davis

Je n'enverrais probablement pas de données de journal sur Internet en premier lieu, mais installez un loghost centralisé à l'emplacement (s) si nécessaire.

Ces jours-ci, je préfère Rsyslog à Syslog-ng. Il s'agit d'une extrémité de remplacement près de la goutte de remplacement et présente une variété de papiers et de Howtos, dont une sur l'envoi données cryptées avec TLS/SSL (à partir de V3.19.0), des versions plus anciennes peuvent encore tilisez Stunnel .

Dans mon expérience avec RSYSLOG et SysLog-NG, RSYSLOG remporte une facilité de configurabilité, d'autant plus que vous pouvez utiliser votre syslog.conf existant et ajouter à ce sujet.

Pour ce que ça vaut, RSYSLOG est le démon Syslog par défaut sur Debian Lenny (5.0), bunt et Fedora .

1
jtimberman

Utilisez SysLog-NG ou un autre démon syslog qui prend en charge TCP.

Envoyez les données sur un tunnel crypté. N'utilisez pas de tunnel SSH, c'est trop fidèlement.

UDP Syslog est un protocole hébergé historique qui aurait dû être éliminé il y a longtemps. Si votre fournisseur le fournit par défaut, veuillez vous appuyer sur eux.

Si votre fournisseur ne fournit pas une solution syslog qui signe chaque message avant de l'envoyer, appuyez dessus sur eux.

Le logiciel est facile, les algorithmes sont faciles. La politique de l'obtenir installé par défaut n'est pas.

1
carlito

J'utilise RSYSLOG avec TLS. Il existe un travail de préparation hors de portée: Déployez une CA locale, ajoutez le certificat de CA à chaque hôte, générez des certificats individuels pour chaque hôte. (Maintenant, tous vos hôtes peuvent parler SSL les uns aux autres)

J'ai aussi besoin d'installer rsyslog-gnutls:

Sudo apt-get install rsyslog-gnutls

J'ai également restreint la connexion SysLog sortante (TCP 514) afin que mes hôtes ne puissent se connecter à mon serveur RSSLOG et créer un blancheur entrant sur le côté du serveur RSYSLOG afin que mes hôtes puissent se connecter.

dans /etc/rsyslog.conf

# make gtls driver the default
$DefaultNetstreamDriver gtls

# certificate files
$DefaultNetstreamDriverCAFile /etc/my_keys/internal_CA.crt
$DefaultNetstreamDriverCertFile /etc/my_keys/my_hostname.crt
$DefaultNetstreamDriverKeyFile /etc/my_keys/my_hostname.key

$ActionSendStreamDriverAuthMode x509/name
$ActionSendStreamDriverPermittedPeer my_syslog_server.com
$ActionSendStreamDriverMode 1 # run driver in TLS-only mode
*.* @@my_syslog_server.com:514 # forward everything to remote server

Il semble que la configuration Syslog-ng est encore plus facile. (Bien que je n'ai pas essayé cela) Syslog-ng /etc/syslog-ng/conf.d/99-graylog2.conf

destination remote-server {  
    tcp ("my_syslog_server.com" port(514)
        tls(ca_dir("/etc/my_keys/"))
    );
};
0
jorfus