https://wiki.debian.org/NetworkConfiguration
Команда | Описание |
---|---|
ip -4 -c a | Посмотреть текущий IP адрес, только ip4 и с выделением цвета |
ip addr add 192.168.1.35/24 dev eth0 | Добавить дополнительный ip адрес для интерфейса eth0 |
Вывод в консоли внешнего адреса, PTR, провайдера сервера и страны на основе ipinfo.io
echo -e "\n\e[1;32m $(curl -s ipinfo.io/ip) \e[1;33m $(curl -s ipinfo.io/hostname) \e[1;36m $(curl -s ipinfo.io/org)\e[1;35m $(curl -s ipinfo.io/country) \e[0m\n "
или
MyIP=$(curl -s ipinfo.io/ip) \\ echo -e "\n\e[1;32m $MyIP \e[1;33m $(dig -x $MyIP +short) \e[1;36m $(curl -s ipinfo.io/org)\e[1;35m $(curl -s ipinfo.io/country) \e[0m\n "
или
curl -s http://checkip.dyndns.org | sed 's/[a-zA-Z<>/ :]//g'
Отправляется запрос на IP-адрес домена myip.opendns.com на DNS-сервер resolver1.opendns.com. Этот сервер запрограммирован таким образом, что при запросе этого специального домена в ответ отправляется IP, с которого поступил запрос.
dig +short myip.opendns.com @resolver1.opendns.com
sudo vim /etc/network/interfaces
auto lo iface lo inet loopback allow-hotplug wlan0 iface eth0 inet dhcp auto eth0 iface eth0 inet manual #manual - нет настроек по умолчанию и может настриватся сценариями из /etc/network/if-*.d.| auto eth1 allow-hotplug eth1 iface eth1 inet static address 192.168.2.9 netmask 255.255.255.0 network 192.168.2.0 broadcast 192.168.2.255 gateway 192.168.2.1 dns-domain example.com dns-nameservers 8.8.8.8
Посмотреть расположение файла сетевых настроек
sudo nmcli -f NAME,DEVICE,FILENAME connection show
или
sudo vim /etc/sysconfig/network-scripts/ifcfg-e[имя сетевого устройства]
#Old Centos 7 TYPE=Ethernet PROXY_METHOD=none BROWSER_ONLY=no BOOTPROTO=static #BOOTPROTO=dhcp DEFROUTE=yes IPV4_FAILURE_FATAL=no NAME=ens33 UUID=f5e4118c-dc69-4bc4-9221-74f42ab12970 DEVICE=ens33 ONBOOT=yes HWADDR="ac:1f:6b:f6:3b:7e" #Можно не указывать IPADDR=192.168.1.11 NETMASK=255.255.255.0 #PREFIX="24" GATEWAY=192.168.1.1 DNS1=192.168.1.1 DNS2=8.8.8.8
Адрес DNS должен автоматом попасть в /etc/resolv.conf
Команда | Описание |
---|---|
sudo systemctl restart NetworkManager | рестарт сети после изменения файла конфигурации |
nmcli | Утилита для управления NetworkManager и получения статуса сети, подробнее по ссылке ниже |
nmcli d | просмотр статуса текущего подключения |
nmtui | настройка сети через графику |
Клиенты могут брать настройки DNS из
Windows шлет DNS запросы одновременно на все сервера, но обязательно дожидается ответа или таймаута от 1-го. Linux сначала обращается к 1-му DNS в списке и только в случае ошибки переходит к следующему.
Команда | Описание |
---|---|
dig -v | Посмотреть версию |
sudo apt-get install dnsutils | Установка в Debian / Ubuntu |
sudo yum install bind-utils | Установка в CentOS / RedHat |
dig [server] [name] [type] | |
dig @8.8.8.8 google.com | запросить запись google.com у сервера 8.8.8.8 |
dig google.com ANY | Получить все записи |
dig google.com TXT | Получить TXT записи |
dig google.com +noall +answer | Получение детальной информации |
dig google.com +trace | Трассировка DNS запроса |
dig +noall +answer -x 172.217.14.23 | |
dig @8.8.4.4 mail.ru -t mx +short | получить MX записи для домена mail.ru в коротком виде |
Добавить в .bashrc
dig-color () { dig $* | awk ' !/^;/ { print "\033[1;32m"$0 } /^;[^;]/ { print "\033[1;35m"$0 } /^;;/ { print "\033[1;36m"$0 } END { print "\033[0m" } '; }
Информация о домене для почтового администратора.
#!/bin/bash #trap 'echo "# $BASH_COMMAND";read' DEBUG BLACK='\e[30m' RED='\e[31m' GREEN='\e[32m' YELLOW='\e[33m' BLUE='\e[34m' MAGENTA='\e[35m' CYAN='\e[36am' ENDCOLOR='\e[0m' LIGHTRED='\e[91m' LIGHTGREEN='\e[92m' LIGHTYELLOW='\e[93m' LIGHTBLUE='\e[94m' LIGHTMAGENTA='\e[95m' LIGHTCYAN='\e[96m' WHITE='\e[97m' BGRED='\e[41m' BGGREEN='\e[42m' BGYELLOW='\e[43m' BGMAGENTA='\e[45m' BGCYAN='\e[46m' BOLDGREEN="\e[1;${GREEN}m" ITALICRED="\e[3;${RED}m" PINK="\e[38;5;198m" BGPINK="\e[48;5;198m" echo -e "\n${WHITE}${BGRED}----- $* -----${ENDCOLOR}" echo -e "\n${BLACK}${BGGREEN}----------- A ----------${ENDCOLOR}${LIGHTGREEN}" dig $* A +short echo -e "\n${BLACK}${BGPINK}---------- MX ----------${ENDCOLOR}${PINK}" mxhosts=$(dig $* MX +short | sort|sed 's/ /_/') for mxserver in $mxhosts; do mxservername=$(echo $mxserver | sed -r 's/.*_(.*)\.$/\1/') echo -e "\n--- $mxserver --- " timeout 1 echo 'QUIT' | nc $mxservername 25 done echo -e "\n${BLACK}${BGYELLOW}------ MX->IP->PTR -----${ENDCOLOR}${YELLOW}" for i in `dig mx +short $*|cut -f2 -d ' '`; do iphost=`dig a +short $i` iplist=$(echo -e $iphost | sed ':a;N;$!ba;s/\n/ /g') echo -e "Host:\t$i\t\t$iplist" for y in $iphost;do ptrdns=`dig -x $y +short` # echo -e "\t$y\t\t$ptrdns" if [ -n "$ptrdns" ]; then echo -e "\t$y\t\t$ptrdns" echo -e "\t$ptrdns\t\t$(echo `dig a +short $ptrdns`|sed ':a;N;$!ba;s/\n/ /g')"; else echo -e "\t$y\t\tPTR not found" fi done done echo -e "\n${BLACK}${BGMAGENTA}--------- TXT ----------${ENDCOLOR}${LIGHTMAGENTA}" dig $* TXT +short |grep -e "spf" --color=never echo -e "\n${BLACK}${BGCYAN}--------- DMARC --------${ENDCOLOR}${LIGHTCYAN}" dig _dmarc.$* TXT +short echo -e "\033[0m" : 'Комментарий '
$ vim /etc/sysctl.conf
net.ipv6.conf.all.disable_ipv6 = 1 net.ipv6.conf.default.disable_ipv6 = 1 net.ipv6.conf.lo.disable_ipv6 = 1 net.ipv6.conf.eth0.disable_ipv6 = 1
Затем выполняем
$ ss -lnptu | sort $ sysctl -p
$ sudo vim /etc/default/grub
GRUB_CMDLINE_LINUX_DEFAULT="ipv6.disable=1 quiet splash"
$ sudo update-grub
Начиная с Debian 10 запрещено ручное изменение файла /etc/resolv.conf - для его модификации существует специальная служба resolvconf.
sudo apt-get install resolvconf -y sudo systemctl status resolvconf sudo systemctl start resolvconf.service sudo systemctl enable resolvconf.service sudo systemctl status resolvconf.service
sudo vim /etc/resolvconf/resolv.conf.d/head
nameserver 46.8.61.10 nameserver 46.8.61.20 nameserver 8.8.8.8
После проделанных действий запускаем команду ниже или отправляем сервер в ребут командой reboot
sudo resolvconf -u #Обновляет resolv.conf
На этом настройка NS и редактирование файла /etc/resolv.conf завершено. Проверяем что у нас в файле #cat /etc/resolv.conf
сброс кэша DNS. Он выполняется командой resolvectl flush-caches. При её выполнении в консоль не происходит никакого вывода
перезапуск службы через systemctl restart systemd-resolved.service
Команда | Описание |
---|---|
sudo apt install net-tools | Установка в Debian, Ubuntu and Mint |
sudo yum install net-tools | Установка в RHEL/CentOS/Fedora and Roc |
sudo netstat -an | grep ESTABLISHED | текущие соединения |
sudo netstat -ntlp | список IP, портов и сервисов |
sudo netstat -tulpn | grep LISTEN | Порты, которые слушает хост |
sudo ss -tulpn | |
sudo ss -tulpn | column -s' ' | Вывод в виде таблицы |
sudo ss -tulpn | grep :3306 |
Команда | Описание |
---|---|
sudo nc -zv 192.168.31.5 22 | Проверка доступности порта TCP |
sudo nc -ul 5555 | Поднимаем сервис на порте 5555 UDP, набираемые в клиенте буквы будут отображаться на сервере |
sudo nc -u 192.168.31.5 5555 | Проверка доступности порта UDP |
Команда | Описание | |
---|---|---|
ss -a | Список всех сокетов | |
ss -n4 | Отображение текущих установленных сессий, n - цифры, 4 - IP4 | |
ss -nlt4 | Текущие слущающие сессии, за которыми есть демон | |
sudo ss -altnp4 \ | grep sshd | Посмотреть на каком порту сидит sshd |
Команда | Описание |
---|---|
sudo zgrep 'Ban' /var/log/fail2ban.log* | Посмотреть список забаненных IP |
Команда | Описание |
---|---|
sudo tcpdump -i <имя интерфейса> udp port 53 | Проверить доступность порта наружу, в одном терминале запустить команду, в другом выполнить запрос |
sudo ip link set mtu 1500 <имя интерфейса>