Как я узнаю IP всех терминалов, подключенных к моей LAN, и выполняю файл сценария во всех терминалах одновременно. Я знаю об имени и пароле обычного пользователя всех терминалов. И я не sudo пользователь. В основном я хочу к SSH во все терминалы и запускаю скрипт автоматически.
Вам была бы нужна общедоступная/частная пара ключей для этого подхода, или Вы будете вынуждены ввести пароль для каждого хоста/IP. Я использовал бы nmap и считал бы вывод xml для открытых портов. Я слишком ленив для исследования кода для этой части. Если у Вас есть IP-адреса, Вы можете удаленный выполнять свой локальный сценарий в цикле.
for ip in ips; do
ssh user@$ip 'bash -s' < local_script.sh
done
Нахождение компьютеров
1), Если Ваш компьютер был подключен к сети некоторое время, можно сделать команда arp. Прочитайте страницу справочника с man arp
Пример:
arp -a
2) можно проверить с помощью ping-запросов широковещательный адрес и видеть, какие машины отвечают. Следует иметь в виду, что это только работает, если машина онлайн и также ранее не настроена для игнорирования трафика ping. Обычно широковещательная передача заканчивается.255. Найдите свой адрес с ifconfig и затем проверьте с помощью ping-запросов широковещательную передачу.
ifconfig
ping x.x.x.255
Выполнение Сценария
настоящей проблемой является сценарий. Если Вы - администратор, у Вас должен уже быть этот доступ. Необходимо быть пользователем на каждой машине, на которой Вы хотите выполнить сценарий. Это означает, что у Вас должна быть своя собственная учетная запись с надлежащими учетными данными, или Вы должны сделать, чтобы законный администратор считал на каждой машине для обслуживания и обслуживания. При условии, что Вы уже записали сценарий, Вы могли затем развернуть его на всех Ваших терминалах и выполниться.