Команда терминала для отображения НЕ ПОДКЛЮЧЕННЫХ сетевых интерфейсов

Краткий ответ: нельзя.

Длинный ответ: Дистрибутив Linux содержит несколько различных программ, которые составляют всю операционную систему, а именно ядро, coreutils, некоторую оболочку и другие утилиты.

У вас есть два способа проверить, безопасно ли использование дистрибутива:


1. Прочтите каждый исходный код самостоятельно.

Вам нужно будет прочитать очень много кода: ядро ​​составляет ~ 210K LOC (строк кода) - теперь добавьте драйверы (также много LOC), coreutils, базовые программы ... Это работа на многие годы. И это по-прежнему не гарантирует, что оно не является вредоносным - вы можете что-то пропустить, это может быть запутано или связано с аппаратной ошибкой.

Кроме того, безопасность - это нечто большее, чем просто злонамеренность. Вы можете (отчасти) получить приличный уровень уверенности в отсутствии вредоносного кода, но вы (почти) никогда не можете быть уверены, что ваша программа действительно безопасна. Такие вещи, как HeartBleed и ShellShock просто случаются; никто не может им помешать.

2. Доверяйте другим

Это более разумная попытка.Вы выбираете группу людей, которым доверяете, и используете их программы, веря в их добрую волю. Вы можете перейти на страницу Фонда свободного программного обеспечения - эти люди серьезно относятся к своей конфиденциальности и свободе. Они одобряют только ограниченные дистрибутивы, которые являются полностью бесплатными и открытыми программами, поэтому вы можете прочитать его исходный код. Их не так много людей, поэтому поддержка может быть ограничена, но это хорошая ставка.

Вы также можете доверять другим людям - например, разработчикам Gentoo, Debian или Fedora (или любого другого дистрибутива). Они собирают свои дистрибутивы, объединяют некоторые программы и выпускают их - может быть, у них нет плохих намерений?


Личное примечание: я считаю безопасность, конфиденциальность и свободу важными ценностями. Тем не мение; есть грань между параноиком и заботой об этих ценностях. RMS параноик; это не обязательно плохо, потому что его голос громкий и то, что он говорит, ясно. Многие люди начинают заботиться о свободе благодаря RMS.

Тем не менее, все это не гарантирует безопасности. Закон Линуса не так прост, и он не всегда работает. Многие думают, что из-за того, что исходный код открыт, его читают другие, поэтому им нет необходимости читать исходный текст самим. Остается небольшая группа, прочитавшая код, и еще меньшая группа тех, кто его понял. Это все же лучше, чем правильность, но не так безопасно, как рекламируется.

Если вы хотите быть в полной безопасности, выключите компьютер и разберите его. Это единственный способ быть уверенным на 100%.

2
06.04.2018, 23:06
3 ответа

Можно просто:

$ ip link show

для списка интерфейсов, включая их статус. Вы можете отфильтровать результаты для устройств, которые не используются, пропустив grep DOWNпосле команды ip:

$ ip link show | grep DOWN
3
27.01.2020, 21:53
ip link show |
awk '/^[1-9]/ && $0 !~ "LOWER_UP" { inf=$2; sub(":","",inf); print inf; }' |
while read iface; do
    [[ $(readlink /sys/class/net/$iface) =~ devices/virtual ]] || echo $iface
done

Первая часть(ip link show | awk)получает все интерфейсы, для которых драйвер L2 сообщает, что они подключены. Вторая часть отбрасывает все виртуальные интерфейсы, потому что «не подключен» для них мало что значит.

2
27.01.2020, 21:53

Вы можете проверить состояние сетевого интерфейса из файла /sys/class/net/$interface/carrier.(1= подключен, 0= отключен)

Чтобы получить отключенный сетевой интерфейс:

for i in $( ls /sys/class/net );do 
    if grep -q 0 /sys/class/net/$i/carrier; then
        echo $i; 
    fi
done
1
27.01.2020, 21:53

Теги

Похожие вопросы