Rose debug info
---------------

Тексты заведующего фонограмм архивом фольклорно-этнографических записей Центра русского фольклора @

Позднее Ctrl + ↑

Выходим за пределы NAT

Иногда надо запустить сервер, а из имеющегося интернета только 4G модем. Как быть? Стоимость выделенного адреса у мобильных провайдеров не очень интересная, да выдают они его обычно только корпоративным пользователем. В общем тоска.
Для этого есть несколько решений.

Самый простой и быстрый — NGROK
Регистрируемся, попадаем в личный кабинет, в нем прекрасный туториал. Копируй и вставляй в терминал. Ничего сложного. Работает только под *nix

Другой вариант, это запустить свой сервис через TOR.

Устанавливаем TOR (все выполняется от root)

apt-get install tor

Открываем в удобном вам редакторе (vim или nano) файл /etc/tor/torrc

vim /etc/tor/torrc

Далее в конец файла добавляем эти строчки. Папку ssh/ не надо создавать, TOR создает ее сам после перезагрузки.

HiddenServiceDir /var/lib/tor/ssh
HiddenServicePort 22 127.0.0.1:22 #Публикуем ssh
HiddenServicePort 80 127.0.0.1:80 #Публикуем веб сервер

Перезапускаем TOR

/etc/init.d/tor restart

После этого у вас в папке /var/lib/tor/ появится папка ssh/ внутри которой будет два файла hostname и private_key, в первом находится ваш onion адрес к которому можно подключаться из любой точки мира.

cat /var/lib/tor/ssh/hostname

ykd4xy367esvzqiz.onion

Если нет необходимости публичного доступа, но необходимо обеспечить себе доступ из любого места, то подойдет Neorouter. VPN сеть наподобие Hamachi и им подобным. Поддерживает большинство операционных систем, в том числе IOS и Android

Админский язык

Это старая история, произошла со мной на заре моего админства, когда я жил еще у матери и мы с другом админили районную сеть, которая здравствует и поныне.

Админили мы фактически круглые сутки, молодость и романтика в попе... Как-то вечером я сидел за компом и тупил после рабочего дня в халявном интернете, благо сетка была своя родная, районная. Рядом на диване отдыхала моя мама. Тут мне позвонил мой приятель и начал напрягать меня по поводу клиента, которого мы не успели починить днем. Что бы удобнее было разговаривать и одновременно пытаться починить недочиненное я включил громкую связь и мы начали искать где затык. Ну и наш разговор соответственно: «Пингани», «Зайди на свич», «проверь порт», «VLAN отвалился» и прочее. В какой-то момент мой приятель выразил свое мнения по поводу качества оборудования или надоевшего клиента с помощью магических русских заклинаний всем известных нам с детства, типа — «Этот клиент меня уже за%#@*-$\*л!!!» На что я ему резонно заметил, что мол не стоит так выражаться поскольку у меня громкая связь, а рядом находится моя мама, которая прекрасно его знает и знает его семью. В общем конфуз. Но тут в разговор решительно вмешалась уже сама мама: «Да это единственное нормальное слово, которое я поняла!!!»

 210   2021   IT

Как не стать заложником хостинга

В рабочем потоке любого предприятия, офис это или государственное учреждение, сегодня уже невозможно обойтись без таких уже привычных вещей как например телефон и емэйл. Как и прежде, основной проблемой остается выбор того, чьей именно услугой мы будем пользоваться. И проблема не в том, что руководители не могут определиться с тем, что именно им подойдет, а в том, что как правило руководители об этом просто не думают. Я стопятьсот раз видел, как матерые бизнесмены искушенные в маркетинговых ловушках, способные просчитывать сложнейшие финансовые схемы введутся на первую попавшуюся рекламу супер прогрессивного облачного хранилища всего за 99.99$ в месяц за 100 гигабайт, в то время как есть бесплатные аналоги дающие места в несколько раз больше, про платные вообще молчу. Почему-то именно в вопросах айти, у них резко отключается мозг и включаются инстинкты папуаса перед которым трясут стеклянными бусами. Тут можно попытаться уличить меня в очередной попытке обвинить всех директоров в том, что они тупые сэйлеры, ничего в IT не понимают, вот админы — другое дело. Но это не так, я этого не говорил, админы часто не лучше. Мне как работнику проще впарить боссу платную услугу, которую буду обслуживать не я, а какая-то контора, с которой я буду раз в пол года говорить на птичьем языке на глазах изумленного босса и получать свою з.п., за неусыпный контроль. О том, как можно избежать такого дуализма я уже писал, поэтому здесь мне хотелось бы привести больше конкретики и обратить внимание на некоторые нюансы, которые стоит отслеживать. Это рекомендации директорам и админам тех директоров, кто прочел это или думает так же.

