metodika.site

Информационная безопасность и технологии связи

Практика


Разбиение сети на подсети одинакового размера (теория)

Деление IP сети на подсети при помощи маски легко и быстро. Наглядный способ!


Описание решения задачи можно прочитать в методических рекомендациях.

Дополнительно про: Что такое IP-адрес и маска подсети и зачем они нужны.

Пример и решение на Python:

«В компании настроена сеть с адресом 192.168.5.0 и с маской подсети 255.255.255.240.
Какое максимальное количество компьютеров может быть в одной подсети с указанной
маской?»

import ipaddress
net = ipaddress.ip_network(‘192.168.5.0/28’)#255.255.255.240 ->28
net.num_addresses — 2 #минус два — вычитаем саму сеть и широк. запрос
14
<- это ответ

ссылка на описание библиотеки import ipaddress


SQL за 20 минут

SQL запросы быстро. Часть 1

Урок 1. Первые SQL запросы

SQL за 13 минут (видео) youtube

Вся база SQL для начинающих за 1 час (видео) rutube

Попробуй SQL! (Поляков)

Тренажер SQL

__________________________________________


RSA простыми словами и в картинках

def Euclid(a, b):
    if b == 0:
        return a
    else:
        return Euclid(b, a % b)

P = int(input('Первое простое:'))
Q = int(input('Второе простое:'))
n = P * Q
F = (P - 1) * (Q - 1)

Ko = 0
for i in range(2,F):
	if Euclid(F, i) == 1:
		Ko = i
		break
i = 2
while i < n:
	if (i * Ko) % F == 1:
		Kc = i
		break
	i += 1

M = int(input ("Шифруем: "))

C = M**Ko % n
print ("Шифрование: C =",C)

Md = C**Kc % n
print ("Расшифрование: M =",Md)
Программа на Python с комментариями

def Euclid(a, b):
    if b == 0:
        return a
    else:
        return Euclid(b, a % b)

P = int(input('Первое простое:'))
Q = int(input('Второе простое:'))
n = P * Q
F = (P - 1) * (Q - 1)
print("Вычисляем функцию Эйлера F(n)=(p-1)*(Q-1)")
print ("F =",F)

# Use first simple number.
Ko = 0
for i in range(2,F):
	if Euclid(F, i) == 1:
		Ko = i
		break


print ("Выбираем значение открытого ключа Кo с соблюдением условий")
print ("1<Кo<F(n), Кo и F(n) – взаимно простые числа (их НОД=1)")
print ("Ko =",Ko, n)

i = 2
while i < n:
	if (i * Ko) % F == 1:
		Kc = i
		break
	i += 1

print ("Находим Kc =",Kc, n)

M = 0
M = int(input ("Шифруем: "))

C = M**Ko % n
print ("Шифрование: C =",C)

Md = C**Kc % n
print ("Расшифрование: M =",Md)


Теория


Распространённые TCP/UDP порты

33434 (TCP,UDP) — cредство трассировки сети Traceroute;

7 (TCP,UDP) — протокол ECHO — предназначен для тестирования связи путём отправки данных на сервер и получения от него их же в неизменном виде;

9 (TCP,UDP) — протокол DISCARD — предназначен для тестирования связи путём отправки данных на сервер, который отбрасывает принятое, не отправляя никакого ответа;

20 (TCP) — протокол FTP — данные;

21 (TCP) — протокол FTP — команды;

22 (TCP,UDP) — протокол SSH (Secure SHell) — применяется для безопасного входа в систему, пересылки файлов (SCP, SFTP) и форвардинга;

23 (TCP,UDP) — протокол Telnet — применяется для передачи текстовых сообщений в незашифрованном виде;

25 (TCP,UDP) — протокол SMTP (Simple Mail Transfer Protocol) — используется для пересылки почтовых сообщений между серверами. Сообщения отправляются в виде простого незашифрованного текста;

53 (TCP,UDP) — cлужбы доменных имён (такие как BIND);

67 (TCP,UDP) — Bootstrap Protocol (BOOTP) сервер BOOTP — предназначен для сервера, с которого выполняется загрузка бездисковых рабочих станций; также используется Dynamic Host Configuration Protocol (DHCP);

68 (TCP,UDP) — Bootstrap Protocol (BOOTP) клиент BOOTP — по этому протоколу выполняется загрузка бездисковых рабочих станций с сервера BOOTP; также используется Dynamic Host Configuration Protocol (DHCP);

69 (TCP,UDP) — простой протокол передачи файлов (Trivial File Transfer Protocol, TFTP);

