1 votes

Erreur de permission d'écriture de TCPdump lors de l'utilisation de l'option -w

J'ai rencontré une erreur très bizarre, je lance tcpdump en tant que root et je veux enregistrer la sortie, lorsque je fais

tcpdump -i eth0 -w logs/local.dump

cela fonctionne bien, mais lorsque je définis le chemin de sortie comme ci-dessous, j'obtiens une erreur de permission :

tcpdump -i eth0 -w /mnt/local.dump

Les permissions du dossier 'logs' qui se trouve dans /home/ubuntu sont de 755 et root:root, et de même pour /mnt la permission est de 755 et root:root. Mais je ne comprends pas pourquoi j'obtiens l'erreur de permission lorsque je définis la sortie comme /mnt/local.dump.

3voto

martin Points 49

Je n'ai pas pu reproduire les symptômes que vous décrivez sur Ubuntu 14.04. Mais j'ai vu ces symptômes sur des versions antérieures d'Ubuntu.

J'ai découvert que la raison en était que SELinux était configuré pour restreindre l'endroit où les tcpdump était autorisé à écrire.

La solution que j'ai trouvée à l'époque consistait à copier /usr/sbin/tcpdump a /root/bin/tcpdump et utiliser cette copie à la place.

1voto

Hazok Points 113

J'ai rencontré le même problème sous Ubuntu. Il semble que tcpdump supprime les permissions après l'exécution, d'après la réponse acceptée pour cette question :

tcpdump échoue avec une permission refusée sur centos lors de l'utilisation de l'option rotated file.

Je n'ai commencé à rencontrer ce problème de permission que lorsque j'ai commencé à jouer avec les options -C pour limiter la taille des fichiers. Même en supprimant le fichier d'origine que j'avais en -w, les permissions n'ont pas été rétablies, pas plus qu'en changeant le -w pour un autre fichier dans le même répertoire.

Ce qui a fonctionné, c'est le changement de répertoire vers un endroit qui appartenait à root et qui avait des restrictions peu strictes pour le répertoire cible et les chemins d'accès des parents.

Je ne suis pas sûr de ce que tcpdump fait sous le capot pour causer ce problème, je pourrais creuser un peu plus à un autre moment. Je pense qu'il pourrait mettre en cache quelque chose et une fois que vous essayez l'option de fichier rotatif, si vos permissions ne sont pas configurées correctement, cela brisera également les options de fichier non rotatif.

1voto

Changer les .pcapng in .pcap a également fonctionné pour moi

...$ tcpdump -i enp43s0f1 -c 10 -w logs/temp.pcapng
tcpdump: logs/temp.pcapng: Permission denied
...$ tcpdump -i enp43s0f1 -c 10 -w logs/temp.pcap
tcpdump: listening on enp43s0f1, link-type EN10MB (Ethernet), capture size 262144 bytes
^C0 packets captured
0 packets received by filter
0 packets dropped by kernel

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X