Установка MQQT server на CentOS 7

1: Установка Mosquitto

Пакет mosquitto доступен в репозитории EPEL (Extra Packages for Enterprise Linux).

Устанавливаем epel-release от администратора.

sudo yum -y install epel-release

Опция –y автоматически подтверждает запросы. Теперь можно установить пакет mosquitto.

sudo yum -y install mosquitto

Запускаем mosquitto:

sudo systemctl start mosquitto

Добавляем автозапуск:

sudo systemctl enable mosquitto

Проверяем работу mosquitto
Открываем ещё одну сессию терминала, в результате у вас должно быть два терминала. Запускаем в новом терминале команду mosquitto_sub:

mosquitto_sub -h localhost -t test

Флаг –h указывает имя хоста сервера MQTT, -t – тему. После запуска команды на экране не появится вывода, поскольку команда mosquitto_sub ждет получения сообщений. Вернитесь в первый терминал и опубликуйте сообщение:

mosquitto_pub -h localhost -t test -m "hello world"

Команда mosquitto_pub использует те же опции, что и mosquitto_sub, однако в этот раз используется дополнительный флаг –m (он позволяет ввести текст сообщения). Нажмите Enter, и вы увидите в другом терминале MQTT-сообщение hello world.

Для того, чтобы остановить выполнения команды нажмите CTRL+C.

Настройка пароля MQTT

С помощью утилиты mosquitto_passwd генерируем файла паролей. Эта команда предложит ввести пароль для указанного пользователя и поместит результат в /etc/mosquitto/passwd.

sudo mosquitto_passwd -c /etc/mosquitto/passwd USERNAME

Удалите файл mosquitto.conf.

sudo rm /etc/mosquitto/mosquitto.conf

Создайте новый конфигурационный файл Mosquitto и добавьте в него информацию о новом файле паролей.

sudo nano /etc/mosquitto/mosquitto.conf

Вставьте в файл:

allow_anonymous false
password_file /etc/mosquitto/passwd

Строка allow_anonymous false блокирует доступ анонимных пользователей. Строка password_file указывает путь к файлу паролей. Сохраните и закройте файл.

Перезапустите Mosquitto:

sudo systemctl restart mosquitto

Тестируем новые настройки. Для теста отправьте сообщение без пароля:

mosquitto_pub -h localhost -t "test" -m "hello world"

Вы получите ошибку:

Connection Refused: not authorised.
Error: The connection was refused.

Перейдите во второй терминал и подпишитесь на тему test.

mosquitto_sub -h localhost -t test -u "USERNAME" -P "PASSWORD"

Вернитесь в первый терминал и опубликуйте сообщение:

mosquitto_pub -h localhost -t "test" -m "hello world" -u "USERNAME" -P "PASSWORD"

Сообщение появиться во втором терминале. Настройка Mosquitto прошла успешно.

Для шифрования паролей необходимо использовать SSL-шифрования.


Windows сбиваеться время после перезагрузки с LINUX

Решение: выполнить в виндовс команду
для х86 —


 Reg add HKLM\SYSTEM\CurrentControlSet\Control\TimeZoneInformation /v RealTimeIsUniversal /t REG_DWORD /d 1


для х64 —
Reg add HKLM\SYSTEM\CurrentControlSet\Control\TimeZoneInformation /v RealTimeIsUniversal /t REG_QWORD /d 1

отключить синхронизацию:
sc config w32time start= disabled

Вернуть в зад:


> Reg add HKLM\SYSTEM\CurrentControlSet\Control\TimeZoneInformation /v RealTimeIsUniversal /t REG_DWORD /d 0

И запустить обратно службу синхронизации:

> sc config w32time start= demand

(btrfs) bash: cannot create temp file for here-document: No space left on device

df -h говорит, что свободно 75% места но не дает записать данные.

проверяем информацию о btrfs разделе:

root@debian:~# sudo btrfs fi show
Label: none uuid: 61b054bb-d48a-465a-adc7-99c1f5705b67
Total devices 1 FS bytes used 52.30GiB
devid 1 size 428.41GiB used 428.41GiB path /dev/sdb1

не правда ли чудо btrfs раздела, занято файлами 52, а по факту все 428.41GiB

Повторно проверяем состояние занятости разделов по факту:
root@debian:~# sudo btrfs fi df /
Data, single: total=427.40GiB, used=51.54GiB
System, single: total=4.00MiB, used=64.00KiB
Metadata, single: total=1.01GiB, used=768.06MiB
GlobalReserve, single: total=272.00MiB, used=8.34MiB

Делаем баланс раздела:
root@debian:~# sudo btrfs fi balance start -dusage=10 /

ОС будет пытаться переместить данные в пустые блоки (пока будем использовать не более 10%)

но получаем.
ERROR: error during balancing ‘/’ — No space left on device
There may be more info in syslog — try dmesg | tail

Удаляем часть данных, к примеру логов на пару сотен МБ и повторно выполняем команду. После успешного выполнения перемещения данных и освобождения блоков повышаем %, можно с шагом 5%, т.е. -dusage=10 -dusage=15 -dusage=20 и т.д.

Сразу после первого раза было освобождено 50+ Гб

addpac AP200B экспорт/импорт настроек

Подключаемся к шлюзу:
NB> ftp 192.168.0.111
Connected to 192.168.0.111.
220 router FTP server (Version 1.12) ready. 

вводим логин и пароль, по умолчанию root/router

User (192.168.0.111:(none)): root
331 Password required for root.
Password:
230 User root logged in ok.

Скопировать файл прошивки на свой PC.
ftp> get ap2502fec.bin

Скопировать файл конфигурации на свой PC.
ftp> get config.cfg

Загрузить файл конфигурации на AddPac.
ftp> put ap2502fec.bin

Загрузить файл конфигурации на AddPac.
ftp> put config.cfg

Открыть закрытую дверь — Ведьмак 3 Дикая Охота

  1. Установить Nexus Mod Manager http://alligator.work/wit/0.65.2_4_0_65_2.zip

2. Указать путь к игре
3. Указать путь к моду (Add mod file + ) http://alligator.work/wit/moddoorunlocker.zip
4. В меню Unassigned дважды нажать на moddoorunlocker для активации мода
5. Активируем консоль в Ведьмаке, в файле
\bin\config\base\general добавляем строку DBGConsoleOn=true 6. Вызываем консоль в игре клавишей ~

7. набираем команду ToggleLock стоят при надписи «Дверь закрыта»

Как задать стандартный домен в VestaCP

Для заглушки Vesta берёт первый домен, до которого дотянется в файле /etc/httpd/conf.d/vesta.conf. Заходим на сервер по ssh и открываем его:

sudo nano /etc/httpd/conf.d/vesta.conf

Перед нами список подгружаемых конфигурационных файлов. Нужно найти путь до конфига необходимого сайта-заглушки и перенести его в начало, но после стандартных conf-файлов.

sudo service httpd restart

Неудачное соединение с IMAP сервером VestaCP

nano /etc/dovecot/conf.d/15-mailboxes.conf

Исправляем ситуацию — приводим этот файл к следующему виду:

## Mailbox definitions
##

# NOTE: Assumes “namespace inbox” has been defined in 10-mail.conf.
namespace inbox {
inbox = yes
#mailbox name {
………………………………………
После чего перезапускаем Dovecot:

service dovecot restart

IT блог