80 (TCP,UDP) — протокол передачи гипертекста (HyperText Transfer Protocol, HTTP) для служб всемирной паутины (World Wide Web, WWW);

110 (TCP,UDP) — POP3 (Post Office Protocol Version 3);

123 (TCP,UDP) — сетевой протокол времени (Network Time Protocol, NTP);

143 (TCP,UDP) — Internet Message Access Protocol (IMAP) — используется для получения, организации и синхронизации сообщений e-mail;

161 (TCP,UDP) — простой протокол управления сетью (Simple Network Management Protocol, SNMP);

443 (TCP,UDP) — HTTPS (Hypertext Transfer Protocol Secure) — HTTP с шифрованием по SSL или TLS;

993 (TCP) — IMAPS (Internet Message Access Protocol с шифрованием по SSL или TLS);

995 (TCP) — POP 3 с шифрованием по SSL (POP3S);

3389 (TCP,UDP) — RDP — протокол удалённого рабочего стола;

8080 (TCP,UDP) — альтернативный порт HTTP;

Теория текст:

Теория видео:

Как использовать команды Linux ps, kill и nice для управления процессами

Управление процессами в Linux обеспечивает контроль и манипулирование запущенными программами в системе. Позволяет отслеживать состояние процессов, изменять их приоритеты, запускать и завершать выполнение программ. Наиболее частыми инструментами, используемыми системными администраторами, являются ps, nice и kill. Каждый из этих инструментов рассмотрим более подробно ниже.

Использование ps

Ps позволяет отображать и управлять процессами в операционной системе. Она предоставляет информацию о работающих процессах и позволяет мониторить их состояние. Также можно использовать команду ps для фильтрации и поиска конкретных процессов. Это полезная утилита для управления и анализа процессов в Linux.

Отображение списка активных процессов

Когда вы открываете терминал на Linux-системе, можно использовать команду ps без аргументов, чтобы отобразить список всех текущих процессов. Простой пример:

ps

Kопировать

В выводе команды отобразится список процессов, выполненных под вашим идентификатором пользователя (UID).

Отображение процессов определенного пользователя

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

ps -u username

Kопировать

Замените username на имя пользователя, для которого вы хотите отобразить список процессов.

Отображение полного списка информации о процессах

Значение по умолчанию для команды ps отображает только основную информацию о процессах. Однако, вы можете получить более подробную информацию о процессах, используя следующую команду:

ps -aux

Kопировать

Такая команда отобразит полный список всех процессов и информацию о них, включая PID, родительский PID, статус, использование ресурсов и многое другое.

Отображение процессов в виде древовидной структуры

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

ps f

Kопировать

Такая команда покажет процессы, отображая их в виде древовидной структуры.

Отображение информации о процессе по определенному идентификатору процесса (PID)

Вы можете получить подробную информацию о процессе, зная его идентификатор процесса (PID). Вот пример команды:

ps -p PID

Kопировать

Замените PID на актуальный идентификатор процесса, чтобы получить информацию о нем.

Отображение процессов в реальном времени

Для отображения процессов в реальном времени, можно использовать команду top. Выйти из top можно, нажав клавишу q.

Фильтрация и сортировка вывода

Команда ps также поддерживает фильтрацию и сортировку вывода. Например, если нужно отобразить только процессы, связанные с конкретной программой:

ps -C program

Kопировать

Замените program на имя программы, для которой непосредственно необходимо отобразить процессы.
Конечно, это лишь основные примеры применения ps для управления процессами в Linux. Команда ps имеет еще множество других опций и флагов, позволяющих вам полностью контролировать и анализировать процессы в вашей системе. Для получения подробной информации о доступных опциях команды ps вы можете воспользоваться командой man ps. Она отобразит страницу справки, содержащую полное описание команды ps и ее опций.

Использование команды kill

Команда kill является мощным инструментом для управления процессами в операционных системах Linux. Она позволяет отправлять сигналы процессам, что позволяет контролировать их поведение.

Отправка сигнала процессу

Основное использование команды kill – отправка сигнала процессу. По умолчанию команда kill отправляет процессу сигнал TERM (15), что приводит к стандартной остановке процесса. Пример использования:

kill PID

Kопировать

Замените PID на идентификатор процесса, который вы хотите остановить.

Отправка других сигналов

Команда kill также позволяет отправлять другие сигналы процессу. Например, чтобы послать процессу сигнал KILL (9), который немедленно прекратит выполнение процесса, используйте следующий синтаксис:

kill -9 PID

Kопировать

