Авторская информация о системном администрировании.
# dnf module enable nodejs:14
# dnf install nodejs
# npm install -g localtunnel
Для того, чтобы пробросить своё приложение, запускаете localtunnel:
# lt --port 80
После запуска получите url вида https://odd-fireant-71.loca.lt Открыв его, вы увидите свое приложение, работающее на 127.0.0.1:80. Проверить очень просто. Я запустил nginx на localhost и пробросил его.
Мне показался сервис очень полезным. Лично мне бы пригодился платный сервис на его основе со своей отдельной авторизацией. Прямо сейчас стоит задача опубликовать в интернет специфичный сервис, который работает локально. Просто как есть опубликовать в интернет нельзя, он не развивается и не обновляется, работает на asp.net. Через nginx proxy корректно не заработал. Принял решение через vpn делать доступ, но это лишние проблемы по настройке пользователей. Но ничего лучше и безопаснее не придумал.
Сайт -https://theboroer.github.io/localtunnel-www/
Исходники - https://github.com/localtunnel/localtunnel
#webserver--chmod=Du=rwx,Dgo=rx,Fu=rw,Fog=r
В данном случае D - права на директорию, F - на файлы. То же самое можно написать и вот так:
--chmod=D2775,F664
Rsynс поддерживает разные форматы chmod. Чтобы не тащить владельца файла с windows сервера, я еще добавляю ключи:
--no-owner --no-group
Последние можно не добавлять, если не использовать ключ -a, который включает в себя целую кучу ключей, где в том числе есть передача пользователя и группы. Чтобы продолжать использовать общий ключ -a, можно отдельно отменить копирование владельца и группы дополнительными ключами.
Вот пример полной строки запуска Rsynс на Linux для сбора файлов с Windows:
/usr/bin/rsync --progress --delete -avz \
--no-owner --no-group --chmod=Du=rwx,Dgo=rx,Fu=rw,Fog=r \
--password-file=/root/bin/rsyncd.scrt \
[email protected]::backup /mnt/backup/mssql --backup \
--backup-dir=/mnt/backup/mssql_increment/`date +%Y-%m-%d`/
Скрипт синхронизирует директорию с бэкапами mssql. Изменившиеся файлы не удаляет, а кладёт в директорию mssql_increment с именем директории в виде даты на момент запуска скрипта. Таким образом можно организовать нужную глубину хранения бэкапов, удаляя старые директории.
#rsync #windows #backup# npm install meshcentral
# node node_modules/meshcentral
Под Windows есть готовый установщик, который автоматом поставит NodeJS и сам сервер MeshCentral.
❗️Управление удаленными хостами производится через браузер. Это отличает MeshCentral от многих похожих систем. Из бесплатных мне вообще подобные неизвестны.
В локальной сети агенты сами мультикастом находят сервер. В остальных случаях в настройках агента нужно будет указать адрес сервера, для того, чтобы через него можно было организовать соединение. Помимо непосредственно доступа к экрану компьютера, можно посмотреть информацию о железе, подключиться к консоли, посмотреть графики загрузки cpu и памяти, передать файлы.
В Youtube есть подробная серия роликов по всевозможной настройке. Там всё, что только можно - непосредственно установка сервера, двухфакторная авторизация, работа через nginx reverse proxy, настройка сертификатов Let's Encrypt и многое другое. Необычно видеть для open source проекта такую подробную серию роликов.
Развернуть и попробовать MeshCentral очень просто. Достаточно установить сервер. Зайти на него через web интерфейс. Выбрать агента под свою операционную систему и установить. Есть поддержка мобильных устройств. После установки агента, к хосту можно подключаться из панели управления.
Если кто-то использует MeshCentral у себя, дайте обратную связь. Как этот софт в реальной эксплуатации. На вид выглядит очень удобно. Я сам использую коммерческий софт для удаленного управления компьютерами через браузер. Покупаю его как сервис.
Сайт - https://meshcentral.com/
Youtube - www.youtube.com/channel…g/videos
Исходники - https://github.com/Ylianst/MeshCentral
#remoteip route show default \
| awk '/default/ {print $5}'
ifconfig ens18 \
| grep -o -E '([[:xdigit:]]{1,2}:){5}[[:xdigit:]]{1,2}'
Не знаю, зачем использовали команды ip и ifconfig. Можно было всё с помощью ip сделать. Я сходу набросал по аналогии:
ip address show ens18 \
| grep -o -E '([[:xdigit:]]{1,2}:){5}[[:xdigit:]]{1,2}' \
| awk 'NR == 1'
Задать произвольный MAС адрес:
# ifconfig ens18 down
# macchanger -m 1a:2b:3c:4d:5e:6f ens18
# ifconfig ens18 up
В скрипте используется утилита macchanger, которая есть в базовых репах ubuntu/debian, но нет в centos. Не знаю, почему используется именно она. Можно то же самое сделать и с помощью ip:
# ip link set dev ens18 address 1a:2b:3c:4d:5e:6f
Swap там очищается следующим образом:
# swapoff -a
# sswap -v /swap
# swapon -a
Sswap - утилита из состава Kali Linux, живёт в пакете secure-delete.
Безвозвратное удаление файлов выполняется вот так:
# shred -v -f -n 30 -z testfile
Используется утилита shred из того же пакета secure-delete. Shred заполняет случайными числами место, занятое файлом. Даже восстановив удалённый файл, его будет невозможно прочитать.
Если вам интересен остальной функционал этого скрипта, можете сами его посмотреть.
#bash #terminal