Почта и домен

Корпоративная почта, это хорошо. У вас остается переписка всех ушедших или сбежавших сотрудников, в контексте работы менеджеров, которые наработали клиентскую базу и свалили в закат, это очень актуально. Сегодня уже вряд-ли можно найти админа который сумеет настроить Sendmail от и до, с веб интерфейсом и прочими плюшками. Но это и не надо, практически каждый хостинг предлагает такую услугу и это пользуется спросом. Все это часто покупается одним махом вместе с хостингом, доменным именем и так далее, у одной фирмы которая сумела найти манагера с крепко подвешенным языком и навыками социальной инженерии. Кстати неискушенный директор при этом может и не догадываться о том, что он помимо хостинга и доменного имени и почты платит например еще и за DNS сервер и какой-нибудь призрачный FTP доступ. Через год-два выясняется, что хостинг глючный и дороговат, но уйти мы с него не можем из-за того, что там наша почта и домен у нас куплен в рамках тарифа и принадлежит не нам, а хостингу. Русская народная мысль тут приходится как никогда кстати — не надо класть все яйца в одну корзину, даже если их у вас всего два. Бесплатная почта с поддержкой своего домена поддерживается на сегодня практически всеми гигантами IT типа Яндекса, Маилру и прочих. Бонусом ваши сотрудники получают не убогий веб интерфейс для почтового сервера Postfix написанный в 1998 году, а привычный вид как у меня в почте. DNS сервер прилагается в этом случае бесплатно, домен же лучше покупать отдельно у регистратора и тут тоже есть где сэкономить, потому, что не все регистраторы одинаково полезны в смысле разница в годовом обслуживании бывает более чем в 2 раза.
Так что хостинг, это просто аренда сервера, остановитесь на этом.

Как не потерять все оцифрованное честным трудом?

Сохранность

Закон о сохранении информации очень прост:

Сохранность информации равно пропорциональна количеству копий информации.

Иными словами — чем больше копий, тем меньше шансов у информации исчезнуть без следа. Копии материалов нужны и кажется на первый взгляд, что этот процесс очень прост. Что там сложного? Все умеют копировать с компьютера на флэшку или диск. Вот тебе и копия. Но все становится несколько сложнее тогда, когда у тебя есть структурированный большой массив разнородных материалов, который периодически пополняется и меняется. Простая ситуация: скопировал 5 терабайт, а потом начал приводить в порядок названия папок, вносить уточнения в реестр. Вносить правки параллельно глупо и затратно по времени, особенно, если копий больше чем две и вторая копия хранится в соответствии с рекомендациями в другом здании. Вполне неплохим вариантом может в этом смысле стать хранение копии в каком-нибудь облачном сервисе типа Яндекс диска или DropBox. Минус сервисов очевиден — более-менее приличный объем доступен только за деньги и к тому же платеж не может быть разовым, везде годовая или месячная подписка. Фольклористам это не по карману.
Серьезные системы резервного копирования применяющиеся в IT фольклористам тоже не по зубам. Как минимум они требуют опытного системного администратора. Таких в среде фольклористов единицы. Хотя большая часть этих систем абсолютно бесплатна и очень надежна. Начиная с какого-нибудь rsync и заканчивая Bacula. К тому же бесплатные системы чаще всего заточены именно под Linux серверы, а не под сохранение актуальной копии музыкальной медиатеки.

