Опубликован выпуск сервера SFTPGo 2.2, позволяющего организовать удалённый доступ к файлам при помощи протоколов SFTP, SCP/SSH, Rsync, HTTP и WebDav. В том числе SFTPGo может использоваться для предоставления доступа к Git-репозиториям, используя протокол SSH. Данные могут отдаваться как с локальной файловой системы, так и из внешних хранилищ, совместимых с Amazon S3, Google Cloud Storage и Azure Blob Storage. Возможно хранение данных в зашифрованном виде. Для хранения пользовательской базы и метаданных используются СУБД с поддержкой SQL или формата ключ/значение, такие как PostgreSQL, MySQL, SQLite, CockroachDB или bbolt, но имеется и возможность хранения метаданных в оперативной памяти, не требующая подключения внешней БД. Код проекта написан на языке Go и распространяется под лицензией GPLv3...Подробнее: https://www.opennet.dev/opennews/art.shtml?num=56247
Когда в браузеры завезут поддержку?
вчера
поддержку чего? го? безопасного фтп? питона? ой, уже
HTTP. Стильная-модная-смузёвая фича, не в каждом браузере есть.
Нахера название языка, на к-м софт написан, указывать в названии программы?
> Нахера название языка, на к-м софт написан, указывать в названии программы?это как правило сказывается на пользовательских качествах программы, хотя бы поэтому чтоит указывать
Тут скорее так совпало что слово Go может ещё использоваться как что то удобное и функциональное из коробки.
Типа поставил завёл и поехал.И получилось так что для тех кто знает про язык будет видеть язык, а кто не знает будет видеть более глубокий смысл.
ага, совпало. а также совпало в hugo, gosu, gogs и прочих 😁
Чтобы унизить приверженцев раста :)
> Нахера название языка, на к-м софт написан, указывать в названии программы?Потому- что префикс/окончание с GO дает подсказку, что это - тоже самое, но только мультиплатформенное и как правило более современное и с большим количеством фич
SFTP vs SFTPgo
gocryptfs VS eCryptfs
и так далее
> мультиплатформенноеТ.е. linux надо писать как linuxc? А где на Go ОС мультиплатформерная?
>> мультиплатформенное
> Т.е. linux надо писать как linuxc? А где на Go ОС мультиплатформерная?А где я говорил что на Go ось мультиплатформенная ???
SFTPgo - мультиплатформенная, может работать, на Линуксе, Фре, Виндовс
GocryptFS - тожеВы термин мультиплатформенности чуток не поняли ;)
А какое отношение мультиплатформенность имеет к языку и тем более к названию проекта?
> А какое отношение мультиплатформенность имеет к языку и тем более к названию
> проекта?К тому, что практически все Гоу программы работают на разных платформах, поэтому, если видна приставка/окончание go, то это вроде как намекает, что это будет работать везде.
Ну, по крайней мере, это моя интерпритация - "почему"... :)
> практически все Гоу программы работают на разных платформах, поэтому, если видна приставка/окончание go, то это вроде как намекает, что это будет работать везде.docker, gocryptfs на винде и макоси уже пашут? Вот gobject или, скажем, gosa действительно на разных платформах работают, только почему-то они не на go.
Чувак, ты попутал, для чего язык программирования нужен. Он для того, чтобы на нём программы писать. Для остального есть порнхаб.
Чувак, я просто попытался найти причину, почему народ называет программы с приставками языка на котором они реализуют продукт. Просто мое ИМХО, спекуляция и догадки, - не более, если есть другие предположения, - то добро пожаловать к дискусии, с удовольствием прочитаю ваше предположение - почему же они так называют программы.Кстати, докер на винде и маке если верить офсайту - давно пашут. А gocryptfs на сколько я помню, решили просто не заморачиваться, т.к. другой чувак портировал gocryptfs в cppcryptfs (кстати тоже с присатавочкой срр) и сопровождает порт
Подождём RUSfTp. Этот недостаточно безопасен
> Этот недостаточно безопасенСписок "не безопасности" - студию !
Прикол в том, что абсолютно безопасного ПО не существует в принице.
> Прикол в том, что абсолютно безопасного ПО не существует в принице.Не, прикол в том, что кто тратит свое личное время, создает отличный продукт, который имеет новые и удобные фичи, которым пользуется масса народа и тут вдруг выходит вонючий, никому не известный бомжара и cpeт прям на этот продукт...
Такое не только в мире ПО бывает. Естественное свойство человека.
через ё
> протоколов SFTP, SCP/SSH, Rsync, HTTP и WebDav
> СУБД с поддержкой SQL или формата ключ/значение, такие как PostgreSQL, MySQL, SQLite, CockroachDB или bbolt
> настроек в форматах JSON, TOML, YAML, HCL и envfileВот это вот всё точно нужно для того, чтобы просто расшарить файлы? KISS!
1. Ну попробуй передать по SSH файлы и сохранить их компактно в виде одного бинарного блоба БД.
2. Ну покажи мне программу, которая на любой ОСи работает одинаково для этих целей?
3. Если ты считаешь всё это ненужным -- напиши свою (на Расте будет особенно хорошо -- будет с чем сравнить, если ты конечно в Раст умеешь.).
ssh для Ъ-админа локалхоста достаточно, а поверх него запускаются scp или rsyncвсё
Неужели по SSH можно файлы в трёх базах данных сохранять? Или через HTTP-Proxy прокидывать?! Я что-то упустил?
@Drakkan, Thanks a lot for pretty useful program !
Заглянул под капот. Вся криптография написана на go.
С одной стороны это ожидаемо, т.к. линковка с C хотя и делается просто, на go даёт заметный пенальти.
С другой стороны, имеем "неуловимого Джо" с туманными перспективами аудита.В общем, если прикрыть доступ снаружи VPN (да, понизив криптостойкость), может быть в каких-то случаях полезным.
** Логи в json — это шесть.
> Вся криптография написана на ...Они, чо, сами всю критпу реализовали? Ну нах...
>> Вся криптография написана на ...
> Они, чо, сами всю критпу реализовали? Ну нах...Вся крипта есть в стандартной библиотеке Go. Не в ней проблема, а в 100500 других внешних зависимостей.
Логи в предсказуемый структурированный формат — это шесть. Нужно писать строка за строкой, а потом прогонять по ним sed-ы и awk-ы с криво переданными параметрами. Вот это по-нашему, по-юниксовому.
Слухайте, ну JSON явно не для админов с grep/awk/sed.
Обычно для встраивания в какие-то системы аудита.
Не пишите ерунду. Лучше хреновая структура, чем красивая каша в духе "я художник. я так вижу".
Исторически, все юниксовые демоны пишут логи именно кашицей. Поэтому приходится преодолевать привычку "чтобы выделить в логе поля xxx и yyy, нужно написать однострочник в духе патча Бармина".
> Исторически, все юниксовые демоны пишут логи именно кашицей.Я прекрасно понимаю, откуда растут ноги от подобных решений.
Как будто пройтись по json-логу cli'шной тулзой может составить проблему.
Проблема в выразительности синтаксисаСравните
cat access.log | jq -r '.user_agent'
и
perl -ne 'if(/"([^"]+)"$/){$ua{$1}++;} END{for(keys %ua){print "$ua{$_} $_\n"}}' access_log
Второй вариант куда более понятен и прозрачен.
> С другой стороны, имеем "неуловимого Джо" с туманными перспективами аудита.Я далеко не копал, но на сколько я понял, там используется та же самая Го-шная библиотека что и в gocryptfs, которая проходила аудит, то же самое и syncthing
> В общем, если прикрыть доступ снаружи VPN (да, понизив криптостойкость), может быть
> в каких-то случаях полезным.Программа прекрасно изолируется и легко защищается фаил2баном
> ** Логи в json — это шесть.
И чем оно страшнее обычных, разношерстно-стандартных строчек?
{"level":"debug","time":"2021-11-29T14:36:50.790","sender":"DAV","connection_id":"DAV_хххх","message":"transfer added, id: 1428, active transfers: 1"}Разве что парсится значительно легче, или мы не любим легких путей ?
Ец ы принципе правильно, показатель отстойного качества.
> Ец ы принципе правильно, показатель отстойного качества.Ец ы ысчо один спецыалист со своим ничем не подкрепленным мнением
Шифрование отключить хоть можно? А то sshfs удобная штука, но в локальной сети, где чужих нет и шифрование не нужно, иногда хотелось бы быстрее.
Для начала, неплохо бы найти SFTP-клиент с отключаемым шифрованием :)
>> Хранение логов в формате JSONА чего не бинарем неизвестного формата?
Это было бы чересчур юниксвейно.
Меня, с учётом подхода авторов, больше интересует, почему не реализовано альтернативное логирование в XML, YAML и REBOL.
А, да, и ещё в twitter неплохо было бы.
> XMLОставим его труЪ-энтерпрайз джавистам.
> YAML
Обратно совместим с JSON - условие выполнено автоматически.
> REBOL
Хм. Сейчас уточню у знакомого лингвиста-историка, может, он слышал про этот REBOL.