Как организовать управление группой ПК
Материал из IT в школе
Версия от 22:31, 8 декабря 2022; Kekaloav (обсуждение | вклад)
Найти Linux ПК в сети
Поиск осуществляется по наличию открытых портов 22 (ssh) и 631 (cups)
#!/bin/bash
nmap -n --stats-every 1s -p 22,631 172.xx.xx.0/23 | grep -B 5 "631/tcp open" | grep -B 4 "22/tcp open" | grep 172 | sed 's/Nmap scan report for //' | grep -v Nmap > hosts.txt
hosts.txt - список имен или адресов компьютеров
Установить ключи для root доступа по ssh
#!/bin/bash
ssh-keygen -t ed25519
SSHKEY=`cat ${HOME}/.ssh/ed_id22519.pub`
ROOTPASS="12345678"
USER="user"
PASS="12345678"
for i in `cat hosts.txt`
do
(sleep 1;echo ${ROOTPASS};sleep 1; echo "${SSHKEY}" >> /root/.ssh/autorized_hosts ; echo exit; sleep 1; echo exit) | sshpass -p ${USERPASS} ssh -oStrictHostKeyChecking=no ${USER}@${i} su -
done
Поменять пароли
при наличии ssh доступа по ключу к root
hosts.txt - список имен или адресов компьютеров
#!/bin/bash
USER="root"
PASS="12345678"
for i in $(cat hosts.txt); do ssh -oStrictHostKeyChecking=no root@$i 'chpasswd <<<"${USER}:${PASS}"'; done