Тема VPN серверов всё актуальнее день ото дня. Покажу, как быстро настроить VPN сервер OpenConnect. В чём его особенности, я рассказывал в отдельной заметке, не буду повторяться. Кратко поясню, что это VPN с использованием TLS шифрования, что делает его похожим на HTTPS трафик. Сразу скажу, что это не означает, что его нельзя отличить от реального трафика к веб сайтам. Можно, но пока такая блокировка не особо практикуется, так что можно пользоваться.
Я установлю OpenConnect на Debian 12 с использованием сертификатов от Let's Encrypt и аутентификацией пользователей через связку логин/пароль. Это максимально простая настройка, в которой вы получаете полнофункциональный VPN сервер с возможностью управления маршрутизации клиентов централизованно на сервере.
Подготовимся и получим сертификаты:
В директории
Устанавливаем OpenConnect из пакетов:
Рисуем ему примерно такой конфиг
Файл конфигурации хорошо прокомментирован, нетрудно разобраться. Здесь я весь трафик отправляю в туннель. А вот такая настройка:
Отправит в туннель только указанные подсети.
Теперь создаём файл с учётками и добавляем пользователя zerox:
Перезапускаем службу и проверяем её работу:
Логи смотрим либо в
В завершении важная настройка, которую некоторые либо забывают, либо не понимают, что это такое и для чего. По умолчанию на сервере не работает перенаправление пакетов с одного сетевого интерфейса на другой. В данном случае с VPN интерфейса на WAN. Нам нужно включить эту настройку. Для этого раскомментируем в файле
И применим его:
Теперь нам нужно настроить NAT, чтобы клиенты VPN сети могли выходить в интернет. Сам OpenConnect эти вопросы не решает. Для этого воспользуемся старым добрым iptables:
Eth0 - WAN интерфейс, который смотрит в интернет.
Теперь идём на клиент, качаем клиентское приложение:
⇨ https://gui.openconnect-vpn.net/download/
Запускаем приложение, добавляем новый профиль, указав единственный параметр gateway с url сервера. В моём случае https://333271.simplecloud.ru. Далее подключаемся с использованием созданного пользователя и пароля.
Нужно не забыть настроить hook в certbot на перезапуск сервера после обновления сертификата:
Ну и не забудьте применить правила файрвола после перезапуска сервера. Подробно не останавливаюсь на этих вопросах, так как уже лимит на объём заметки исчерпан.
Получился удобный многофункциональный VPN сервер для решения различных прикладных задач маршрутизации трафика и доступа к корпоративным ресурсам.
Если кто-то пользуется данным сервером, скажите, сталкивались ли с блокировками протокола этого VPN сервера на уровне провайдеров.
#vpn
Я установлю OpenConnect на Debian 12 с использованием сертификатов от Let's Encrypt и аутентификацией пользователей через связку логин/пароль. Это максимально простая настройка, в которой вы получаете полнофункциональный VPN сервер с возможностью управления маршрутизации клиентов централизованно на сервере.
Подготовимся и получим сертификаты:
# apt install certbot
# certbot certonly -d 333271.simplecloud.ru --standalone
В директории
/etc/letsencrypt/live/333271.simplecloud.ru
будут файлы fullchain.pem
и privkey.pem
, которые нам понадобятся позже. Устанавливаем OpenConnect из пакетов:
# apt install ocserv
Рисуем ему примерно такой конфиг
/etc/ocserv/ocserv.conf
. Показываю только те параметры, что поменял. Остальное отставил по умолчанию, как было:# включаем аутентификацию по данным из файла
auth = "plain[passwd=/etc/ocserv/passwd]"
# указываем сертификат от let's encrypt
server-cert = /etc/letsencrypt/live/333271.simplecloud.ru/fullchain.pem
server-key = /etc/letsencrypt/live/333271.simplecloud.ru/privkey.pem
# указываем подсеть для внутренней адресации в туннеле
ipv4-network = 192.168.155.0
# заворачиваем в туннель все dns запросы и резолвим их через 1.1.1.1
tunnel-all-dns = true
dns = 1.1.1.1
# заворачиваем весь трафик в VPN туннель
route = default
# эти 2 подсети отправляем мимо туннеля
no-route = 192.168.13.0/255.255.255.0
no-route = 10.20.1.0/255.255.255.0
Файл конфигурации хорошо прокомментирован, нетрудно разобраться. Здесь я весь трафик отправляю в туннель. А вот такая настройка:
route = 10.10.10.0/255.255.255.0
route = 1.2.3.4/255.255.255.255
Отправит в туннель только указанные подсети.
Теперь создаём файл с учётками и добавляем пользователя zerox:
# ocpasswd -c /etc/ocserv/passwd zerox
Перезапускаем службу и проверяем её работу:
# systemctl restart ocserv
# systemctl status ocserv
Логи смотрим либо в
/var/log/syslog
, либо в systemd, если syslog отключен:# journalctl -f -u ocserv
В завершении важная настройка, которую некоторые либо забывают, либо не понимают, что это такое и для чего. По умолчанию на сервере не работает перенаправление пакетов с одного сетевого интерфейса на другой. В данном случае с VPN интерфейса на WAN. Нам нужно включить эту настройку. Для этого раскомментируем в файле
/etc/sysctl.conf
параметр:net.ipv4.ip_forward = 1
И применим его:
# sysctl -p
Теперь нам нужно настроить NAT, чтобы клиенты VPN сети могли выходить в интернет. Сам OpenConnect эти вопросы не решает. Для этого воспользуемся старым добрым iptables:
# apt install iptables
# iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
Eth0 - WAN интерфейс, который смотрит в интернет.
Теперь идём на клиент, качаем клиентское приложение:
⇨ https://gui.openconnect-vpn.net/download/
Запускаем приложение, добавляем новый профиль, указав единственный параметр gateway с url сервера. В моём случае https://333271.simplecloud.ru. Далее подключаемся с использованием созданного пользователя и пароля.
Нужно не забыть настроить hook в certbot на перезапуск сервера после обновления сертификата:
post_hook = systemctl restart ocserv
Ну и не забудьте применить правила файрвола после перезапуска сервера. Подробно не останавливаюсь на этих вопросах, так как уже лимит на объём заметки исчерпан.
Получился удобный многофункциональный VPN сервер для решения различных прикладных задач маршрутизации трафика и доступа к корпоративным ресурсам.
Если кто-то пользуется данным сервером, скажите, сталкивались ли с блокировками протокола этого VPN сервера на уровне провайдеров.
#vpn
2👍121👎5
Заметил по статистике, что один сайт стали донимать какие-то роботы сканированием несуществующих страниц. В статистике 404 ошибок стало существенно больше, чем 200-х ответов. Я обычно не практикую блокировку по этому признаку, так как можно словить неявные проблемы от каких-нибудь поисковиков или других легитимных пользователей. В этот раз решил сделать исключение.
С помощью fail2ban нетрудно выполнить блокировку. Не буду подробно рассказывать про настройку fail2ban, так как это не тема заметки. Покажу, как я забанил тех, от кого сыпется много 404 кодов ответа веб сервера.
Для начала создаём правило фильтрации в директории
Закомментированная строка подойдёт для стандартного формата логов Nginx или Apache. Вторая для моего изменённого. Я обычно использую свой формат, если собираю логи в ELK и анализирую. У меня есть набор готовых grok фильтров для этого. Вот мой модернизированный формат логов:
Соответственно, получаем вот такую запись в логе:
Для тех, кто использует logstash, покажу grok фильтр для этого формата. Он позволяет анализировать некоторые метрики и выводить их на графики и дашборды. Даю для справки без объяснений, так как это отдельная большая тема.
Приведённая в
⇨ https://regex101.com/
⇨ https://regexper.com/
Постоянно ими пользуюсь. Вот тут была хорошая подборка по этой теме. Дальше создаём файл настроек блокировки в
Баню на 30 минут тех, кто за последние 10 минут получил 30 раз 404 ответ. На мой взгляд это достаточно мягкое условие, которое отсечёт явных ботов, но не тронет легитимных пользователей.
Если кто-то тоже банит по признаку 404 ответа, поделитесь опытом, как это лучше делать и к каким проблемам может привести. Я немного понаблюдал, вроде никто лишний не попадается на это правило.
#fail2ban #webserver
С помощью fail2ban нетрудно выполнить блокировку. Не буду подробно рассказывать про настройку fail2ban, так как это не тема заметки. Покажу, как я забанил тех, от кого сыпется много 404 кодов ответа веб сервера.
Для начала создаём правило фильтрации в директории
/etc/fail2ban/filter.d
. Назвал его nginx-4xx.conf
:[Definition]
#failregex = ^<HOST>.*"(GET|POST).*" (404|429) .*$
failregex = ^<HOST>.*"(GET|POST).*" *.* (status=404|status=429) .*$
ignoreregex =
Закомментированная строка подойдёт для стандартного формата логов Nginx или Apache. Вторая для моего изменённого. Я обычно использую свой формат, если собираю логи в ELK и анализирую. У меня есть набор готовых grok фильтров для этого. Вот мой модернизированный формат логов:
log_format full '$remote_addr - $host [$time_local] "$request" '
'request_length=$request_length '
'status=$status bytes_sent=$bytes_sent '
'body_bytes_sent=$body_bytes_sent '
'referer=$http_referer '
'user_agent="$http_user_agent" '
'upstream_status=$upstream_status '
'request_time=$request_time '
'upstream_response_time=$upstream_response_time '
'upstream_connect_time=$upstream_connect_time '
'upstream_header_time=$upstream_header_time';
Соответственно, получаем вот такую запись в логе:
178.218.43.55 - site01.ru [01/Oct/2024:13:46:24 +0300] "GET /about HTTP/2.0" request_length=123 status=200 bytes_sent=489 body_bytes_sent=8 referer=https://site01.ru/ user_agent="Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:130.0) Gecko/20100101" upstream_status=200 request_time=0.075 upstream_response_time=0.069 upstream_connect_time=0.000 upstream_header_time=0.069
Для тех, кто использует logstash, покажу grok фильтр для этого формата. Он позволяет анализировать некоторые метрики и выводить их на графики и дашборды. Даю для справки без объяснений, так как это отдельная большая тема.
%{IPORHOST:remote_ip} - %{DATA:virt_host} \[%{HTTPDATE:access_time}\] \"%{WORD:http_method} %{DATA:url} HTTP/%{NUMBER:http_version}\" request_length=%{INT:request_length} status=%{INT:status} bytes_sent=%{INT:bytes_sent} body_bytes_sent=%{NUMBER:body_bytes_sent} referer=%{DATA:referer} user_agent=\"%{DATA:user_agent}\" upstream_status=%{DATA:upstream_status} request_time=%{NUMBER:request_time} upstream_response_time=%{DATA:upstream_response_time} upstream_connect_time=%{DATA:upstream_connect_time} upstream_header_time=%{DATA:upstream_header_time}
Приведённая в
nginx-4xx.conf
регулярка находит 404 и 429 ответы в таком логе. Я не силён в написании регулярок, поэтому хз, правильно составил или нет, но на практике работает. В составлении регулярок помогают вот эти сервисы:⇨ https://regex101.com/
⇨ https://regexper.com/
Постоянно ими пользуюсь. Вот тут была хорошая подборка по этой теме. Дальше создаём файл настроек блокировки в
/etc/fail2ban/jail.d
, назвал его так же nginx-4xx.conf
:[nginx-4xx]
enabled = true
filter = nginx-4xx
port = http,https
action = iptables-multiport[name=Nginx404, port="http,https", protocol=tcp]
logpath = /web/sites/*/logs/access.log
maxretry = 30
findtime = 10m
bantime = 30m
Баню на 30 минут тех, кто за последние 10 минут получил 30 раз 404 ответ. На мой взгляд это достаточно мягкое условие, которое отсечёт явных ботов, но не тронет легитимных пользователей.
Если кто-то тоже банит по признаку 404 ответа, поделитесь опытом, как это лучше делать и к каким проблемам может привести. Я немного понаблюдал, вроде никто лишний не попадается на это правило.
#fail2ban #webserver
👍96👎3
Одной из обязательных настроек, которую делаю на новом сервере, касается ротации текстовых логов. Несмотря на то, что их активно заменяют бинарные логи systemd, я предпочитаю возвращать текстовые логи syslog. Для этого на чистый сервер устанавливаю rsyslog:
Далее выполняю некоторые настройки, которые относятся к ротации логов с помощью logrotate. В первую очередь в фале
Он нужен, чтобы в имени файла была указана дата, когда лог-файл был ротирован. С этой настройкой связан один очень важный момент, если вы хотите ротировать логи чаще, чем раз в сутки. По умолчанию logrotate во время ротации лога с этой настройкой переименовывает текущий лог файл, назначая ему имя вида access.log.20241001.gz. То есть в имени файла будет указан текущий день. Второй раз в этот день ротация закончится ошибкой, так как logrotate скажет, что не могу переименовать лог, так как файл с таким именем уже существует. Для тех логов, что точно будут ротироваться чаще, чем раз в сутки, нужно обязательно добавить параметр:
В таком случае каждое имя файла будет уникальным и проблем не возникнет.
Далее в обязательном порядке нужно настроить запуск logrotate чаще, чем раз в сутки. По умолчанию в Debian запуск logrotate настроен в
Эти настройки особенно актуальны для веб серверов, где очень быстро могут разрастись лог файлы.
Все возможные настройки файлов logrotate можно почитать в man. Там довольно подробно всё описано. Если не хочется читать man, можно воспользоваться простым конфигуратором:
🌐 https://scoin.github.io/logrotate-tool
Там наглядно перечислены настройки с описанием. Можно мышкой потыкать и посмотреть, как меняется конфигурационный файл. Вот пример моего файла ротации логов веб сервера:
Маска
◽️/web/sites/site01.ru/logs/
◽️/web/sites/site02.ru/logs/
и т.д.
Когда будете настраивать ротацию логов, проверяйте, чтобы у службы, для которой управляем логами, в итоге оказался доступ к этим логам. Я иногда ошибаюсь и потом приходится разбираться, почему после ротации логи нулевого размера. Это актуально, когда логи куда-то выносятся из /var/log и отдельно настраиваются права, например, для того, чтобы какие-то пользователи имели к ним доступ, к примеру, только на чтение.
#linux #logs #logrotate #webserver
# apt install rsyslog
Далее выполняю некоторые настройки, которые относятся к ротации логов с помощью logrotate. В первую очередь в фале
/etc/logrotate.conf
включаю параметр:dateext
Он нужен, чтобы в имени файла была указана дата, когда лог-файл был ротирован. С этой настройкой связан один очень важный момент, если вы хотите ротировать логи чаще, чем раз в сутки. По умолчанию logrotate во время ротации лога с этой настройкой переименовывает текущий лог файл, назначая ему имя вида access.log.20241001.gz. То есть в имени файла будет указан текущий день. Второй раз в этот день ротация закончится ошибкой, так как logrotate скажет, что не могу переименовать лог, так как файл с таким именем уже существует. Для тех логов, что точно будут ротироваться чаще, чем раз в сутки, нужно обязательно добавить параметр:
dateformat -%Y-%m-%d_%H-%s
В таком случае каждое имя файла будет уникальным и проблем не возникнет.
Далее в обязательном порядке нужно настроить запуск logrotate чаще, чем раз в сутки. По умолчанию в Debian запуск logrotate настроен в
/etc/cron.daily
и запускается не чаще раза в сутки. Я обычно просто добавляю запуск в /etc/crontab каждые 5 минут:*/5 * * * * root logrotate /etc/logrotate.conf
Эти настройки особенно актуальны для веб серверов, где очень быстро могут разрастись лог файлы.
Все возможные настройки файлов logrotate можно почитать в man. Там довольно подробно всё описано. Если не хочется читать man, можно воспользоваться простым конфигуратором:
Там наглядно перечислены настройки с описанием. Можно мышкой потыкать и посмотреть, как меняется конфигурационный файл. Вот пример моего файла ротации логов веб сервера:
/web/sites/*/logs/*.log {
create 644 angie webuser
size=50M
dateext
dateformat -%Y-%m-%d_%H-%s
missingok
rotate 30
compress
notifempty
sharedscripts
postrotate
if [ -f /run/angie.pid ]; then
kill -USR1 $(cat /run/angie.pid)
fi
endscript
}
Маска
/web/sites/*/logs/*.log
захватывает все виртуальные хосты веб сервера, где логи располагаются в директориях:◽️/web/sites/site01.ru/logs/
◽️/web/sites/site02.ru/logs/
и т.д.
Когда будете настраивать ротацию логов, проверяйте, чтобы у службы, для которой управляем логами, в итоге оказался доступ к этим логам. Я иногда ошибаюсь и потом приходится разбираться, почему после ротации логи нулевого размера. Это актуально, когда логи куда-то выносятся из /var/log и отдельно настраиваются права, например, для того, чтобы какие-то пользователи имели к ним доступ, к примеру, только на чтение.
#linux #logs #logrotate #webserver
Please open Telegram to view this post
VIEW IN TELEGRAM
👍95👎7
Посмотрел запись шикарного выступления на тему информационной безопасности:
▶️ Топ-10 артефактов Linux для расследования инцидентов
Очень люблю такой формат, где много примеров и конкретики. Прям всё выступление это примеры из практики. Постарался законспектировать самую суть, чтобы можно было сохранить и вынести для себя пользу. Рекомендую выступление посмотреть, а мою заметку сохранить как шпаргалку. Без просмотра видео от шпаргалки будет не так много пользы. Я зафиксировал авторские синтаксис и пояснения из выступления.
Автор рассказывает про 10 команд для анализа системы в режиме реального времени, которыми пользуется:
◽️
◽️
◽️
◽️
◽️
◽️
◽️
◽️
📌 ТОП 10 системных артефактов, которые проверяем при взломах:
▪️SYSTEM INFO:
◽️/proc/version, /etc/release, /etc/localtime - информация о системе, времени
◽️/proc/mounts, /etc/mtab - монтирование файловых систем
◽️/etc/network/interfaces, /var/lib/NetworkManager/*.lease, /var/lib/dhcp/*.lease, /etc/sysconfig/network-scripts/ifcfg-*, /etc/sysconfig/iptables - сеть, маршруты
◽️/proc/[PID]/cmdline - процессы
▪️LOGS в /var/log:
◽️auth.log, secure.log - аутентификации пользователей
◽️lastlog - последний логин пользователей
◽️btmp - неудачные попытки логина
◽️wtmp - записи о каждом логине, логауте
◽️cron - планировщик cron
◽️dpkg, apt/history.log - установка/удаление пакетов
◽️audit/audit.log - логи аудита, если запущен
▪️SHELL HISTORY
~/bash_history, ~/.history, ~/sh_history, ~/.*_history - история команд оболочки, обязательно настраиваем у всех HISTTIMEFORMAT.
▪️FILE SYSTEM
Ищем изменённые, скрытые, большие файлы, символьные ссылки, расширенные разрешения, setuid
▪️USER ACCOUNTS
/etc/passwd, /etc/shadow, /etc/group, /etc/sudoers, /etc/sudoers.d/*, /etc/profile, /etc/profile.d/*, /etc/bash.bashrc
▪️PUBLIC FACING APP
Публичные приложения, запущенные на сервере: apache, nginx и т.д. Смотрим архитектуру, логи, рабочие директории, версию, уязвимости и т.д.
▪️PERSIST
Места, где злоумышленник или вирус может закрепиться:
/etc/cron/, /var/spool/cron/, /var/spool/anacron, /etc/crontab, /etc/at, /etc/inittab, /etc/init.d/etc/rd[0-6].d/, /etc/rc.boot/, /etc/init.conf, /etc/init, /lib/systemd/system/*, /etc/systemd/system/*
Основное внимание - cron и службы.
▪️CONFIG
Все конфигурации в /etc/
▪️APPLICATION DATA
~/.config, ~/.cache, ~/.local и т.д.
▪️TMP
/tmp, /var/tmp, /dev/shm, /var/run, /var/spool
Это конспект примерно половины выступления. Дальше в основном теория на тему того, как надо защищать сервера и анализировать подозрительную активность и ответы на вопросы. В вопросах дополнили:
- Проверяем файлы в системе на соответствие того, что было установлено из пакетов
- Проверяем реальные сетевые интерфейсы через команду ip, так как не всё может быть отражено в конфигурационных файлах
✅ Отдельно привожу ссылку на свою недавнюю публикацию, где я собрал в похожий список все действия на основе своего опыта, которые имеет смысл выполнить, если у вас есть подозрение на то, что ваш сервер скомпрометировали.
#security
Очень люблю такой формат, где много примеров и конкретики. Прям всё выступление это примеры из практики. Постарался законспектировать самую суть, чтобы можно было сохранить и вынести для себя пользу. Рекомендую выступление посмотреть, а мою заметку сохранить как шпаргалку. Без просмотра видео от шпаргалки будет не так много пользы. Я зафиксировал авторские синтаксис и пояснения из выступления.
Автор рассказывает про 10 команд для анализа системы в режиме реального времени, которыми пользуется:
◽️
ps auxwf
- список процессов с дополнительной информацией в древовидном представлении◽️
ss -tupln
и netstat -plunto
- открытые порты (plunto - имя героя из мультика с микки маусом)◽️
last -Faiwx
- список логинов пользователей◽️
tail /var/log/<file>
и cat ~/.bash_history
- просмотр различных системных логов◽️
ls -lta
- список файлов, отсортированный по времени изменения◽️
lsof -V
- открытые в настоящий момент файлы ◽️
find / -mtime -2 -ls
- все файлы, изменённые за последние 2 дня◽️
stat
|| statx
|| istat
- различные команды для получения информации о файловой системе📌 ТОП 10 системных артефактов, которые проверяем при взломах:
▪️SYSTEM INFO:
◽️/proc/version, /etc/release, /etc/localtime - информация о системе, времени
◽️/proc/mounts, /etc/mtab - монтирование файловых систем
◽️/etc/network/interfaces, /var/lib/NetworkManager/*.lease, /var/lib/dhcp/*.lease, /etc/sysconfig/network-scripts/ifcfg-*, /etc/sysconfig/iptables - сеть, маршруты
◽️/proc/[PID]/cmdline - процессы
▪️LOGS в /var/log:
◽️auth.log, secure.log - аутентификации пользователей
◽️lastlog - последний логин пользователей
◽️btmp - неудачные попытки логина
◽️wtmp - записи о каждом логине, логауте
◽️cron - планировщик cron
◽️dpkg, apt/history.log - установка/удаление пакетов
◽️audit/audit.log - логи аудита, если запущен
▪️SHELL HISTORY
~/bash_history, ~/.history, ~/sh_history, ~/.*_history - история команд оболочки, обязательно настраиваем у всех HISTTIMEFORMAT.
▪️FILE SYSTEM
Ищем изменённые, скрытые, большие файлы, символьные ссылки, расширенные разрешения, setuid
find / -xdev -print0 | xargs -0 stat -- printf="%i,%h,%n,%x,%y,%z,%w,%U,%G,%A,%s\n" 2>/dev/null
find "${MOUNTPOINT}" -xdev -print0 | xargs -0 -c "%Y %X %Z %A %U %G %n" >> timestamps.dat
▪️USER ACCOUNTS
/etc/passwd, /etc/shadow, /etc/group, /etc/sudoers, /etc/sudoers.d/*, /etc/profile, /etc/profile.d/*, /etc/bash.bashrc
▪️PUBLIC FACING APP
Публичные приложения, запущенные на сервере: apache, nginx и т.д. Смотрим архитектуру, логи, рабочие директории, версию, уязвимости и т.д.
▪️PERSIST
Места, где злоумышленник или вирус может закрепиться:
/etc/cron/, /var/spool/cron/, /var/spool/anacron, /etc/crontab, /etc/at, /etc/inittab, /etc/init.d/etc/rd[0-6].d/, /etc/rc.boot/, /etc/init.conf, /etc/init, /lib/systemd/system/*, /etc/systemd/system/*
Основное внимание - cron и службы.
▪️CONFIG
Все конфигурации в /etc/
▪️APPLICATION DATA
~/.config, ~/.cache, ~/.local и т.д.
▪️TMP
/tmp, /var/tmp, /dev/shm, /var/run, /var/spool
Это конспект примерно половины выступления. Дальше в основном теория на тему того, как надо защищать сервера и анализировать подозрительную активность и ответы на вопросы. В вопросах дополнили:
- Проверяем файлы в системе на соответствие того, что было установлено из пакетов
- Проверяем реальные сетевые интерфейсы через команду ip, так как не всё может быть отражено в конфигурационных файлах
✅ Отдельно привожу ссылку на свою недавнюю публикацию, где я собрал в похожий список все действия на основе своего опыта, которые имеет смысл выполнить, если у вас есть подозрение на то, что ваш сервер скомпрометировали.
#security
Please open Telegram to view this post
VIEW IN TELEGRAM
YouTube
Топ-10 артефактов Linux для расследования инцидентов
5👍184👎4
Вчера ходил на конференцию, которую тут недавно рекламировал. Это не рекламный пост, у меня его не заказывали, а на конференцию я записался и сходил по своей инициативе. До ковида я старался раз в месяц-два ходить на какую-то конференцию, причём не обязательно по IT. Просто развеяться и для расширения кругозора. В ковид всё это прикрыли, а потом как-то времени не стало на подобные мероприятия.
На конференции Trueconf я почти регулярно хожу, потому что там затрагиваются темы импортозамещения, а мне интересно знать, что в этой сфере делается. В этот раз там ещё сильнее расширили тематику (найм, ИИ, коммуникации), так что было интересно. Поделюсь с вами некоторыми несвязными между собой моментами, которые мне показались интересными.
🔹Сейчас на рынке труда в сфере IT есть существенный избыток джунов. Несмотря на то, что общая статистика показывает, что в целом по РФ вакансий больше, чем соискателей, конкретно в IT статистика обратная. Вакансий существенно меньше, чем резюме. Большая часть этих резюме от джунов, то есть это новички без опыта. Для мидлов уже плюс-минус паритет по вакансиям и резюме, а сеньоров недостаток. Так что если вы собрались вкатываться в IT, сейчас для этого плохое время. Не надо идти на IT курсы для переквалификации. А вот для того, чтобы перейти в мидлы стоит подучиться, но при условии, что вы уже джун с опытом работы.
🔹Статистика использования большими компаниями on-premise (локальных) инфраструктур плюс-минус стабильна. То есть явной тенденции на полный уход в облака не наблюдается, несмотря на то, что они показывают рост год от года. Кто-то что-то вынес, а что-то оставил на своих мощностях и переносить не собирается.
🔹Компания Гравитон может поставлять современное IT оборудование (серверы, рабочие станции, ноутбуки), которое соответствует требованиям минпромторга по локализации (она реальна, насколько позволяет современный технологический уровень в РФ), по схеме, схожей с ушедшими западными вендорами. Речь идёт о круглосуточной техподдержке, времени реагирования в 4 часа и замене оборудования в течении дня. Под это дело имеются большие складские запасы. Соответственно, за это всё нужно будет отдельно заплатить.
🔹Редсофт довольно крупная компания (около 500 сотрудников) с масштабной линейкой программных продуктов, в том числе со своей ОС для смартфонов. Я, честно говоря, думал, что это какая-то небольшая компания с ОС для рабочих станций.
🔹У компании Базальт СПО (разработчик систем Альт) есть свой продукт на замену Active Directory - Альт Домен на базе Samba DC. Я про другие продукты слышал раньше, а об этом узнал впервые. Он на самом деле не так давно был презентован. Его можно ставить вместе с AD и осуществлять плавный перенос инфраструктуры. Управлять групповыми политиками Альт Домена можно в том числе с помощью RSAT в Windows. В Linux свои похожие инструменты есть. Сделан акцент на удобство управления, как в AD.
🔹Нельзя смешивать и одновременно держать перед глазами средства коммуникации и созидания, творчества. То есть, когда делаете какую-то осмысленную работу, все мессенджеры, почта, уведомления и прочее должны быть убраны с глаз долой. Есть исследования на этот счёт. Продуктивность катастрофически падает при таком формате работы. Отмечаю это отдельно, так как помню, как во время обсуждения мониторов многие писали, что они на отдельные экраны выносят почту, мессенджеры, мониторинги и т.д. Это плохая практика. Я интуитивно всегда это понимал, поэтому у меня один монитор, один рабочий инструмент в фокусе, все уведомления всегда отключены. Сделал дело - отвлёкся на другие события. В идеале иметь разные устройства для творчества и общения. Но это больше про дизайнеров, писателей и т.д.
Процесс импортозамещения стремительно набирает обороты, причём не только на бумаге, но и на деле. Особенно, что касается замены программных продуктов. Здесь все карты в руках и ничто не препятствует. Желание, компетенции и деньги есть. С железом всё сильно сложнее.
#отечественное
На конференции Trueconf я почти регулярно хожу, потому что там затрагиваются темы импортозамещения, а мне интересно знать, что в этой сфере делается. В этот раз там ещё сильнее расширили тематику (найм, ИИ, коммуникации), так что было интересно. Поделюсь с вами некоторыми несвязными между собой моментами, которые мне показались интересными.
🔹Сейчас на рынке труда в сфере IT есть существенный избыток джунов. Несмотря на то, что общая статистика показывает, что в целом по РФ вакансий больше, чем соискателей, конкретно в IT статистика обратная. Вакансий существенно меньше, чем резюме. Большая часть этих резюме от джунов, то есть это новички без опыта. Для мидлов уже плюс-минус паритет по вакансиям и резюме, а сеньоров недостаток. Так что если вы собрались вкатываться в IT, сейчас для этого плохое время. Не надо идти на IT курсы для переквалификации. А вот для того, чтобы перейти в мидлы стоит подучиться, но при условии, что вы уже джун с опытом работы.
🔹Статистика использования большими компаниями on-premise (локальных) инфраструктур плюс-минус стабильна. То есть явной тенденции на полный уход в облака не наблюдается, несмотря на то, что они показывают рост год от года. Кто-то что-то вынес, а что-то оставил на своих мощностях и переносить не собирается.
🔹Компания Гравитон может поставлять современное IT оборудование (серверы, рабочие станции, ноутбуки), которое соответствует требованиям минпромторга по локализации (она реальна, насколько позволяет современный технологический уровень в РФ), по схеме, схожей с ушедшими западными вендорами. Речь идёт о круглосуточной техподдержке, времени реагирования в 4 часа и замене оборудования в течении дня. Под это дело имеются большие складские запасы. Соответственно, за это всё нужно будет отдельно заплатить.
🔹Редсофт довольно крупная компания (около 500 сотрудников) с масштабной линейкой программных продуктов, в том числе со своей ОС для смартфонов. Я, честно говоря, думал, что это какая-то небольшая компания с ОС для рабочих станций.
🔹У компании Базальт СПО (разработчик систем Альт) есть свой продукт на замену Active Directory - Альт Домен на базе Samba DC. Я про другие продукты слышал раньше, а об этом узнал впервые. Он на самом деле не так давно был презентован. Его можно ставить вместе с AD и осуществлять плавный перенос инфраструктуры. Управлять групповыми политиками Альт Домена можно в том числе с помощью RSAT в Windows. В Linux свои похожие инструменты есть. Сделан акцент на удобство управления, как в AD.
🔹Нельзя смешивать и одновременно держать перед глазами средства коммуникации и созидания, творчества. То есть, когда делаете какую-то осмысленную работу, все мессенджеры, почта, уведомления и прочее должны быть убраны с глаз долой. Есть исследования на этот счёт. Продуктивность катастрофически падает при таком формате работы. Отмечаю это отдельно, так как помню, как во время обсуждения мониторов многие писали, что они на отдельные экраны выносят почту, мессенджеры, мониторинги и т.д. Это плохая практика. Я интуитивно всегда это понимал, поэтому у меня один монитор, один рабочий инструмент в фокусе, все уведомления всегда отключены. Сделал дело - отвлёкся на другие события. В идеале иметь разные устройства для творчества и общения. Но это больше про дизайнеров, писателей и т.д.
Процесс импортозамещения стремительно набирает обороты, причём не только на бумаге, но и на деле. Особенно, что касается замены программных продуктов. Здесь все карты в руках и ничто не препятствует. Желание, компетенции и деньги есть. С железом всё сильно сложнее.
#отечественное
👍107👎22
⇨ Компьютер для нейросетей. 5x3090ti, 48cpu, 512gb ram.
Автор показал свой личный сервер для нейросетей. Детально рассказал про комплектующие. Необычное и интересное видео.
⇨ Affine Setup & Config: Streamline Your Workflow
Обзор open source сервиса Affine как замены Notion и Miro. Удивился, что впервые вообще о нём услышал, хотя у проекта 41к звёзд на гитхабе. То есть он очень популярен. В начале ролика сразу идёт обзор интерфейса и возможностей. Выглядит по функциональности необычно и круто.
⇨ УМЕЩАЕМ OLLAMA AI В САМЫЙ МАЛЕНЬКИЙ МИНИ-ПК НА INTEL N100
Автор запустил и потестировал несколько маленьких моделей на мини-пк. В целом, они работают, но качество ответов у маленьких моделей так себе. Кому интересно, может посмотреть, как я на своём железе запускал Ollama c Mistral.
⇨ Самая полная, ну почти, настройка обратного прокси Traefik v. 3.x
Очень подробная инструкция по настройке Traefik. У автора уже были ролики по этой теме. Тут он всё объединил в один. Получилось информативно и доступно для понимания. Всё на наглядных примерах и готовых конфигах, которые он демонстрирует.
⇨ Automate GitLab + Terraform (state file, and more)
Автор рассмотрел на примере своей homelab установки две интеграции: использование Terraform Provider для настройки ресурсов GitLab и использование GitLab в качестве серверной части для файлов состояния Terraform.
⇨ You should be using Proxmox Backup Server
Свежий обзор Proxmox Backup Server от популярного англоязычного блогера Techno Tim.
⇨ ЛУЧШИЙ ЛИНУКС ДЛЯ НОВИЧКОВ. КАКОЙ LINUX ВЫБРАТЬ НОВИЧКУ
Авторский взгляд на современные дистрибутивы Linux. Информация для новичков, незнакомых с Linux. Автор рассказывает, почему так много разных дистрибутивов, оболочек, как и что выбирать. Сам он рекомендует начинать на десктопе с Mint, ZorinOS, PopOS, Ubuntu или Fedora.
⇨ Настройка Crowdsec Bouncer Traefik Plugin
Настройка Crowdsec. Для тех, кто не знает, что это такое, кратко поясню. Это более современный аналог Fail2ban, написанный на Go, модульный, с API. У автора есть отдельное видео про этот продукт. Кстати, рекомендую посмотреть. Я им пользовался немного, но как-то не прижилось. Большой нужды нет.
⇨ Best NAS in 2024 for Home Lab? Terramaster F4-424 Max Review // Giveaway Winner
Уже не раз встречаю обзоры на NAS фирмы Terramaster. До этого игнорировал, но сейчас решил поделиться. В общем, они пытаются сделать примерно то же самое, что Synology. Пилят свою ОС с управлением через браузер. Называется TOS. Судя по тому, как они вкладываются в маркетинг, что-то путное должно получиться. По ценам там как и у Synology всё грустно. Дорогие устройства. Есть официальный дистрибьютор продукции TerraMaster в России, так что купить устройства можно без проблем в сетевых магазинах.
⇨ OPENCONNECT VPN 2024 | Часть 2 | Сертификаты вместо паролей + Автоматизация!
Автор рассмотрел настройку аутентификации в OpenConnect на базе сертификатов, а не паролей, как сделал я в недавней публикации. Также автор выложил свой ansible playbook для настройки этой темы и оформил основную информацию в текстовом виде. Всё есть в описании к видео.
⇨ Двухфакторная аутентификациядля VPN mikrotik
Вебинар от известного тренера Романа Козлова. Начинать смотреть можно с 15-й минуты. Там рассказана в том числе довольно навороченная схема построения 2FA с использованием Asterisk для генерации и передачи кодов подтверждения через голосовые вызовы для подключения по VPN. Помимо этого там много теории по теме и другие способы организации двухфакторки в микротах с примерами настройки.
#видео
Please open Telegram to view this post
VIEW IN TELEGRAM
YouTube
Компьютер для нейросетей. 5x3090ti, 48cpu, 512gb ram.
Последние нейросети требуют большого количества вычислений и для этой задачи я решил пересобрать свой сервер. Сейчас используется серверная материнская плата, процессор на 48 ядер, 512гб оперативной памяти и 5 видеокарт nvidia rtx 3090 ti. Сервер подходит…
1👍63👎2
🎓 У компании Яндекс есть неплохие бесплатные курсы на базе их же продуктов Yandex Cloud и Практикум. Причём выглядит это со всех сторон привлекательно как для ученика, так и для самого Яндекса. Курсы проходят на базе их облака, то есть идёт вовлечение в свою экосистему. С другой стороны обучающийся взаимодействует с реальной инфраструктурой облака и получает практические навыки.
Учебный процесс построен так, что вся практика проходит на реальных платных ресурсах облака. А чтобы вы не тратили деньги, вам даётся стартовый грант на 4000 р., которых должно хватить для обучения. Для выполнения задания тратятся небольшие суммы.
Я попробовал обучение на курсе по Terraform, так как это универсальный инструмент, который актуален не только в привязке к облаку Яндекса. Вот страница с курсами:
⇨ https://yandex.cloud/ru/training
Если отсюда выбрать курс, то вас переместит в личный кабинет Практикума, где он будет помечен, как оплаченный. И вы будете обучаться на известной обучающей платформе. Мне, кстати, понравилось, как там всё устроено.
Это будет актуально для тех, кто выбирает себе курсы для обучения. Можете оценить качество материала и самой платформы. На Практикуме много всего продаётся. Причём за много денег. Курс по DevOps - 150 т.р. 😱 Я бы не купил, если бы не был на 100% уверен, что он подходящего качества. Если кого-то интересует моё мнение по поводу этих курсов, то ничего не скажу. Не знаю ни одного человека, кто бы там отучился.
#обучение #бесплатно
Учебный процесс построен так, что вся практика проходит на реальных платных ресурсах облака. А чтобы вы не тратили деньги, вам даётся стартовый грант на 4000 р., которых должно хватить для обучения. Для выполнения задания тратятся небольшие суммы.
Я попробовал обучение на курсе по Terraform, так как это универсальный инструмент, который актуален не только в привязке к облаку Яндекса. Вот страница с курсами:
⇨ https://yandex.cloud/ru/training
Если отсюда выбрать курс, то вас переместит в личный кабинет Практикума, где он будет помечен, как оплаченный. И вы будете обучаться на известной обучающей платформе. Мне, кстати, понравилось, как там всё устроено.
Это будет актуально для тех, кто выбирает себе курсы для обучения. Можете оценить качество материала и самой платформы. На Практикуме много всего продаётся. Причём за много денег. Курс по DevOps - 150 т.р. 😱 Я бы не купил, если бы не был на 100% уверен, что он подходящего качества. Если кого-то интересует моё мнение по поводу этих курсов, то ничего не скажу. Не знаю ни одного человека, кто бы там отучился.
#обучение #бесплатно
👍72👎9
Media is too big
VIEW IN TELEGRAM
Два сисадмина объединившись научат вас всему необходимому...
🥷 Сетевик Джонни // Network Admin — канал сетевого инженера, который поможет вам разобраться в тонкостях сетевого администрирования доступным языком.
👨💻 Серверная Админа - кладезь информации для сетевика с большим количеством уроков и статей по устройству компьютерных сетей.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍29👎7
Когда только начинал работать с виртуализацией на Linux, очень хотелось сесть за сервер и прямо на нём что-то сделать. Но на тот момент ни XenServer, ни VmWare не позволяли это сделать. На экране сервера был небольшой список простых действий типа настроек сети или перезагрузки. И ничего, что относилось бы к управлению виртуальными машинами. После экспериментов с VMware Workstation и Hyper-V было как-то непривычно и неудобно.
Для управления гипервизором нужно было сесть за какое-то рабочее место, поставить соответствующий клиент и через него подключаться для управления. В Proxmox с этим сейчас попроще, так как управление через браузер. Но тем не менее, он тоже не позволяет локально что-то с ним сделать. В связи этим не возникает проблем в обычной эксплуатации. А вот если вы используете Proxmox в каких-то необычных задачах, то может возникнуть желание подключить к нему монитор и выполнять настройки прямо тут же.
В Proxmox решить эту задачу очень просто. Под капотом там обычная система Debian, на которую можно установить графическую оболочку. Более того, как это сделать, рассказано в официальной Wiki проекта. Там это названо так:
⇨ Developer Workstations with Proxmox VE and X11
Всё, что вам надо сделать, так это установить туда xfce, браузер и менеджер управления графическими оболочками в системе. Предупреждаю, что делать это на продуктовых серверах - плохая практика.
Выполняем непосредственно гипервизоре:
Добавляем пользователя, от имени которого мы будем заходить и подключаться к веб интерфейсу:
Запускаем графическую оболочку:
Можно подключать монитор к серверу, заходить в систему и подключаться к локальному веб интерфейсу по адресу https://localhost:8006.
Вроде мелочь, а на самом деле удобная возможность. Я одно время хотел дома организовать рабочую станцию, чтобы семейные могли работать локально, а я иногда запускать тестовые виртуальные машины в случае необходимости. Решил в итоге задачу через RDP подключение к системе, даже когда на ней кто-то локально работает. Обычная винда позволяет превратить себя в мини-терминальник. Но это отдельная история.
Если заметка вам полезна, не забудьте 👍 и забрать в закладки.
#proxmox
Для управления гипервизором нужно было сесть за какое-то рабочее место, поставить соответствующий клиент и через него подключаться для управления. В Proxmox с этим сейчас попроще, так как управление через браузер. Но тем не менее, он тоже не позволяет локально что-то с ним сделать. В связи этим не возникает проблем в обычной эксплуатации. А вот если вы используете Proxmox в каких-то необычных задачах, то может возникнуть желание подключить к нему монитор и выполнять настройки прямо тут же.
В Proxmox решить эту задачу очень просто. Под капотом там обычная система Debian, на которую можно установить графическую оболочку. Более того, как это сделать, рассказано в официальной Wiki проекта. Там это названо так:
⇨ Developer Workstations with Proxmox VE and X11
Всё, что вам надо сделать, так это установить туда xfce, браузер и менеджер управления графическими оболочками в системе. Предупреждаю, что делать это на продуктовых серверах - плохая практика.
Выполняем непосредственно гипервизоре:
# apt install xfce4 chromium lightdm
Добавляем пользователя, от имени которого мы будем заходить и подключаться к веб интерфейсу:
# adduser webuser
Запускаем графическую оболочку:
# systemctl start lightdm
Можно подключать монитор к серверу, заходить в систему и подключаться к локальному веб интерфейсу по адресу https://localhost:8006.
Вроде мелочь, а на самом деле удобная возможность. Я одно время хотел дома организовать рабочую станцию, чтобы семейные могли работать локально, а я иногда запускать тестовые виртуальные машины в случае необходимости. Решил в итоге задачу через RDP подключение к системе, даже когда на ней кто-то локально работает. Обычная винда позволяет превратить себя в мини-терминальник. Но это отдельная история.
Если заметка вам полезна, не забудьте 👍 и забрать в закладки.
#proxmox
👍172👎14
Если вам нужно быстро распарсить и проанализировать стандартные логи веб сервера, то могу предложить бесплатный сервис для этого - betterstack.com. Он построен на базе Grafana и Loki, есть бесплатный тарифный план, который как раз и позволяет воспользоваться им с ограничением используемого объёма в 3 ГБ.
Сразу скажу, не стоит серьёзно относиться к подобным сервисам. Для этого есть несколько причин:
1️⃣ Он иностранный.
2️⃣ Речь идёт про бесплатный тариф.
3️⃣ Он просто чужой для вас.
Тем не менее, я когда-то давно рассказывал про axiom.co, куда я дублирую некоторые логи веб серверов. С тех пор он так и продолжает нормально работать, я им иногда пользуюсь, чтобы посмотреть некоторую информацию.
Betterstack примерно то же самое, что и axiom, только более функциональный, и на базе привычного стека Grafana, только перепиленный немного. Он много чего умеет, так как совмещает в себе мониторинг и хранение логов, но лично мне он был интересен только в качестве анализа логов, поэтому делаю акцент на этом.
Кратко поясню, как эта шутка может быть полезна. В комплекте с сервисом идёт преднастроенный сборщик логов vector, который не только отправляет логи в хранилище, но и парсит их, вычленяя информацию об IP, урле, агенте и т. д. То есть разбирает всю информацию из лога. Далее в обзоре логов вы можете делать выборку на основе этих данных. Например, может посмотреть:
◽️кто и когда обращался к конкретному url;
◽️какие страницы посещал клиент с конкретным IP адресом;
◽️кому показывались 404-е ошибки;
◽️ и т.д.
Работа с сервисом выглядит следующим образом:
1️⃣ Вы регистрируетесь. Уже не помню, что надо для регистрации, я давно это сделал, а пишу только сейчас. Вроде только почту спросили.
2️⃣ Устанавливаете через готовый скрипт setup-vector.sh сборщик логов, в который уже будет зашит готовый конфиг и ваш токен. После установки логи сразу потекут в ваш аккаунт. По умолчанию он соберёт логи веб сервера в
3️⃣ Идёте в веб интерфейс и смотрите логи в режиме live tail, то есть в реальном времени, смотрите преднастроенные дашборды, либо делаете свои выборки на основе каких-то правил.
Всё это удобно организовано и каких-то особых знаний не требуется. Хотя это может быть и субъективно. Я часто работаю с логами, поэтому может просто привык уже.
Vector не обязательно ставить на рабочий веб сервер. Можете завести для этого отдельную машину и передавать туда логи. Это если вам не хочется ставить что-то постороннее на рабочие сервера. Хотя в Vector нет ничего особенного. Это уже известный и привычный инструмент для сбора логов. Можно у него конфиг подсмотреть. К примеру, вот регулярка для разбора логов веб сервера:
Выглядит жутковато. Мне grok фильтры для этих задач видятся проще.
#logs
Сразу скажу, не стоит серьёзно относиться к подобным сервисам. Для этого есть несколько причин:
Тем не менее, я когда-то давно рассказывал про axiom.co, куда я дублирую некоторые логи веб серверов. С тех пор он так и продолжает нормально работать, я им иногда пользуюсь, чтобы посмотреть некоторую информацию.
Betterstack примерно то же самое, что и axiom, только более функциональный, и на базе привычного стека Grafana, только перепиленный немного. Он много чего умеет, так как совмещает в себе мониторинг и хранение логов, но лично мне он был интересен только в качестве анализа логов, поэтому делаю акцент на этом.
Кратко поясню, как эта шутка может быть полезна. В комплекте с сервисом идёт преднастроенный сборщик логов vector, который не только отправляет логи в хранилище, но и парсит их, вычленяя информацию об IP, урле, агенте и т. д. То есть разбирает всю информацию из лога. Далее в обзоре логов вы можете делать выборку на основе этих данных. Например, может посмотреть:
◽️кто и когда обращался к конкретному url;
◽️какие страницы посещал клиент с конкретным IP адресом;
◽️кому показывались 404-е ошибки;
◽️ и т.д.
Работа с сервисом выглядит следующим образом:
1️⃣ Вы регистрируетесь. Уже не помню, что надо для регистрации, я давно это сделал, а пишу только сейчас. Вроде только почту спросили.
2️⃣ Устанавливаете через готовый скрипт setup-vector.sh сборщик логов, в который уже будет зашит готовый конфиг и ваш токен. После установки логи сразу потекут в ваш аккаунт. По умолчанию он соберёт логи веб сервера в
/var/log/nginx
и некоторые системные логи. 3️⃣ Идёте в веб интерфейс и смотрите логи в режиме live tail, то есть в реальном времени, смотрите преднастроенные дашборды, либо делаете свои выборки на основе каких-то правил.
Всё это удобно организовано и каких-то особых знаний не требуется. Хотя это может быть и субъективно. Я часто работаю с логами, поэтому может просто привык уже.
Vector не обязательно ставить на рабочий веб сервер. Можете завести для этого отдельную машину и передавать туда логи. Это если вам не хочется ставить что-то постороннее на рабочие сервера. Хотя в Vector нет ничего особенного. Это уже известный и привычный инструмент для сбора логов. Можно у него конфиг подсмотреть. К примеру, вот регулярка для разбора логов веб сервера:
nginx = parse_regex(.message, r'^\s*(-|(?P<client>\S+))\s+(-|(?P<remote_user>\S+))\s+(-|(?P<user>\S+))\s+\[(?P<timestamp>.+)\]\s+"(?P<request>-\s+-|(?P<method>\w+)\s+(?P<path>\S+)\s+(?P<protocol>\S+))"\s+(?P<status>\d+)\s+(?P<size>\d+)\s+"(-?|(?P<referrer>.+))"\s+"(-?|(?P<agent>.+))"\s*')
Выглядит жутковато. Мне grok фильтры для этих задач видятся проще.
#logs
Please open Telegram to view this post
VIEW IN TELEGRAM
👍35👎6
Сегодня у меня заметка, которая может порадовать пользователей Windows. Она будет на тему одновременного подключения к обычной, не серверной редакции Windows по RDP нескольких пользователей. Я всегда знал, что это возможно сделать с помощью RDP Wrapper Library. На эту тему в прошлом написана популярная статья на моём сайте. Вопросом давно не интересовался, статью больше не актуализирую.
И вот недавно узнал, что есть намного проще способ сделать то же самое. Есть редакция Windows 10 Enterprise for Virtual Desktop, где разрешены одновременные подключения по RDP. Windows 10 или 11 легко перевести на эту редакцию. Все ключи без проблем гуглятся. Причём одни и те же. Их почему-то не блокируют.
Для активации режима одновременной работы по RDP открываем консоль от администратора и делаем следующее:
1️⃣ Проверяем версию системы. Я тестировал на Windows 11 Professional. Про другие редакции ничего сказать не могу.
2️⃣ Обновляем Professional до Enterprise:
3️⃣ Устанавливаем ключ для редакции Enterprise for Remote Sessions:
Теперь надо активировать систему. Способов для этого много. Мне знаком способ со сборкой vlmcsd из открытого проекта на github. Он хоть и закрыт уже, но способ рабочий. Наверняка где-то можно взять готовый пакет, но я собрал свой на Debian 12:
Проверяем, что служба vlmcsd запущена:
Идём в Windows и прописываем там этот сервер для активации:
И проводим активацию:
Далее через локальную групповую политику меняем режим лицензирования удалённых рабочих столов. Для этого запускаем оснастку:
Идём в раздел:
◽️Конфигурация компьютера ⇨
◽️Административные шаблоны ⇨
◽️Компоненты Windows ⇨
◽️Службы удалённых рабочих столов ⇨
◽️Узел сеансов удалённых рабочих столов ⇨
◽️Лицензирование ⇨
◽️Задать режим лицензирования удалённых рабочих столов ⇨
◽️Выбираем Включено, режим ставим "На пользователя"
Теперь нужно перезагрузить компьютер. После этого к системе можно будет подключаться по RDP нескольким пользователям, и никого не будет выкидывать при новом подключении.
❗️Не забываем, что это нарушает все возможные лицензии Microsoft. Так что в свои компании не надо это необдуманно ставить.
Если заметка вам полезна, не забудьте 👍 и забрать в закладки.
#windows #rdp
И вот недавно узнал, что есть намного проще способ сделать то же самое. Есть редакция Windows 10 Enterprise for Virtual Desktop, где разрешены одновременные подключения по RDP. Windows 10 или 11 легко перевести на эту редакцию. Все ключи без проблем гуглятся. Причём одни и те же. Их почему-то не блокируют.
Для активации режима одновременной работы по RDP открываем консоль от администратора и делаем следующее:
> DISM /online /Get-CurrentEdition
> changepk.exe /ProductKey NPPR9-FWDCX-D2C8J-H872K-2YT43
> slmgr -ipk CPWHC-NT2C7-VYW78-DHDB2-PG3GK
Теперь надо активировать систему. Способов для этого много. Мне знаком способ со сборкой vlmcsd из открытого проекта на github. Он хоть и закрыт уже, но способ рабочий. Наверняка где-то можно взять готовый пакет, но я собрал свой на Debian 12:
# apt install build-essential debhelper git
# cd ~ && git clone https://github.com/Wind4/vlmcsd
# cd vlmcsd
# git submodule update --init debian
# dpkg-buildpackage -rfakeroot -D -us -uc
# cd ~ && dpkg -i ./vlmcsd_1113_amd64.deb
Проверяем, что служба vlmcsd запущена:
# ss -tulnp | grep vlmcsd
Идём в Windows и прописываем там этот сервер для активации:
> slmgr -skms 10.20.1.36
И проводим активацию:
> slmgr -ato
Далее через локальную групповую политику меняем режим лицензирования удалённых рабочих столов. Для этого запускаем оснастку:
> gpedit.msc
Идём в раздел:
◽️Конфигурация компьютера ⇨
◽️Административные шаблоны ⇨
◽️Компоненты Windows ⇨
◽️Службы удалённых рабочих столов ⇨
◽️Узел сеансов удалённых рабочих столов ⇨
◽️Лицензирование ⇨
◽️Задать режим лицензирования удалённых рабочих столов ⇨
◽️Выбираем Включено, режим ставим "На пользователя"
Теперь нужно перезагрузить компьютер. После этого к системе можно будет подключаться по RDP нескольким пользователям, и никого не будет выкидывать при новом подключении.
❗️Не забываем, что это нарушает все возможные лицензии Microsoft. Так что в свои компании не надо это необдуманно ставить.
Если заметка вам полезна, не забудьте 👍 и забрать в закладки.
#windows #rdp
Please open Telegram to view this post
VIEW IN TELEGRAM
3👍339👎5
Любопытное видео посмотрел не по теме канала, но тем не менее это касается каждого из нас. Плюс, было просто интересно. Видео можно прослушать в фоне или за рулём автомобиля.
▶️ Геопространственная разведка на вашем рабочем столе
Автор рассказывает, как используя различные публичные инструменты, осуществлять разведку и поиск объектов по фотографиям. Мне понравилось выступление. Информация в основном для расширения кругозора. Может кого-то заинтересует и он захочет в этом углубиться. Кратко пройдусь по технической части из видео.
Самая база - метаданные на фотках. В них могут быть точные координаты. Но это редко попадается. Далее можно улучшить качество изображения с помощью сервисов deep paint, let's enchance.io, smart upscaler, remini. На картинках можно удалить лишние объекты с помощью cleanup.pictures, removebg. Пригодится для поиска географического места без посторонних объектов в кадре, либо для поиска объектов.
Если есть видео, то можно применить панорамирование - создание из видеороликов панорамы. И далее поиск по панорамам. Ориентировка на изображениях выполняется с привязкой к горам, если они там есть, так как они все известны, посчитаны, измерены. Тени помогают узнать время действия и иногда место. Сервис для этого - Shade Map.
Инструменты для автоматической аналитики: Reverse image search, Advanced object search, поиск по картинке в поисковиках, geolocation estimation. Существуют сервисы объединения панорам со схемой и спутниковой картой: dual maps, maps compare. Это для ручного исследования.
То, что вы сфоткали и выложили в интернет, с большой долей вероятности может быть идентифицировано как географически, так и в привязке к вам. Если не хотите, чтобы о вас кто-то что-то знал, то не выкладывайте о себе информацию. Самая простая защита от этого, которая может сильно осложнить поиск - отзеркалить изображение и наложить лёгкий шум. От автоматических инструментов это реально защитит. Но вручную по деталям специалист всё равно сможет найти информацию.
То, что мы видим в публичном доступе на сервисах панорам, фоток различных мест, карт, спутниковых снимков, а так же частные фото людей, скорее всего уже проиндексировано и объединено в единую базу, так что поиск работает в автоматическом режиме. В публичный доступ вряд ли это будет отдано. А спецслужбы наверняка этим пользуются.
Тут я добавлю некоторые свои мысли. То, что мы сейчас видим в публичном доступе в виде ChatGPT и других нейросетей, скорее всего в закрытых контурах работает уже давно. У того же Apple, Google, Microsoft огромные объёмы собранных данных от людей через конечные устройства. Ни у кого подобных объёмов в масштабах всего мира нет. И сейчас часть этих возможностей вышла в публичный доступ. А в закрытом доступе скорее всего уже работают более точные специализированные нейросети, которые, к примеру, по фотке сразу определяют человека, его голос, его настроение на основе интонаций, его характер, круг общения и предположительное местонахождение этого круга, доходы и т.д.
Они же могут просчитать необходимое воздействие на какую-то социальную систему, какие и сколько источников информации понадобится, какой будет примерный бюджет и т.д. Какие психотипы лидеров мнений надо задействовать, какие смежные социальные системы взять в обработку и т.д. В рекламе это частично есть уже сейчас. Особо не скрывается, но и не на виду.
Вроде живёшь себе и живёшь, что сейчас, что 20 лет назад. Но если подумать, то мир кардинально изменился с появлением интернета и повсеместным распространением смартфонов.
#разное
▶️ Геопространственная разведка на вашем рабочем столе
Автор рассказывает, как используя различные публичные инструменты, осуществлять разведку и поиск объектов по фотографиям. Мне понравилось выступление. Информация в основном для расширения кругозора. Может кого-то заинтересует и он захочет в этом углубиться. Кратко пройдусь по технической части из видео.
Самая база - метаданные на фотках. В них могут быть точные координаты. Но это редко попадается. Далее можно улучшить качество изображения с помощью сервисов deep paint, let's enchance.io, smart upscaler, remini. На картинках можно удалить лишние объекты с помощью cleanup.pictures, removebg. Пригодится для поиска географического места без посторонних объектов в кадре, либо для поиска объектов.
Если есть видео, то можно применить панорамирование - создание из видеороликов панорамы. И далее поиск по панорамам. Ориентировка на изображениях выполняется с привязкой к горам, если они там есть, так как они все известны, посчитаны, измерены. Тени помогают узнать время действия и иногда место. Сервис для этого - Shade Map.
Инструменты для автоматической аналитики: Reverse image search, Advanced object search, поиск по картинке в поисковиках, geolocation estimation. Существуют сервисы объединения панорам со схемой и спутниковой картой: dual maps, maps compare. Это для ручного исследования.
То, что вы сфоткали и выложили в интернет, с большой долей вероятности может быть идентифицировано как географически, так и в привязке к вам. Если не хотите, чтобы о вас кто-то что-то знал, то не выкладывайте о себе информацию. Самая простая защита от этого, которая может сильно осложнить поиск - отзеркалить изображение и наложить лёгкий шум. От автоматических инструментов это реально защитит. Но вручную по деталям специалист всё равно сможет найти информацию.
То, что мы видим в публичном доступе на сервисах панорам, фоток различных мест, карт, спутниковых снимков, а так же частные фото людей, скорее всего уже проиндексировано и объединено в единую базу, так что поиск работает в автоматическом режиме. В публичный доступ вряд ли это будет отдано. А спецслужбы наверняка этим пользуются.
Тут я добавлю некоторые свои мысли. То, что мы сейчас видим в публичном доступе в виде ChatGPT и других нейросетей, скорее всего в закрытых контурах работает уже давно. У того же Apple, Google, Microsoft огромные объёмы собранных данных от людей через конечные устройства. Ни у кого подобных объёмов в масштабах всего мира нет. И сейчас часть этих возможностей вышла в публичный доступ. А в закрытом доступе скорее всего уже работают более точные специализированные нейросети, которые, к примеру, по фотке сразу определяют человека, его голос, его настроение на основе интонаций, его характер, круг общения и предположительное местонахождение этого круга, доходы и т.д.
Они же могут просчитать необходимое воздействие на какую-то социальную систему, какие и сколько источников информации понадобится, какой будет примерный бюджет и т.д. Какие психотипы лидеров мнений надо задействовать, какие смежные социальные системы взять в обработку и т.д. В рекламе это частично есть уже сейчас. Особо не скрывается, но и не на виду.
Вроде живёшь себе и живёшь, что сейчас, что 20 лет назад. Но если подумать, то мир кардинально изменился с появлением интернета и повсеместным распространением смартфонов.
#разное
YouTube
Геопространственная разведка на вашем рабочем столе
1👍90👎3
Актуализировал свою статью про настройку почтового сервера на базе Debian 12:
⇨ Настройка почтового сервера на Debian: postfix + dovecot + web интерфейс
Если вам нужен стандартный почтовый сервер с базовыми возможностями, то с помощью этой статьи вы практически в режиме copy-paste сможете его настроить.
❓Может возникнуть резонный вопрос. Стоит ли всем этим заниматься самостоятельно и настраивать с нуля? Есть много вариантов готовых почтовых серверов, которые настраиваются в несколько действий. Моё мнение такое. Если вам нужен сервер для небольших вспомогательных задач, то лучше взять что-то готовое и не заморачиваться. Это такие знания, которые некоторым вообще не пригодятся в их карьере. Сейчас услуги почтовых серверов в основном приобретаются как сервис. Если в вашем случае такой сервис можно купить, то купите. Так будет удобнее всем, и пользователям, и тем, кто это будет поддерживать.
Самостоятельно настраивать почтовый сервер имеет смысл, если вы хотите изучить его работу, и вам это пригодится в будущем. Если вам нужно будет администрировать нагруженный почтовый сервер, с которым будет работать множество пользователей, то вникать в нюансы его работы нужно будет в обязательном порядке. Даже если вы планируете купить коммерческое решение, потренируйтесь в настройке самостоятельно. Postfix в этом плане подходящий вариант, так как к нему шаг за шагом можно навешивать новую функциональность и смотреть, как всё это вместе работает.
Второй вариант - вам нужно что-то необычное. Например, изменять письма перед отправкой. Отправлять почту с почтового сервера, используя несколько других в качестве релея, управляя условиями выбора того или иного внешнего сервера. Вы хотите что-то делать с письмами на основе их содержимого, заголовков и других признаков. Например, автоматически удалять какие-то письма по истечении определённого времени. Вам нужен почтовый сервер для двух доменных зон - одна для внешней почты, другая только для внутренней переписки, без возможности отправки какими-то пользователями почты во вне. Вы хотите кому-то запретить отправлять больше 30-ти писем в час. В общем, тут вы ограничены только своей фантазией. На базе Postfix и обвязки можно реализовать разнообразные функциональности.
Полезные ссылки по этой теме:
◽️Подборка онлайн сервисов для диагностики почтовых серверов
◽️Imapsync для переноса почты между серверами
◽️Ограничение на отправку за определённый период времени
◽️Защита почтового сервера с помощью Fail2Ban
◽️Перенос почтового сервера Postfix
◽️Очистка почтовых ящиков средствами Dovecot
◽️Веб интерфейс SnappyMail
◽️Инструмент для диагностики почтовых серверов - Swaks
◽️Модуль статистики для мониторинга Dovecot
◽️Мониторинг postfix в zabbix
◽️Настройка маршрута отправки в зависимости от домена
◽️Как изменить тему письма и адрес отправителя через postfix
◽️Выбор сервера для отправки в зависимости от получателя
◽️Названия imap директорий ф кодировке UTF-7
◽️Бэкап почтовых ящиков с помощью imap-backup
◽️Greylisting для борьбы со спамом
Если ищите себе вариант готового бесплатного сервера, то у меня почти все популярные варианты были на канале:
▪️Mailcow
▪️Mail-in-a-Box
▪️hMailServer
▪️Tegu
▪️Iredmail
▪️Carbonio CE
▪️Poste.io
▪️docker-mailserver
▪️Modoboa
Краткое описание некоторых из них было в подборке.
Если заметка вам полезна, не забудьте 👍 и забрать в закладки.
#mailserver #подборка
⇨ Настройка почтового сервера на Debian: postfix + dovecot + web интерфейс
Если вам нужен стандартный почтовый сервер с базовыми возможностями, то с помощью этой статьи вы практически в режиме copy-paste сможете его настроить.
❓Может возникнуть резонный вопрос. Стоит ли всем этим заниматься самостоятельно и настраивать с нуля? Есть много вариантов готовых почтовых серверов, которые настраиваются в несколько действий. Моё мнение такое. Если вам нужен сервер для небольших вспомогательных задач, то лучше взять что-то готовое и не заморачиваться. Это такие знания, которые некоторым вообще не пригодятся в их карьере. Сейчас услуги почтовых серверов в основном приобретаются как сервис. Если в вашем случае такой сервис можно купить, то купите. Так будет удобнее всем, и пользователям, и тем, кто это будет поддерживать.
Самостоятельно настраивать почтовый сервер имеет смысл, если вы хотите изучить его работу, и вам это пригодится в будущем. Если вам нужно будет администрировать нагруженный почтовый сервер, с которым будет работать множество пользователей, то вникать в нюансы его работы нужно будет в обязательном порядке. Даже если вы планируете купить коммерческое решение, потренируйтесь в настройке самостоятельно. Postfix в этом плане подходящий вариант, так как к нему шаг за шагом можно навешивать новую функциональность и смотреть, как всё это вместе работает.
Второй вариант - вам нужно что-то необычное. Например, изменять письма перед отправкой. Отправлять почту с почтового сервера, используя несколько других в качестве релея, управляя условиями выбора того или иного внешнего сервера. Вы хотите что-то делать с письмами на основе их содержимого, заголовков и других признаков. Например, автоматически удалять какие-то письма по истечении определённого времени. Вам нужен почтовый сервер для двух доменных зон - одна для внешней почты, другая только для внутренней переписки, без возможности отправки какими-то пользователями почты во вне. Вы хотите кому-то запретить отправлять больше 30-ти писем в час. В общем, тут вы ограничены только своей фантазией. На базе Postfix и обвязки можно реализовать разнообразные функциональности.
Полезные ссылки по этой теме:
◽️Подборка онлайн сервисов для диагностики почтовых серверов
◽️Imapsync для переноса почты между серверами
◽️Ограничение на отправку за определённый период времени
◽️Защита почтового сервера с помощью Fail2Ban
◽️Перенос почтового сервера Postfix
◽️Очистка почтовых ящиков средствами Dovecot
◽️Веб интерфейс SnappyMail
◽️Инструмент для диагностики почтовых серверов - Swaks
◽️Модуль статистики для мониторинга Dovecot
◽️Мониторинг postfix в zabbix
◽️Настройка маршрута отправки в зависимости от домена
◽️Как изменить тему письма и адрес отправителя через postfix
◽️Выбор сервера для отправки в зависимости от получателя
◽️Названия imap директорий ф кодировке UTF-7
◽️Бэкап почтовых ящиков с помощью imap-backup
◽️Greylisting для борьбы со спамом
Если ищите себе вариант готового бесплатного сервера, то у меня почти все популярные варианты были на канале:
▪️Mailcow
▪️Mail-in-a-Box
▪️hMailServer
▪️Tegu
▪️Iredmail
▪️Carbonio CE
▪️Poste.io
▪️docker-mailserver
▪️Modoboa
Краткое описание некоторых из них было в подборке.
Если заметка вам полезна, не забудьте 👍 и забрать в закладки.
#mailserver #подборка
Server Admin
Настройка почтового сервера на Debian: postfix + dovecot + web...
Подробная пошаговая установка и настройка почтового сервера на Debian (postfix + dovecot): от подготовки DNS записей до запуска служб.
👍229👎3
Я активно использую WSL на своём рабочем ноуте. Очень не хватало возможности запускать программы Linux с графикой. Работал только в консоли. Видел раньше какие-то инструкции на этот счёт, пробовал запускать иксы, но быстро не получалось, а разбираться было лень. Надо было как-то заморочиться с установкой X сервера в Windows.
На днях попал в репозиторий wslg. Там как-то буднично описано, что для запуска GUI приложений достаточно проверить, что WSL версии 2, установить свежий дистрибутив из магазина и установить внутри него необходимое приложение.
Я ничего специально у себя не делал. WSL у меня давно 2-й версии. Система - Windows 11, все обновления стоят. В качестве Linux системы давно уже установлена Ubuntu 22 из магазина. Внутри она обновления до 24-й версии.
Захожу в Ubuntu, устанавливаю gedit:
Иду в пуск рабочей системы Windows и вижу там в группе Ubuntu 22 установленное приложение gedit, которое без проблем запускается. Ничего настраивать не надо. Не знаю, в какой момент это стало работать именно так, но работает. Я ничего для этого не настраивал. Похоже с каким-то обновлением винды приехало.
Поставил для теста Edge под Linux:
Судя по ярлыкам в пуске, приложения запускаются вот так:
Очень удобно. Теперь приложения и Windows, и Linux работают нативно в одной системе, в распложенных рядом окнах. Пользуйтесь.
#windows
На днях попал в репозиторий wslg. Там как-то буднично описано, что для запуска GUI приложений достаточно проверить, что WSL версии 2, установить свежий дистрибутив из магазина и установить внутри него необходимое приложение.
Я ничего специально у себя не делал. WSL у меня давно 2-й версии. Система - Windows 11, все обновления стоят. В качестве Linux системы давно уже установлена Ubuntu 22 из магазина. Внутри она обновления до 24-й версии.
Захожу в Ubuntu, устанавливаю gedit:
# apt install gedit
Иду в пуск рабочей системы Windows и вижу там в группе Ubuntu 22 установленное приложение gedit, которое без проблем запускается. Ничего настраивать не надо. Не знаю, в какой момент это стало работать именно так, но работает. Я ничего для этого не настраивал. Похоже с каким-то обновлением винды приехало.
Поставил для теста Edge под Linux:
# wget https://packages.microsoft.com/repos/edge/pool/main/m/microsoft-edge-stable/microsoft-edge-stable_129.0.2792.79-1_amd64.deb
# apt install ./microsoft-edge-stable_129.0.2792.79-1_amd64.deb
Судя по ярлыкам в пуске, приложения запускаются вот так:
"C:\Program Files\WSL\wslg.exe" -d
Ubuntu-22.04 --cd "~" -- gedit
Очень удобно. Теперь приложения и Windows, и Linux работают нативно в одной системе, в распложенных рядом окнах. Пользуйтесь.
#windows
12👍156👎9
Упустил момент с тем, что компания Gitlab ограничила доступ к своему репозиторию gitlab-ee. Не видел новостей на этот счёт. Но при этом остался доступ к репозиторию gitlab-сe. Поясню различия между этими версиями и репозиториями.
Gitlab позволяет развернуть свой продукт в так называемом режиме self-managed. То есть вы его берёте и ставите на свой сервер. Исходный код сервера открыт. У компании есть репозитории с пакетами под все популярные системы.
При этом существуют две редакции Gitlab:
▪️Community Edition
▪️Enterprise Edition
Редакция Community полностью с открытым исходным кодом. Можно брать и пользоваться. Enterprise построена на базе кода Community, но к ней добавлены возможности на основе закрытого кода. Эта дополнительная функциональность будет работать только если вы заплатите, либо запустите ознакомительную версию.
Таким образом, если для вас недопустимо разворачивать продукт, где присутствует код под проприетарной лицензией, то берите Community Edition. Переход с этой версии на платную невозможен. Нужно будет делать миграцию. Если же вам всё равно на наличие закрытого кода, то можно ставить Enterprise Edition. Без оплаты эта редакция будет работать так же, как и Community. Но если вы захотите воспользоваться платными дополнениями, то просто заплатите и будете пользоваться.
Для простоты и удобства Gitlab рекомендует всем ставить Enterprise Edition. Её пакеты лежат в репозитории https://packages.gitlab.com/gitlab/gitlab-ee. Доступ туда IP адресам из РФ закрыт. Потеря невелика, так как что-то купить всё равно не получится. А доступ к репозиторию с Community Edition открыт - https://packages.gitlab.com/gitlab/gitlab-ce. Оттуда можно выполнить установку. Выглядит это вот так:
Не забудьте указать свой url. Для теста можно использовать IP адрес, примерно так: https://10.20.1.36. Учётка для входа будет root, пароль в файле
Подобным образом вы без проблем можете развернуть бесплатную версию gitlab с открытым исходным кодом на своём сервере. Ни регистраций, ни чего-то ещё не требуется. Можно свободно пользоваться.
#gitlab #devops
Gitlab позволяет развернуть свой продукт в так называемом режиме self-managed. То есть вы его берёте и ставите на свой сервер. Исходный код сервера открыт. У компании есть репозитории с пакетами под все популярные системы.
При этом существуют две редакции Gitlab:
▪️Community Edition
▪️Enterprise Edition
Редакция Community полностью с открытым исходным кодом. Можно брать и пользоваться. Enterprise построена на базе кода Community, но к ней добавлены возможности на основе закрытого кода. Эта дополнительная функциональность будет работать только если вы заплатите, либо запустите ознакомительную версию.
Таким образом, если для вас недопустимо разворачивать продукт, где присутствует код под проприетарной лицензией, то берите Community Edition. Переход с этой версии на платную невозможен. Нужно будет делать миграцию. Если же вам всё равно на наличие закрытого кода, то можно ставить Enterprise Edition. Без оплаты эта редакция будет работать так же, как и Community. Но если вы захотите воспользоваться платными дополнениями, то просто заплатите и будете пользоваться.
Для простоты и удобства Gitlab рекомендует всем ставить Enterprise Edition. Её пакеты лежат в репозитории https://packages.gitlab.com/gitlab/gitlab-ee. Доступ туда IP адресам из РФ закрыт. Потеря невелика, так как что-то купить всё равно не получится. А доступ к репозиторию с Community Edition открыт - https://packages.gitlab.com/gitlab/gitlab-ce. Оттуда можно выполнить установку. Выглядит это вот так:
# curl https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.deb.sh | bash
# EXTERNAL_URL="https://gitlab.example.com" apt-get install gitlab-ce
Не забудьте указать свой url. Для теста можно использовать IP адрес, примерно так: https://10.20.1.36. Учётка для входа будет root, пароль в файле
/etc/gitlab/initial_root_password
.Подобным образом вы без проблем можете развернуть бесплатную версию gitlab с открытым исходным кодом на своём сервере. Ни регистраций, ни чего-то ещё не требуется. Можно свободно пользоваться.
#gitlab #devops
👍64👎7
В последние несколько дней заметил какую-то необычную активность на сайте. Заметно выросло количество посетителей по сравнению с прошлыми неделями. Решил глянуть, откуда и куда идёт трафик. Оказалось, что из поисковиков на небольшую заметку про чат-сервер Revolt.
Недавно заблокировали Discord. Я им никогда не пользовался, так что не столкнулся лично с проблемами. Не погружался в эту тему. Судя по всему, Revolt предлагают как альтернативу. У меня совсем короткая заметка про него. Чат я посмотрел в своё время и благополучно забыл про него. Даже не вспоминал. А он, судя по всему, набрал популярность. А в условиях блокировки Discord, большую популярность.
Посмотрел на него ещё раз. Кратко напомню, что это open source проект, который разрабатывается под соусом замены Discord. Написан на Rust, хранит базу в MongoDB, для файлов использует S3. Есть API, веб версия клиента, приложение на десктопы.
Серверная часть упакована в Docker Compose. Установить у себя так:
В .env и Revolt.toml надо имя домена указать. Для теста можно IP адрес использовать. Не знаю, возникнет ли у вас ошибка, когда будете пробовать. Я когда запускал, получал ошибку монтирования Revolt.toml. Надо композ немного подправить. Буквально вчера принят PR на этот счёт. Надо в
на:
После этого проект успешно запустится. Правда зарегистрироваться на своём сервере у меня не получилось. Всё время получал ошибку NETWORKERROR. Бегло не получилось решить проблему. В логах ошибок не было, в репозитории тоже ничего не нашёл. Копать не стал. Подозреваю, это из-за того, что вместо доменного имени использовал IP.
Попробовал зарегистрироваться на их публичных серверах. Не смог. То ли у них сломалось что-то от наплыва пользователей из РФ, то ли специально закрыли регистрацию. Получал ошибку, что не прошёл каптчу, хотя там никакой каптчи нет. Потом вспомнил, что у меня есть учётка. Под ней зашёл нормально.
На вид чат как чат, ничем особо не отличается от всех остальных подобных. Похож на Rocket.Chat. Из-за чего такой ажиотаж вокруг именно Revolt, мне не понятно. Если знаете, напишите, пожалуйста. Можно в том же Telegram общаться. Все те же возможности, что и в Discord и даже больше. Плюс, быстрое, лёгкое приложение для компьютеров и смартфонов.
Хотя я уже не уверен, что Telegram не заблокируют. Там наверху блокираторы с обоих сторон вразнос пошли. Разделяют людей на два противоположных лагеря, минимизируя между ними контакты. Думаю, все понимают, для чего это делается:
🪖 💣 💥 😥
⇨ Сайт / Исходники
#chat
Недавно заблокировали Discord. Я им никогда не пользовался, так что не столкнулся лично с проблемами. Не погружался в эту тему. Судя по всему, Revolt предлагают как альтернативу. У меня совсем короткая заметка про него. Чат я посмотрел в своё время и благополучно забыл про него. Даже не вспоминал. А он, судя по всему, набрал популярность. А в условиях блокировки Discord, большую популярность.
Посмотрел на него ещё раз. Кратко напомню, что это open source проект, который разрабатывается под соусом замены Discord. Написан на Rust, хранит базу в MongoDB, для файлов использует S3. Есть API, веб версия клиента, приложение на десктопы.
Серверная часть упакована в Docker Compose. Установить у себя так:
# git clone https://github.com/revoltchat/self-hosted revolt
# cd revolt
# cp .env.example .env
# wget -O Revolt.toml https://raw.githubusercontent.com/revoltchat/backend/main/crates/core/config/Revolt.toml
# docker compose up
В .env и Revolt.toml надо имя домена указать. Для теста можно IP адрес использовать. Не знаю, возникнет ли у вас ошибка, когда будете пробовать. Я когда запускал, получал ошибку монтирования Revolt.toml. Надо композ немного подправить. Буквально вчера принят PR на этот счёт. Надо в
compose.yml
заменить:- ./Revolt.toml:/Revolt.toml
на:
- type: bind
source: ./Revolt.toml
target: /Revolt.toml
После этого проект успешно запустится. Правда зарегистрироваться на своём сервере у меня не получилось. Всё время получал ошибку NETWORKERROR. Бегло не получилось решить проблему. В логах ошибок не было, в репозитории тоже ничего не нашёл. Копать не стал. Подозреваю, это из-за того, что вместо доменного имени использовал IP.
Попробовал зарегистрироваться на их публичных серверах. Не смог. То ли у них сломалось что-то от наплыва пользователей из РФ, то ли специально закрыли регистрацию. Получал ошибку, что не прошёл каптчу, хотя там никакой каптчи нет. Потом вспомнил, что у меня есть учётка. Под ней зашёл нормально.
На вид чат как чат, ничем особо не отличается от всех остальных подобных. Похож на Rocket.Chat. Из-за чего такой ажиотаж вокруг именно Revolt, мне не понятно. Если знаете, напишите, пожалуйста. Можно в том же Telegram общаться. Все те же возможности, что и в Discord и даже больше. Плюс, быстрое, лёгкое приложение для компьютеров и смартфонов.
Хотя я уже не уверен, что Telegram не заблокируют. Там наверху блокираторы с обоих сторон вразнос пошли. Разделяют людей на два противоположных лагеря, минимизируя между ними контакты. Думаю, все понимают, для чего это делается:
🪖 💣 💥 😥
⇨ Сайт / Исходники
#chat
👍71👎6
Для подключения по SFTP, SCP или S3 в Windows я использую бесплатную программу WinSCP. Не раз об этом упоминал в разных заметках. Эта программа умеет работать в консольном режиме, плюс поддерживает выполнение команд, переданных через отдельный файл. То есть она поддерживает автоматизацию с использованием простого и интуитивного скриптового языка.
Покажу на простом и наглядном примере передачу файла с Linux машины по SSH на Windows, используя WinSCP и скрипт. Команду на копирование файла мы будем запускать с Windows. У WinSCP есть портабельная версия, так что можно просто скачать и распаковать в какую-нибудь директорию. Оттуда запускать в консольном режиме.
Нам понадобится публичный ключ, с помощью которого мы будем проходить аутентификацию на удалённом сервере, скрипт с набором команд для выполнения после подключения и сам файл, который будем передавать. Сразу уточню, что WinSCP не принимает публичные ключи, сформированные с помощью ssh-keygen. Ключ нужно будет сделать в формате PuTTY, с помощью PuTTYgen. Не понимаю, почему у putty свой формат ключей. Всегда это доставляло только неудобства.
Содержимое скрипта для получения файла с удалённого сервера:
Для того, чтобы быстро узнать hostkey, можно запустить без него. Тогда в консоли увидите ошибку, что ключ указанного сервера не добавлен. Копируете его и добавляете.
Запускаем winscp с этим скриптом так:
Есть testfile.txt уже есть, он будет перезаписан без лишних вопросов и уведомлений. Подобным образом можно очень быстро организовать необходимую автоматизацию. Например, в этом же скрипте можно скачанный файл передать на другой сервер по sftp с аутентификацией по паролю. Нужно добавить пару строк в скрипт:
На сайте WinSCP есть описание работы скриптов, список команд и готовые примеры:
◽️Общее описание скриптов и автоматизации
◽️Команды
◽️Примеры скриптов
Многие вещи с помощью WinSCP будет сделать быстрее и проще, чем в том же bash или других скриптовых языках. Например, забрать самый свежий файл из директории можно вот так:
Я на баше подобное писал, там сильно сложнее. Надо было подключиться по ssh, там выполнить команду с find с параметрами поиска, вывод результата передать в scp. Делал тут когда-то заметку об этом.
Так выглядит проверка существования файла с помощью bat и winscp:
Все действия можно логировать с помощью ключа /log=myscript.log:
Удобная штука, если у вас в хозяйстве есть сервера или рабочие машины с Windows. Многие вещи с WinSCP можно решить относительно просто.
#windows #scp #sftp
Покажу на простом и наглядном примере передачу файла с Linux машины по SSH на Windows, используя WinSCP и скрипт. Команду на копирование файла мы будем запускать с Windows. У WinSCP есть портабельная версия, так что можно просто скачать и распаковать в какую-нибудь директорию. Оттуда запускать в консольном режиме.
Нам понадобится публичный ключ, с помощью которого мы будем проходить аутентификацию на удалённом сервере, скрипт с набором команд для выполнения после подключения и сам файл, который будем передавать. Сразу уточню, что WinSCP не принимает публичные ключи, сформированные с помощью ssh-keygen. Ключ нужно будет сделать в формате PuTTY, с помощью PuTTYgen. Не понимаю, почему у putty свой формат ключей. Всегда это доставляло только неудобства.
Содержимое скрипта для получения файла с удалённого сервера:
# Подключаемся
open scp://[email protected]/ -privatekey=id_rsa -hostkey="ssh-ed25519 255 s/YHwFuEH3Lq9dGYnBfuELZYkAw4T5umNOPPPFUPCpY"
# Переходим в директорию
cd /home/zerox
# Качаем файл
get testfile.txt "C:\Users\Zerox\Documents\tmp\"
# Отключаемся и выходим
close
exit
Для того, чтобы быстро узнать hostkey, можно запустить без него. Тогда в консоли увидите ошибку, что ключ указанного сервера не добавлен. Копируете его и добавляете.
Запускаем winscp с этим скриптом так:
>winscp.com /ini=nul /script=script.txt
Есть testfile.txt уже есть, он будет перезаписан без лишних вопросов и уведомлений. Подобным образом можно очень быстро организовать необходимую автоматизацию. Например, в этом же скрипте можно скачанный файл передать на другой сервер по sftp с аутентификацией по паролю. Нужно добавить пару строк в скрипт:
open sftp://user:[email protected]/
put "C:\Users\Zerox\Documents\tmp\testfile.txt" "/mnt/backup"
На сайте WinSCP есть описание работы скриптов, список команд и готовые примеры:
◽️Общее описание скриптов и автоматизации
◽️Команды
◽️Примеры скриптов
Многие вещи с помощью WinSCP будет сделать быстрее и проще, чем в том же bash или других скриптовых языках. Например, забрать самый свежий файл из директории можно вот так:
get -latest /home/user/* c:\downloaded\
Я на баше подобное писал, там сильно сложнее. Надо было подключиться по ssh, там выполнить команду с find с параметрами поиска, вывод результата передать в scp. Делал тут когда-то заметку об этом.
Так выглядит проверка существования файла с помощью bat и winscp:
@echo off
set REMOTE_PATH=/home/user/test.txt
winscp.com /command "open mysession" "stat %REMOTE_PATH%" "exit"
if %ERRORLEVEL% neq 0 goto error
echo File %REMOTE_PATH% exists
rem Do something
exit /b 0
:error
echo Error or file %REMOTE_PATH% not exists
exit /b 1
Все действия можно логировать с помощью ключа /log=myscript.log:
> winscp.com /ini=nul /log=myscript.log /script=myscript.txt
Удобная штука, если у вас в хозяйстве есть сервера или рабочие машины с Windows. Многие вещи с WinSCP можно решить относительно просто.
#windows #scp #sftp
👍99👎3
This media is not supported in your browser
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
Собрал небольшую подборку видео на тему тестировщиков и разработчиков. Она по популярности и насыщенностью приколами примерно такая же, как сисадмины и пользователи. Пару видео отсюда уже были ранее на канале, другие хоть и баяны, но лишний раз пересмотреть всё равно интересно.
#юмор
#юмор
3👍134👎5