Блог пользователя df-nix

Создание образа ISO CD или DVD диска в Linux

Эта заметка описывает создание корректного ISO образа CD или DVD диска.
Если ISO образ диска создан с помощью команды dd ( diskdump ), то он может иметь контрольную сумму, например md5, не совпадающую с оригинальной контрольной суммой iso файла, использованного для записи этого CD или DVD. Это связано с тем что при записи iso из конца диска будет добавлено несколько нулевых блоков. Такой iso образ может быть использован без каких-либо проблем, однако проверка контрольной суммы покажет отличия с оригинальным образом.

dhcp и iptables

Наткнулся на эту информацию изучая вопрос, почему не удается отфильтровать запросы dhcp с помощью ip firewall на Mikrotik
Цитата отсюда - https://forum.mikrotik.com/viewtopic.php?t=36035

Normally, when programs need network access, they open
an Internet socket, which gets
any packets destined for it and can send packets after the kernel has
applied all IP Tables rules to them. So if you have a policy of
DROP, the socket will not receive or be able to
send that packet.

Настройка параметров запуска tmux

Если я пользуюсь tmux на рабочем компьютере, то при его включении запускаю один и тот же набор окон в tmux. Чтобы не выполнять каждый раз одни и те же команды в tmux, можно настроить его поведение при запуске сессии. Для этого создаем файл
~/.tmux.conf примерно такого вида

# initialize sessions
new -s session01 'exec mc'
neww 'exec mc'
neww 'exec mc'
neww
neww
neww
neww 'exec top'
# split window vertically and run command in secod window
splitw -h 'vnstat -l -i enp1s0 -ru'
# set active the window '4'

Использование бесплатного сертификата Let'sEncrypt для postfix

Ранее я написал кратко о способах получения и использования сертификатов Let'sEncrypt.
Эти сертификаты можно использовать не только для работы веб-сервера, но и для почты.
Например, можно установить бесплатный сертификат Let'sEncrypt для работы с postfix.
Для этого в конфигурационном файле main.cf небходимо использовать следующие опции

smtpd_tls_cert_file = /usr/local/etc/letsencrypt/live/mydomain.com/fullchain.pem                                                                                                          

Примеры использования bash для решения различных задач в скриптах. Построчное считывание файла.

Иногда в скрипте требуется реализовать цикл по всем строкам файла для выполнения одного и того же действия с содержимым каждой строки.
Для этого можно использовать такой код

while read LINE
do
echo $LINE
done < file.txt

В этом примере переменной $LINE циклично будет присваиваться значение равное содержимому строки в файле file.txt, начиная с первой строки и до последней, при этом команда echo выведет содержимое переменной $LINE на стандартный вывод.

Сравнение клавиатурных комбинаций screen и tmux

screen и tmux являются терминальными мультиплексорами, которые позволяют в одном физическом терминале создавать

n-ное количество виртуальных или псевдо терминалов, каждый из которых работает независимо друг от друга, а их совокупность

образуюет сессию. После создания сессии от нее можно отключиться, причем все терминалы будут продолжать работать, а затем, в любое время подключиться к ней.

При уничтожении ( закрытии, завершении ) всех виртуальных терминалов во всех сессиях, screen или tmux завершают свою работу.

Копирование и вставка в screen

Одной из удобных возможностей screen является режим копирования текста из одного окна в буфер обмена и вставки его в нужном месте другого окна.
Для того чтобы скопировать и вставить в screen, нужно перейти в режим копирования, нажав Ctrl-A+[

Adobe Flash Player для windows

Тем, у кого не получается загрузить Adobe Flash Player для windows с официального сайта -
можно взять тут:
https://yadi.sk/d/Impq5Mrfnm-cqA
По ссылке размещен архив с установщиком, который поможет тем, у кого не получается установить Adobe Flash Player с официального сайта. Скачайте, распакуйте и запустите файл, следуйте инструкциям установщика.

Двухфакторная аутентификация ssh

Обычно при подключении по ssh при авторизации используется пароль пользователя. Для повышения безопасности можно сгенерировать на клиенте пару ключей и передать публичный ключ на сервер

ssh-keygen -b 4096
ssh-copy-id user@myserver.com

Для дополнительной безопасности, рекомендую в файле сервера
/home/user/.ssh/authorized_keys в начале строки, куда был помещен публичный ключ клиента, добавить ip адрес клиента, при подключении с которого будет разрешено использовать этот ключ:
from="123.234.123.234"

Как предотвратить разрыв ssh сессии

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

# Промежуток времени в секундах между отправкой alive пакетов внутри ssh соединения при отсутствии активности
ClientAliveInterval 120
# Количество alive пакетов без ответа клиента до разрыва сессии
ClientAliveCountMax 720

и аналогично в настройках клиента в ssh_config:
# Промежуток времени в секундах между отправкой alive пакетов внутри ssh соединения при отсутствии активности
ServerAliveInterval 120

Ленты новостей