Чтобы сделать ifconfig
в линуксе и поменять IP и VIP нужны ли root привилегии?
Или это тоже можно сделать через некорневую учетную запись?
Вам не нужен root-доступ для использования ifconfig
только для изменения IP-адресов CAP_NET_ADMIN. Создадим копию ifconfig
с участием CAP_NET_ADMIN
позволил увидеть это:
cp /sbin/ifconfig .
sudo setcap cap_net_admin=eip ./ifconfig
./ifconfig eth0 1.2.3.4 # succeeds
# Wouldn't want to leave this copy of ifconfig around,
# It's a security hole!
rm ifconfig
Да, вы должны быть root для использования ifconfig, поскольку он обычно находится в /usr/sbin
или /sbin
каталог. Не являясь корневым, двоичный файл ifconfig отсутствует даже в вашей переменной среды PATH. Итак, вы должны быть root или sudo нужно настроить. Но современный способ - использовать ip
полезность от iproute2
пакет. Вы можете использовать его под непривилегированным пользователем, чтобы увидеть информацию о ссылках, интерфейсах и маршрутизации. Однако для изменения настроек вы должны быть root.
Это легко проверить:
% ifconfig lo 1.2.3.4
SIOCSIFADDR: Permission denied
SIOCSIFFLAGS: Permission denied
Так что да, для этого нужен рут.