Замените PID на идентификатор процесса.

Отправка сигнала группе процессов

С помощью команды kill можно отправлять сигнал всей группе процессов. Разные процессы могут иметь одинаковый идентификатор группы (PGID). Пример использования:

kill -SIGTERM -- -PGID

Kопировать

Замените PGID на идентификатор группы процессов.

Удаление «зомби»-процессов:

Kопировать

«Зомби»-процессы — завершенные, но не полностью удаленные процессы, которые все еще присутствуют в системе. Вы можете очистить «зомби»-процессы, отправив сигнал процессу PID. Пример использования:

kill -SIGCHLD PID

Kопировать

Замените PID на идентификатор процесса.

Проверка существования процесса перед отправкой сигнала

Если вы хотите убедиться, что процесс существует, прежде чем отправить ему сигнал, вы можете использовать параметр -0. Пример использования:

kill -0 PID

Kопировать

Замените PID на идентификатор процесса.

Использование имен процессов

Вместо идентификаторов процессов (PID) можно использовать имена процессов при работе с командой kill. Для этого используется команда pkill. Пример использования:

pkill process_name

Kопировать

Замените process_name на имя процесса.

Отправка сигнала на определенный поток процесса

Если процесс имеет несколько потоков, можно отправить сигнал только на определенный поток. Используйте следующий синтаксис:

kill -s SIGNAL -PID

Kопировать

Замените SIGNAL на сигнал и PID на идентификатор процесса.
Это основные примеры использования команды kill для управления процессами в Linux. Команда kill поддерживает другие флаги и сигналы, позволяющие более тонко настраивать управление процессами.

Использование nice

Когда в Linux запускаются различные процессы, они получают некоторое количество ресурсов системы для своего выполнения. Команда nice предоставляет возможность установить приоритет выполнения процесса, что позволяет контролировать используемые ресурсы. В этой инструкции рассмотрим, как использовать команду nice для управления процессами в Linux.

Понимание значения приоритета

Приоритет процесса в Linux измеряется числом, которое может варьироваться в диапазоне от -20 до 19. Более низкое значение приоритета означает более высокий приоритет выполнения процесса. Пользователи с правами суперпользователя (root) могут устанавливать отрицательные значения приоритета, тогда как обычные пользователи могут использовать только положительные значения.

Запуск процесса с помощью nice

Чтобы запустить процесс с определенным приоритетом, используйте команду nice перед командой выполнения процесса. Синтаксис команды таков:

nice -n значение команда

Kопировать

Например, чтобы запустить процесс с приоритетом 10, выполните следующую команду:

nice -n 10 команда

Kопировать

Здесь команда — команда, которая будет запущена с определенным приоритетом.

Отслеживание приоритета выполнения процесса

Чтобы проверить текущий приоритет выполнения процесса, воспользуйтесь командой nice без дополнительных параметров:

nice

Kопировать

Эта команда отобразит текущий приоритет выполнения процесса пользователя.

Изменение приоритета выполнения процесса

Если процесс уже выполняется, но вы хотите изменить его приоритет, можно воспользоваться командой renice. Синтаксис команды таков:

renice -n<новое_значение> -p<идентификатор_процесса>

Kопировать

Чтобы узнать идентификатор процесса, выполните команду ps или top. Например, чтобы изменить приоритет выполнения процесса с идентификатором 1234 на -5, введите следующую команду:

renice -n -5 -p 1234

Kопировать

Пример использования команды nice

Рассмотрим пример использования команды nice. Допустим, у нас есть процесс с командой sleep, который ждет 10 секунд:

sleep 10

Kопировать

Чтобы запустить этот процесс с приоритетом 5, выполните следующую команду:

nice -n 5 sleep 10

Kопировать

Теперь процесс будет выполняться с более низким приоритетом. Команда nice является мощным инструментом для управления приоритетом выполнения процессов в Linux. Она позволяет контролировать использование системных ресурсов и повысить эффективность выполнения процессов.

В данном обзоре рассмотрели основные инструменты для управления процессами в ОС семейства Линукс. Все они представляют собой довольно мощные утилиты для отображения информации о текущих процессах, завершения процессов и настройки приоритета выполнения процесса, что позволяет контролировать используемые ресурсы.


32 примера использования команды Nmap для Linux-систем


степень двойки


Задание 11.

Ссылки:

  1. Сайт олимпиады

Ссылки

Ресурсы:

Cisco Traser файлы

Оставить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Мы используем файлы cookie для анализа событий на нашем сайте. Продолжая просмотр сайта, вы принимаете условия использования