我正在多个虚拟机上运行虚拟机环境。 单个VM有以下问题:
$ 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
请注意,在主机上以及所有其他虚拟机主机上,Ping工作正常。
有没有人有任何想法来帮助我?
TL; DR版本:重新安装iputils-ping
我已经在网上看到它被build议使用的地方
chmod u+s $( which ping );
但是,这将允许用户改变预加载和洪水。 这可能会导致用户能够拒绝服务本地机器或其他机器或您的networking。
我尝试了@ nabil-bourenane的build议 ,重新安装iputils-ping
为我解决了这个问题,没有设置SUID位。
username@server:~$ ls -l $( which ping ); -rwxr-xr-x 1 root root 44104 Nov 8 2014 /bin/ping
如果SUID位被设置,它将看起来像
username@server:~$ ls -l $( which ping ); -rwsr-xr-x 1 root root 44104 Nov 8 2014 /bin/ping
解决办法是设置Linux系统function,以允许主机上的原始套接字。
由于这是一个非常特定于v服务器的问题,因此解决scheme是创build一个名为/etc/vservers/VMNAME/bcapabilities
:
NET_RAW
并重启虚拟机。