Ich verwende eine vserver-Umgebung mit mehreren virtuellen Maschinen. Eine einzelne VM hat das folgende Problem:
$ 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
Beachten Sie, dass Ping sowohl auf dem Host-Computer als auch auf allen anderen VM-Hosts einwandfrei funktioniert.
Hat jemand eine Idee, mir zu helfen, bitte?
permissions
virtual-machines
ping
rexkogitans
quelle
quelle
/bin/ping
auf den anderen Rechnern set-uid? Ist TCP / IP auf dieser VM korrekt eingerichtet? Funktionieren andere Dinge wie DNS, Traceroute, HTTP?Antworten:
TL; DR-Version: Neuinstallation
iputils-ping
Ich habe online gesehen, wo die Verwendung vorgeschlagen wurde
Dadurch kann der Benutzer jedoch die Vorspannung und die Flut ändern. Dies könnte dazu führen, dass ein BENUTZER entweder Ihren lokalen Computer oder einen anderen Computer oder Ihr Netzwerk denialisieren kann.
Ich habe versucht, was @ nabil-bourenane vorschlug , und neu installiert,
iputils-ping
wodurch das Problem für mich behoben wurde und das SUID-Bit nicht gesetzt ist.Wenn das SUID-Bit gesetzt ist, sieht es so aus
quelle
Die Lösung besteht darin, die Linux-Systemfähigkeiten so festzulegen, dass Raw-Sockets auf dem Host-Computer zulässig sind.
Da dies ein sehr v-serverspezifisches Problem ist, besteht die Lösung darin, eine einzeilige Datei mit dem Namen zu erstellen
/etc/vservers/VMNAME/bcapabilities
:und starten Sie die VM neu.
quelle
Entschuldigung, ich kann keinen Kommentar abgeben. Dieses Problem traf mich, nachdem ich ein Archiv eines funktionierenden Systems über eine minimale Installation extrahiert hatte.
Alle obigen Antworten funktionieren. Die von @Nabil Bourenane und @Linx vorgeschlagene Methode wird jedoch aus Sicherheitsgründen bevorzugt. Um den Kommentar von @ rexkogitans zu beantworten, zitiere ich hier aus iputils-ping.postinst (/ var / lib / dpkg / info / ...)
Das heißt, wenn Sie iputils-ping konfigurieren, versuchen Sie zuerst setcap. Wenn dies fehlschlägt, verwenden Sie chmod u + s. Deshalb funktioniert die Neuinstallation von iputils-ping.
quelle
setcap cap_net_raw+p $(which ping)
wie Root es behebt. In diesem Blog-Beitrag gibt es eine ausführliche Erklärung: Linux Capabilities and Ping