Рубрики
kali \ virus \ rootkit \ вирусы \ защита

Убираем лишний шум при подключение хоста к сети

Смена имени хоста (hostname):


Смена имени хоста (hostname)
sudo hostnamectl set-hostname <новое_имя_хоста>
Пример:
sudo hostnamectl set-hostname mypc

Если команды hostnamectl нет, можно отредактировать файл:
vim /etc/hostname

Редактирование файла hosts
vim /etc/hosts 
Найдите строку с текущим именем хоста и замените его на новое. 
Она должна выглядеть примерно так:
--------------
127.0.0.1   localhost
127.0.1.1   mypc
-------------

Перезагружаем систему
reboot

Если у вас ультелиты systemctl все таки есть то можно так:
systemctl restart systemd-hostnamed

Отключение передачи имени хоста через DHCP

Изменение настроек DHCP-клиента:
vim /etc/dhcp/dhclient.conf
---------------------------
send host-name "";
---------------------------

Обновление настроек NetworkManager (если используете):
vim /etc/NetworkManager/NetworkManager.conf
-------------------------------------------
[main]
dhcp=dhclient

[dhcp]
send-hostname=false
-------------------------------------------

Перезапустите службу NetworkManager:
systemctl restart NetworkManager

Использование sed для автоматического редактирования файлов:

0. Изменение имени хоста:
Вот как можно внести изменения в файлы /etc/hostname, /etc/hosts, /etc/dhcp/dhclient.conf, и /etc/NetworkManager/NetworkManager.conf:
NEW_HOSTNAME="mypc"

# Изменение имени хоста в /etc/hostname
sudo sed -i "s/.*/$NEW_HOSTNAME/" /etc/hostname

# Изменение имени хоста в /etc/hosts
sudo sed -i "s/^(127.0.1.1s*).*/1$NEW_HOSTNAME/" /etc/hosts


1. Отключение передачи имени хоста в DHCP
Для /etc/dhcp/dhclient.conf:
sudo sed -i "/^send host-name/ s|.*|send host-name "";|" /etc/dhcp/dhclient.conf
sudo grep -q "^send host-name" /etc/dhcp/dhclient.conf || echo 'send host-name "";' | sudo tee -a /etc/dhcp/dhclient.conf
Для /etc/NetworkManager/NetworkManager.conf:
Убедимся, что параметры dhcp=dhclient и send-hostname=false добавлены:
sudo sed -i "/^[main]/,/^[/ s/^dhcp=.*/dhcp=dhclient/" /etc/NetworkManager/NetworkManager.conf
sudo sed -i "/^[dhcp]/,/^[/ s/^send-hostname=.*/send-hostname=false/" /etc/NetworkManager/NetworkManager.conf
# Добавляем секции, если их нет
sudo grep -q "^[main]" /etc/NetworkManager/NetworkManager.conf || echo -e "n[main]ndhcp=dhclient" | sudo tee -a /etc/NetworkManager/NetworkManager.conf
sudo grep -q "^[dhcp]" /etc/NetworkManager/NetworkManager.conf || echo -e "n[dhcp]nsend-hostname=false" | sudo tee -a /etc/NetworkManager/NetworkManager.conf

2. После внесения изменений перезапустите службы:
sudo systemctl restart systemd-hostnamed
sudo systemctl restart networking
sudo systemctl restart NetworkManager

Скрипт на баше:

#!/bin/bash

# Убедимся, что скрипт запускается с правами root
if [[ $EUID -ne 0 ]]; then
   echo "Этот скрипт необходимо запускать с правами root." 
   exit 1
fi

# Новое имя хоста
NEW_HOSTNAME="mypc"

# Файлы для редактирования
HOSTNAME_FILE="/etc/hostname"
HOSTS_FILE="/etc/hosts"
DHCLIENT_FILE="/etc/dhcp/dhclient.conf"
NETWORK_MANAGER_FILE="/etc/NetworkManager/NetworkManager.conf"

echo "1. Изменяем имя хоста..."
# Изменение имени хоста в /etc/hostname
sed -i "s/.*/$NEW_HOSTNAME/" "$HOSTNAME_FILE"

# Изменение имени хоста в /etc/hosts
sed -i "s/^(127.0.1.1s*).*/1$NEW_HOSTNAME/" "$HOSTS_FILE"

echo "2. Отключаем передачу имени хоста через DHCP..."
# Настройка /etc/dhcp/dhclient.conf
if grep -q "^send host-name" "$DHCLIENT_FILE"; then
    sed -i "/^send host-name/ s|.*|send host-name "";|" "$DHCLIENT_FILE"
else
    echo 'send host-name "";' >> "$DHCLIENT_FILE"
fi

# Настройка /etc/NetworkManager/NetworkManager.conf
if grep -q "^[main]" "$NETWORK_MANAGER_FILE"; then
    sed -i "/^[main]/,/^[/ s/^dhcp=.*/dhcp=dhclient/" "$NETWORK_MANAGER_FILE"
else
    echo -e "n[main]ndhcp=dhclient" >> "$NETWORK_MANAGER_FILE"
fi

if grep -q "^[dhcp]" "$NETWORK_MANAGER_FILE"; then
    sed -i "/^[dhcp]/,/^[/ s/^send-hostname=.*/send-hostname=false/" "$NETWORK_MANAGER_FILE"
else
    echo -e "n[dhcp]nsend-hostname=false" >> "$NETWORK_MANAGER_FILE"
fi

echo "3. Перезапускаем службы..."
# Перезапуск служб для применения изменений
systemctl restart systemd-hostnamed
systemctl restart networking
systemctl restart NetworkManager

echo "Изменения применены!"
echo "Проверка текущего имени хоста:"
hostnamectl

Проверка:

Убедитесь, что имя хоста изменилось:
hostnamectl

Проверьте файл /etc/hosts и /etc/hostname:
cat /etc/hosts
cat /etc/hostname

Проверка сетевого демона:
systemctl status networking

Слушаем трафик:
sudo tcpdump -i eth0 port 67 or port 68