J'exécute un environnement vserver avec plusieurs machines virtuelles. Une seule machine virtuelle a le problème suivant:
$ ping 8.8.8.8
ping: icmp open socket: Operation not permitted
$ ls -l $(which ping)
-rwsr-xr-x 1 root root 30736 2007-01-31 00:10 /bin/ping
$ whoami
root
$ mount
/dev/hdv1 on / type ufs (defaults)
none on /proc type proc (0)
none on /tmp type tmpfs (size=16m,mode=1777)
none on /dev/pts type devpts (gid=5,mode=620)
$ uname -a
Linux v-web1 2.6.27.55-vs2.3.0.36.9 #1 SMP Tue Apr 28 11:35:00 CEST 2015 i686 GNU/Linux
Notez que sur la machine hôte ainsi que sur tous les autres hôtes VM, Ping fonctionne correctement.
Quelqu'un a-t-il une idée pour m'aider, s'il vous plaît?
permissions
virtual-machines
ping
rexkogitans
la source
la source
/bin/ping
set-uid est -il sur les autres machines? TCP / IP est-il correctement configuré sur cette machine virtuelle? Est-ce que d'autres choses fonctionnent comme DNS, traceroute, HTTP?Réponses:
Version TL; DR: réinstaller
iputils-ping
J'ai vu en ligne où il a été suggéré d'utiliser
Cependant, cela permettra à l'utilisateur de modifier la précharge et l'inondation. Ce qui pourrait entraîner un UTILISATEUR en mesure de dénier le service soit votre machine locale ou une autre machine ou votre réseau.
J'ai essayé ce que @ nabil-bourenane a suggéré , en réinstallant
iputils-ping
ce qui a résolu le problème pour moi et n'a pas le bit SUID défini.Si le bit SUID est défini, il ressemblera à
la source
getcap /bin/ping
retour:/bin/ping = cap_net_admin,cap_net_raw+p
. Maintenant, la question est: pourquoi il a perdu ses capacités.rpm --verify iputils
a montré que ping, arping et clockdiff ont tous montré que les paramètres de plafond avaient changé (avant la réinstallation).La solution consiste à définir les capacités du système Linux pour autoriser le socket brut sur la machine hôte.
Puisqu'il s'agit d'un problème très spécifique au serveur virtuel, la solution consiste à créer un fichier à ligne unique nommé
/etc/vservers/VMNAME/bcapabilities
:et redémarrez VM.
la source
Désolé, je ne peux pas commenter. Ce problème m'a frappé après avoir extrait une archive d'un système qui fonctionne sur une installation minimale.
Toutes les réponses ci-dessus fonctionnent. Mais celui proposé par @Nabil Bourenane et @Linx est préféré pour la sécurité. Pour répondre au commentaire de @ rexkogitans, je cite ici iputils-ping.postinst (/ var / lib / dpkg / info / ...)
qui dit essentiellement lors de la configuration de iputils-ping, essayez d'abord setcap puis si cela échoue, utilisez chmod u + s. C'est pourquoi la réinstallation d'iputils-ping fonctionne.
la source
setcap cap_net_raw+p $(which ping)
comme root le corrige. Il y a une explication approfondie sur ce billet de blog: Linux Capabilities and Ping