Что нам надо?

  1. Автоматическая синхронизация всех имеющихся копий
  2. Поддержка популярных операционных систем (Windows, MacOS, Linux)
  3. Желательно чтобы не надо было заморачиваться с настройкой сети (чтобы не нужен был статический внешний ip адрес и не надо было пробрасывать порты на роутере)
  4. Чтобы бесплатно
  5. Чтобы настройка была простой и не требовала каких-то специальных знаний всяких там протоколов и написания конфигурационных файлов.

Все это возможно. Все это стало возможно после изобретения протокола peer-to-peer — тот самый протокол с помощью которого работет torrent.
Есть две замечательные программы и обе бесплатные.

Обе программы являются по сути клонами друг-друга, Resilio коммерческий продукт и бесплатен для индивидуального пользования, Syncthing — программа с открытым исходным кодом и разрабатывается на пожертвования пользователей. Я пробовал обе, принципиальной разницы между ними нет, разве что Resilio чуть-чуть больше ориентирован на удобство пользователя.
Процесс очень прост, мы устанавливаем программу, указываем ей какую папку нам нужно синхронизировать, программа нам предлагает скопировать ключ доступа и этот ключ доступа мы вводим на другом компьютере где установлена точно такая же программа. При указании папки мы можем задать некоторые опции. Например, одна из опций позволяет не разрешать отправлять изменения с другого компьютера на наш. Менять-то файлы они могут, но эти изменения не отобразятся у нас, в то же время, все изменения которые мы будем проделывать на своей стороне у них будут отображаться. Есть возможность указать удаленному компьютеру хранить версии файлов. Это значит, что при изменении файла на нашем компьютере на удаленном файл будет не перезаписан, а будет создана его копия, а старый будет скрыт, но останется в системе. Это удобно при работе с текстами. Всегда можно откатиться к старому варианту.

Безопасность

Пункт немаловажный. И тут у обоих программ все очень и очень хорошо. Система устроена так, сервер программы, к которому будут обращаться наши компьютеры отвечает только за соединение их между собой. И то, даже не за соединение, а только указывает им, что они могут соединиться, поскольку у них есть общие ключи о которых сервер тоже ничего не знает, поскольку видит только их контрольные суммы и расшифровать их не может. Их вообще невозможно расшифровать, разве что у вас есть дома квантовый компьютер, который на сегодня даже в прототипах такое делать не может. Само же соединение между двумя программами происходит напрямую и соединение это зашифровано.

Бонус

Прелесть peer-to-peer (торрента) в том, что чем больше копий хранится на разных компьютерах, тем быстрее будет происходить синхронизация и тем меньше будет нагрузка на ваш интернет канал. И закон о сохранении информации выполняем и жизнь себе облегчаем.

Интерфейс Resilio

Скрипт конвертации медиа файлов

Часто мне перед вебинарами лекторы присылают для демонстрации целый зоопарк из разного рода типов медиафайлов. wma, avi, mpeg и прочее. Тоже самое и с аудио. Все это полезно привести к одному виду и желательно быстро, минимизировав ручной труд. Я написал скриптик на python, который определяет в папке тип медиафайла и конвертирует его в указанную папку с помощью ffmpeg.

#!/usr/bin/python3
# type - [audio, video]
# out - [audio: mp3, ogg, wav, flac], [video: mp4, mpeg, avi]
#  необходимо установить pip install ffmpeg-python и сам ffmpeg в вашу OS
# параметры: директория с файлами, куда конвертировать, тип файла (audio или video), 
# расширение выходного файла

import os
from sys import argv
import mimetypes
import ffmpeg

script, dir_f, dir_out, type_f, out = argv
os.chdir(dir_f)
directory = './'
os.mkdir(directory + dir_out)
files = os.listdir(directory)


def filtervideo(inputfiles):
    for i in inputfiles:
        mime_type, nothing = mimetypes.guess_type(i)
        if type_f in str(mime_type):
            name, ext = os.path.splitext(i)
            instream = ffmpeg.input(i)
            outstream = ffmpeg.output(instream, dir_out + name + '.' + out)
            ffmpeg.run(outstream)
            print(name + ' Ok')

filtervideo(files)
Ранее Ctrl + ↓