LINUX.ORG.RU

Избранные сообщения GREAT-DNG

Документация к языкам программирования

 , , , ,

Всевозможные учебники и книги - это хорошо, но обычно их предлагают купить и часто не совсем дёшево, даже если они описывают базовый уровень. Бесплатным решением, очевидно, является официальная документация. Когда я открыл документацию к python, я был приятно удивлён, что она написана практически как учебник. Для Java вроде бы тоже всё относительно неплохо в этом плане, хотя хотелось бы отдельный оффлайновый pdf.

Мне захотелось скачать себе документацию в подобном виде для C и C++. Зашёл на их официальные сайты, там описание стандарта предлагают получить на сайте ISO за немалые суммы денег. Да и само описание стандарта далеко не для обучения. Хорошо, подумал я, попробую тогда посмотреть документацию к одной из реализаций языка - GCC-CPP, и вижу, что описанное там тоже вовсе не подходит для обучения. Даже описания типов и примеров объявления нет (может плохо искал, но в заголовках не заметил).

Нет, это не тред «подскажите книгу по Сям», таких для начинающих я и сам могу гору насоветовать.

Вопрос следующий: существует ли нормальная доступная бесплатная документация по которой можно изучать C, C++? Официальная документация по другим языкам была бы тоже интересна.


Update

C, C++
Online-ресурсы и учебные пособия для начинающих:

Как дополнение: Рабочая версия стандарта C++14 от 19 ноября 2014 г. (с официального сайта стандарта)


Fortran


Python
В дополнение к официальной документациипереводу руководства Python 3.1):


Object Pascal. Lazarus

Перемещено Klymedy из talks

grem
()

Использование Ubuntu Pro: разбираем на примере 16.04 Desktop

 ,

Что это вообще такое?

Это подписка на ESM (Extended Security Maintenance), что расширяет срок поддержки Ubuntu LTS с 5 до 10 лет: 16.04 до апреля 2026 года и 18.04 до апреля 2028 года соответственно. При наличии аккаунта в Ubuntu One дается бесплатная подписка на 5 машин.

( читать дальше... )

Vsevolod-linuxoid
()

Как весь трафик завернуть в TOR в Devuan?

 ,

В интернете много информации как это сделать в системах с systemd, но как это сделать без него не нашел. Поэтому вопрос.

wabehet
()

Обернуть древние программы для запуска под новым оффтопиком и, чем чёрт не шутит, под онтопиком тоже

 , ,

Решено: конкретно этот софт совместим даже не с 95-98, а с 3.11 виндой, и прекрасно запускается в досбоксе. Вопрос запуска программ поновее, которые ни в досбоксе не работают, ни на современной венде не хотят, остяётся открытым (хотя уже более для души - если речь не идёт о редистрибуции для несведущих, то и wine в WSL подходит).

Имеется некоторое количество софта девяностых-нулевых годов выпуска: мультимедийные энциклопедии издательства Dorling Kindersley, локализированные естественно. Некоторые из них совершенно чумовые и аналогов не имеют. Требуется запустить их под седьмой-десятой виндой, чтоб детишки радовались.

Вот и зреет несколько идей, одна бредовее другой - в основном орбитируют вокруг тонкой виртуалки с 98 виндой и возможно даже снепшотом памяти, чтоб побыстрее запускалось. Проблема в том, как её кастрировать, чтобы запускалась одна программа в одной виртуалке, а то учительница, которой это нужно, не осилит (или осилит? но точно не захочет) концепцию виртуальной машины со своей ОСью внутри.

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

Если кому интересно будет приглядеться и что-то посоветовать, то данные энциклопедии были представлены на российском рынке, и на всем известном сайте отслеживания прудов имеется, например, «Мир Птиц».

token_polyak
()

Нет больше слёзок — lorify

 , , , ,

Что нового? (с момента предыдущей темы)

Теперь превьюхи пропадают по timeout'у, начиная с момента, когда пользователь уводит курсор мыши от изначальной ссылки (так что вам больше не придётся сначала наводить курсором на превьюху, чтобы убрать её)

Timeout этот, как и раньше, задаётся опцией «Задержка перед preview» в случае расширений и переменной delayAfterPreviewMillisecs в случае userscript'а

Просили много кто — например, f1u77y, StReLoK, sudopacman, Loki13, beer_and_linux и Wind

Также добавил в список поддерживаемых способов для доната данные для перевода BTC.

ВНИМАНИЕ

Настоятельно рекомендую выставить параметр «Задержка перед preview» в какое-нибудь ненулевое значение (рекомендую 800, теперь это дефолтное значение для новых пользователей). В противном случае будет довольно трудно «прыгнуть» с одного комментария на другой, если между ссылкой и новой превьюхой есть какое-либо пространство (например, с одной из нижних ссылок на превьюху чуть повыше, как показано в следующем скриншоте — http://i.imgur.com/kX8PpNi.png).

Огромное спасибо всем, кто уже поддержал проект материально и идейно!

Алсо, пишите свои ники на ЛОРе в комментариях к переводам — так удобнее благодарить, да и вообще приятно знать, кто помог проекту

Каждый ваш отзыв мотивирует меня продолжать работу над данным проектом и развивать его в лучшую сторону

======================

Помощь проекту

Если у вас есть желание помочь проекту материально, буду признателен за переводы любым удобным для вас способом:

Если удобного для вас способа нет в списке, напишите об этом здесь или мне на почту — b0r3d0mness [at] gmail [dot] com

======================

Стандартная шапка

======================

Что это такое?

lorify — это расширение для браузеров, которое позволит вам:

  • Видеть ответы на каждое сообщение
  • Отображать превью сообщений при наведении на соответствующие ссылки
  • Автообновлять треды
  • Отображать оповещения о новых ответах на рабочем столе

======================

Firefox

Скачать новую версию (v1.7.0)

ВНИМАНИЕ

Новая версия ещё не прошла review (старые, кстати, уже получили аппрувы от Mozilla), так что для её установки требуется выполнить следующие действия:

  • Открываете новую вкладку, пишете в адресную строку «about:config» (без кавычек) и нажимаете Enter
  • В появившуюся строку поиска вводите «xpinstall.signatures.required» (без кавычек) и делаете данный параметр равным false
  • Переходите по ранее указанной ссылке и устанавливаете аддон

Исходный код можно посмотреть тут (bitbucket.org).

======================

Chrome

Скачать

Исходный код можно посмотреть тут (bitbucket.org).

======================

Userscript

Можно взять отсюда (userscripts.org лежит)

======================

Changelog

**********************

Chrome

v1.11.0

  • Добавлена опция для оповещений о новых ответах на рабочем столе (по умолчанию отключена)
  • Добавлена опция для отключения отображения ответов в тредах, кол-во страниц в которых превышает определённое значение (по умолчанию 20 стр.)
  • Добавлена поддержка голосований (www.linux.org.ru/polls/polls/)
  • У тредов с новыми ответами изменяется favicon (иконка в заголовке таба). Спасибо theNamelessOne за pull request

v1.10.1

  • Исправлен баг с дублированием строки «Показаны все комментарии. Скрыть игнорируемые» при каждом автообновлении страницы

v1.10.0

  • Timeout для убирания превьюх теперь стартует после того, как пользователь уводит курсор со ссылки, а не по наведению на превьюху
  • Параметр «Задержка перед preview» теперь имеет дефолтное значение равное 800 мс

v1.9.0

  • Для зарегистрированных пользователей теперь отображается ник ответившего
  • Строка с ответами перенесена на тот же уровень, где находится кнопка «Ответить на это сообщение»

v1.8.0

  • Опция «Задержка перед preview» теперь требует hover'а над элементом в течение указанного времени вместо просто отображения превью по истечению данного времени (теперь просто проведением курсора над комментариями при ненулевой задержке вы не наоткрываете кучу превьюх)
  • При клике на область вне превьюх все из них удаляются
  • Автообновление автоматически отключается для архивных и удалённых тредов (спасибо theNamelessOne за pull request)
  • При нажатии на все ссылки (комментарии, ответы) страница не будет загружена повторно, если соответствующий комментарий находится на ней же
  • Убрана иконка из тулбара
  • Исправил заголовок окна опций расширения

v1.7.1

  • Появление новых страниц в результате автообновления теперь сигнализируется добавлением "(!)" в заголовок страницы
  • Исправлена проблема с «утечкой памяти»

v1.7.0

  • Добавлено дерево превьюх — http://i.imgur.com/wjzWIkV.png
  • Положение превьюх теперь определяется таким же образом, как и на дваче

v1.6.0

  • Добавлено отображение ответов

v1.5.0

  • Добавлены настройки
  • Исправлен баг с непропадающими превьюхами
  • Исправлены грамматические ошибки

v1.4.2

  • Исправлен баг с отсутствием превьюх у сообщений, добавленных после автообновления страницы

v1.4.1

  • Исправлен баг с неправильным расположением autorefresh checkbox'а после автообновления страницы

v1.4.0

  • Добавлена возможность автообновления тредов

v1.3.0

  • Добавлена рамка для превьюх

v1.2.0

  • Добавлена поддержка «Галереи» и «Новостей»

v1.1.0

  • Добавлена поддержка HTTP (нешифрованного соединения)

**********************

Firefox

v1.7.0

  • Добавлена опция для оповещений о новых ответах на рабочем столе (по умолчанию отключена)
  • Добавлена опция для отключения отображения ответов в тредах, кол-во страниц в которых превышает определённое значение (по умолчанию 20 стр.)
  • Добавлена поддержка голосований (www.linux.org.ru/polls/polls/)
  • У тредов с новыми ответами изменяется favicon (иконка в заголовке таба). Спасибо theNamelessOne за pull request

v1.6.1

  • Исправлен баг с дублированием строки «Показаны все комментарии. Скрыть игнорируемые» при каждом автообновлении страницы

v1.6.0

  • Timeout для убирания превьюх теперь стартует после того, как пользователь уводит курсор со ссылки, а не по наведению на превьюху
  • Параметр «Задержка перед preview» теперь имеет дефолтное значение равное 800 мс

v1.5.0

  • Для зарегистрированных пользователей теперь отображается ник ответившего
  • Строка с ответами перенесена на тот же уровень, где находится кнопка «Ответить на это сообщение»

v1.4.0

  • Опция «Задержка перед preview» теперь требует hover'а над элементом в течение указанного времени вместо просто отображения превью по истечению данного времени (теперь просто проведением курсора над комментариями при ненулевой задержке вы не наоткрываете кучу превьюх)
  • При клике на область вне превьюх все из них удаляются
  • Автообновление автоматически отключается для архивных и удалённых тредов (спасибо theNamelessOne за pull request)
  • При нажатии на все ссылки (комментарии, ответы) страница не будет загружена повторно, если соответствующий комментарий находится на ней же
  • Убрана иконка из тулбара

v1.3.1

  • Появление новых страниц в результате автообновления теперь сигнализируется добавлением "(!)" в заголовок страницы
  • Исправлена проблема с «утечкой памяти»

v1.3.0

  • Добавлено дерево превьюх — http://i.imgur.com/wjzWIkV.png
  • Положение превьюх теперь определяется таким же образом, как и на дваче

v1.2.0

  • Добавлено отображение ответов

v1.1.0

  • Добавлены настройки
  • Исправлен баг с непропадающими превьюхами
  • Исправлены грамматические ошибки

**********************

Userscript

v1.5.0

  • Добавлена опция для оповещений о новых ответах на рабочем столе (по умолчанию отключена)

v1.4.0

  • Добавлена опция для отключения отображения ответов в тредах, кол-во страниц в которых превышает определённое значение (по умолчанию 20 стр.)
  • Добавлена поддержка голосований (www.linux.org.ru/polls/polls/)
  • У тредов с новыми ответами изменяется favicon (иконка в заголовке таба). Спасибо theNamelessOne за pull request

v1.3.2

  • Исправлен баг с дублированием строки «Показаны все комментарии. Скрыть игнорируемые» при каждом автообновлении страницы

v1.3.1

  • Исправлен баг с зависанием (спасибо Danil Pleshakov за pull request)

v1.3.0

  • Timeout для убирания превьюх теперь стартует после того, как пользователь уводит курсор со ссылки, а не по наведению на превьюху
  • Параметр «Задержка перед preview» теперь имеет дефолтное значение равное 800 мс

v1.2.0

  • Для зарегистрированных пользователей теперь отображается ник ответившего
  • Строка с ответами перенесена на тот же уровень, где находится кнопка «Ответить на это сообщение»

v1.1.0

  • Добавлена поддержка окружений, где недоступен ES6
  • Опция «Задержка перед preview» теперь требует hover'а над элементом в течение указанного времени вместо просто отображения превью по истечению данного времени (теперь просто проведением курсора над комментариями при ненулевой задержке вы не наоткрываете кучу превьюх)
  • При клике на область вне превьюх все из них удаляются
  • Автообновление автоматически отключается для архивных и удалённых тредов (спасибо theNamelessOne за pull request)
  • При нажатии на все ссылки (комментарии, ответы) страница не будет загружена повторно, если соответствующий комментарий находится на ней же

======================

Буду признателен за баг-репорты, конструктивный фидбэк и pull request'ы.

И да, подписывайтесь на тег «lorify».

b0r3d0m
()

Как настроить всё и не сойти с ума: мысли дева

 , , ,

Прошло 6 лет с момента последнего поста. Много интересных событий и открытий произошло, но прежде перехода к теме хочу немного рассказать о себе. Как и большинство инженеров, я учился в техническом вузе, где с первого дня нам прививали здоровые технические привычки. По специальности я начал работать только через 10 лет после его окончания, все эти годы я работал девом и не могу сказать что жалею. Исторически сложилось что было два пути: Уйти в бек-разработку (что я и сделал) или выбрать какую-то около техническую тему. Мне особо не было интересно разбираться с каким-то невнятным доменом…

Приступим

10 лет назад было столько же дистрибутивов, операционных систем и т. д. Могу спойлернуть сразу — поменялось всё минорно, то есть фундаментально люди по-прежнему не летают, квантовые вычисления скорее эзотерика и процессоры есть куда уменьшать). Каждый дев (если это не шарпер) рано или поздно переходит на Mac/Linux и не знает бед с постоянными кривостями windows. Конечно, есть у винды хорошие стороны, но я их как-то не нашел. За 10 лет успел поработать на PHP, Java, Ruby, Go, Js и. конечно же. любимом Python. Покидало меня знатно. Считаю бейдж Senior/TechLead очень относительным. По опыту скажу, всего ты знать никогда не будешь поэтому особо нет смысла вы**. Дальше будет мысль о том как всё настроить и не убить 10 лет.

ОС

Любая ос — это каркас. Ты можешь и на Windows 8 (надеюсь, ты так не делаешь) писать отличных код. Один вопрос, который может пошатнуть эту гипотезу — отказоустойчивость. К примеру, ты пилишь очередную апи и у тебя резко начинает перезагружаться ос и хорошо, если ты успел сохранить свою работу, иначе совсем грустно.

  • Linux — это система, которая подразумевает умение решать проблемы.
  • Мак — система, где ты покупаешь уже готовое решение без возможности особой настройки.
  • Windows — система, где ты учишься переносить боль и в дальнейшем идти на компромиссы. Выбор всегда твой, но и ответственность тоже твоя. Когда ты, к примеру, поставил арч и не смог запустить иксы, это как минимум не продуктивно. Большинство людей убивает время для сомнительного профита. По этому перед выбором однозначно рекомендую оценить своё время на изучение нюансов.

Кастомизация

Все мы знаем о прекрасном Unixporn и видели эти гениальные рисуночки. Очень красиво и необычно по отношению к дефолту. А вот теперь серьёзно, большинство из этого пластикового окружения неюзабельно от слова совсем. Некоторые окружения пилятся неделями/месяцами для того, чтобы выложить это на Unixporn. То есть эти, к примеру, 2 недели ты настраивал панельки или ещё что-то ради скрина. За 2 недели можно выучить базовые понятия AI и поднять себе ЗП. В общем (и целом) оно того не стоит.

Железо

Тут всё очевидно, чем шустрее работает тем лучше. Домашний мак про 16 (2022) меня более чем устраивает для своих проектов и сидения в интернете. Параллели решают, но это отдельная тема. Для работы использую ThinkPad P14s Gen 3. Не могу сказать что это прям идеальный ноут, но с задачами справляется. Отдельное слово хочу сказать о Nvidia: дрова УГ и была боль с их настройкой. Плюс сам ноут держит 3 часа, что есть не спортивно. Но огромный плюс — его размер. Для 13 дюймов — это удачная рабочая машина.

Моё окружение

  • OS — Ubuntu
  • Gnome — дефолт с 3 плагинами (Быстрый переход к папкам, буфер обмена, таск)
  • Terminal — Terminator
  • Editor — nvim/pycharm
  • WEB — Chrome (Firefox как-то с годами меня разочаровал, но плагины лучше)
  • Console: fd, rg ,pgcli — лучше пока не нашел, onelove. В консоли я провожу большую часть времени, так что рекомендую её изучать и не сильно верить интерфейсам)

Заключение

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

q13
()

Ткните в нужную контору с хостингом и доменом

 ,

Товарищ интересуется, нужен хостинг (наверное какой-то европейский желательно), чтобы максимально дешево. И домен нужен, чтобы не в РФ, доменная зона не принципиально, самый дешевый. Нужно захостить php движок на 3.5 файла, использоваться будет sqlite3 в качестве бд, трафик небольшой, пользоваться сайтом дай бог будет 10 человек.

DM_
()

Godot все!?

 , , , ,

Хотел зайти с вопросом на форум годота, но оказалось, что форум закрыт, открыт только для чтения, а причиной тому какие-то выяснения проблем между киберреалити (владельцем форума) и хуаном (разрабом движка), и что Хуана с компанией считают аферистами: https://godotforums.org/d/35412-sadly-i-think-godot-is-a-scam-im-not-sure-i-c...

Ок, что-то там не поделили, но двиг то есть, неужели на него тоже забьют?

Перемещено hobbit из general

shiva
()

Linux езиносы

 , , , ,

Хай ЛОР! Хочется читнуть олдскульных…Точнее современных журналов, но выдержаных в старом стиле (cp866), аля Defaced, X-Hack, MegaSoft…да хоть БэХоЦЭ :). Если есть, ну хоть средней свежести, эдак 2000-2010 года. Последнее, что видел в более-менее актульном состоянии - phrack. Вообще, щас хоть кто-нибудь пишет и-зайны ? Желательно с уклоном в лин. Просто щас листал Infected Voice и Земский Фершал… ЗЫ. На LinuxFormat подписан, читал его в паралель с Хулиганом. Не уж-то только ксакеп нонче вещает информацией?!

Перемещено maxcom из linux-org-ru

Kaernk
()

Крутая доработка старого советского компьютера

 , ,

Смотрел 30 минутное видео прямо эстетическое наслаждение от умений его автора.

https://www.youtube.com/watch?v=dxxShWU6COM

Был такой советский комп (я о нем впервые из видео узнал) Искра 1080 Тарту. Выпускался под конец перестройки. В нем изначально был задуман порт для подключения внешнего дисковода для дискет. Но что-то помешало и в продажу изделие пошло без НГМД.

Автор не просто распаял недостающие микросхемы, этого было бы недостаточно. Но при этом провел реверс-инжиниринг схемы и на интуиции и понимании работы электроники исправил больше 20-ти ошибок из-за которых дисковод бы никогда не заработал. И у него в итоге все заработало.

То есть, доделал то, что не успели проектировщики компьютера в свое время.

Вот это класс умений!

praseodim
()

Уровень заряда в btop из уровня заряда UPS - Возможно?

 , ,

Всем привет!

btop умеет показывать уровень заряда батареи ноутбука, а можно как-нить «обмануть» систему или около того и «перекрыть» это значение уровнем заряда UPS, который отлично видит nut.

Может уже есть dummy модуль устройства батарейки?

Spider55
()

Пиратский git хостинг

 , ,

А посоветуйте платформу лояльную к ссылкам на пиратский контент и описание взлома, ну и less dmca weakness.

Github, Gitlab, Bitbucket, Codeberg, NotABug - какая из них закрывает глаза на подобный контент?

Xant1k
()

Время в комментах коммитов

 коммиты

Какое время используете, настоящее или прошедшее?

Например:

Add feature XYZ

(в смысле «добавить фичу») или:

Added feature XYZ

(в смысле «добавлена фича»)

seiken
()

Но зачем?

Вот так с помощью нехитрых приспособлений буханка черного или белого хлеба превратилась в троллейбус.

Вот еще ракурс. Have a nice day

bl
()

Очередной тред выбора ноута 14" для linux

 , , ,

Выбираю себе новый ноут. Основные требования: только 14" и желательно близкая к 100% совместимость с linux.

Другие хотелки:

  • Вес до 1.5 кг
  • SSD от 512 Гб
  • RAM от 8 Гб (желательно 16)
  • Без дискретной видяхи
  • Материал корпуса металл

Бюджет практически не ограничен, страна РФ.

Ранее в основном юзал ноуты Acer, не без недостатков, но в целом устраивает. Поэтому смотрю в первую очередь на Acer Swift 3.

Вопросы такие:

  • Какой процессор лучше брать, AMD или Intel? Ранее юзал Intel, всё устраивало. Есть варианты Ryzen 7, Intel Core i5 и др.
  • Что за новый (для меня) бренд такой Machenike?
  • Среди устраивающих меня по параметрам есть ещё варианты от Lenovo, HP, MSI, ASUS, какие у них достоинства/недостатки?
Sahas
()

Сложные компьютерные игры

 , ,

Какие вы знаете? И какие они развивают способности человека? В принципе, сложность можно самому привнести в любую игру, досточно изменить условия игры.

hhhhacker
()

Разница между спящим, ждущим и гибридным спящим режимами в KDE?

 

Спящий и ждущий — это одно и тоже?

Перемещено leave из general

temak
()

Хочу видеокарту

 ,

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

Итак, вот мои требования:

  • Достойная производительность и сносные характеристики для нашего времени. Чтобы можно было запускать по-настоящему приличные игры, не по-дутому. Однако сильно геймить в самые жрущие игры у меня нет желания. Просто иметь возможность поиграть игру, на случай если кто-то посоветует. Я в много чего не играл, всё откладываю на потом.
  • Нет нужды брать модную самую последнюю супер-перепупер-новинку, но очень важно чтобы не было историческим legacy-старьём. Здесь как бы всё понятно. Хочется взять раз и забить на поддержку на долгие годы, потому что жить должно еще долго. А со старьём возникает много проблем.
  • Желательно что-нибудь из мира Radeon, потому что nvidia плохо работает с виртуалкаой. Мне кажется, что для виртуалки сложнее заставить работать драйвер с устройством, чем на хосте.
  • Размер видеокарты не должен быть с рояль, потому что у меня место в компьютерном блоке не резиновое. Один раз еле воткнул одну большую заглушку и это очень неудобно. И да, не хотелось бы иметь три пропеллера от самолёта в качестве охлаждения или что-нибудь страшное там.
  • Чтобы просто работало в ОС: Linux, Windows, FreeBSD и было минимум проблем со сношением. Я использую на всех устройствах только FreeBSD, это очень важно. Винда в виртуалке.

Мне кто-то предложил Radeon RX 6600. Подойдёт ли он к материнке 4-го поколения: Asus"PRIME B350-PLUS" ?!

Какие будут еще предложения ?

Может всё-таки смотреть на Nvidia ?! Если да, то почему ?!!

Clockwork
()

Вся сетевая инфраструктура для бизнеса за 5 минут

 ,

Задача стоит простая, — настроить все бизнес-процессы, ну там чтоб сайт был, почта, какие-то чатики, деловые переписки, файлохранилище, документооборот, вот это вот всё. Чтобы это было видно в интернетах, защищено от атак, ну и так далее.

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

Всё сводится к тому, что клиент берёт сервер за 100500 рублей, арендует к нему место в стойке в дата-центре, где каждый юнит на вес золото, где каждый сетевой порт (ethernet, SFP) стоит денег, где каждый блок питания 500W / 800W / 1400W стоит денег. Ещё есть всякие third-party услуги по защите от всяких DDoS-атак, и прочая, прочая, прочая. Не брезгует клиент и платить за какой-то стрёмный софт, когда при желании можно написать собственную реализацию на коленке.

Я как доморощенный админ локалхоста искренне поражён ценовой политикой вот этого всего, подходом к решению задач системных администраторов сидящих на зарплате. Задачи простые, а пути их решения, и деньги, которые за это просят ну просто космос!

И сейчас я буду демпинговать всю это фигню. Значится так.

Вместо дорогостоящей аренды стойки в дата-центре Москвы, с выделенным интернет-каналом и опциональной защитой от DDoS, я рекомендую арендовать VDS-сервер за 200-300 рублей, не дороже.

1 ядро, 1гб памяти, канал 100мбит, диск 10гб под систему — этого хватит с головой для нашего столичного филлиала.

Задача перед арендованной VDS стоит крайне простая:

  • Предоставлять интернет-канал наружу;
  • Служить одноразовым «презервативом» для защиты от внешних угроз;
  • Внешний IP-адрес.

Всё общение с внешним миром, как наружу, так и во внутрь нашей сети, происходит через VDS. В случае обнаружения сетевой атаки по каналу VDS задача перед админом стоит простая: обрубить конец. И взять другую VDS, за те же 200 рублей, с новым IP-адресом.

Зачем, скажите мне, тратиться на дорогостоящие услуги по защите от DDoS, если можно менять эти одноразовые VDS «как перчатки»?

Думаю суть ясна. Идём дальше.

Вся наша корпоративная сеть сидит за провайдерским NAT'ом. Нам не нужно, чтобы наша сеть была видна из интернетов. Вот прям вообще. Просто ходим в интернет через провайдера как обычно. От услуги внешнего IP-адреса отказываемся напрочь. Только NAT!

Подключение нашего столичного филлиала происходит следующим образом: стучимся в какую-нибудь квартиру неподалёку от нашего офиса, за тортик или же за себестоимость интернет-тарифа просим физическое лицо подключиться к его домашнему интернету, - таким образом мы сэкономили целое состояние на тарифах для юридических лиц! И спокойно тянём воздушку себе в офис, желательно использовать оптическое волокно, чтобы не собиралось статическое электричество. Можно обойтись и Wi-Fi, но это дороже и не надёжно.

С интернет-каналом вопрос решён. Дальше.

Вместо дорогостоящего сервера, HP DL360 Gen9, стоимость минимальной конфигурации которой начинается от 100,000 рублей, достаточно взять обычный стационарный компьютер в любом компьютерном магазине для запуска виртуалок. Сервер DEXP в конфигурации Intel Core i3 и 48гб памяти с гарантией 3 месяца нам хватит с лихвой.

Компьютер, хост, на котором производится запуск виртуалок, должен быть тупо запускалкой виртуалок и не более того. Сам по себе никаких сервисов не крутит. Так же, не нужно громоздить никаких тоннелей, бриджей и прочего. Просто запускается виртуалка с параметрами по-умолчанию чтобы она тоже могла зайти в интернет как рядовой компьютер. Этого хватит. Мы за NAT'ом, помните?

В идеале, на компьютере для работы нужно всего два диска в зеркальном mdadm RAID 1 для хранения информации, — образов дисков виртуальных машин. Можно обойтись одним диском, но тогда образы дисков нужно будет бэкапить вручную.

Опционально, на третий диск можно установить хост-систему, по желанию, это будет proxmox, esxi, или же что-то своё. Но так же можно и сэкономить на диске, если воспользоваться моим инструментом booty и собрать систему запускающую виртуалки самому, и загружаться в неё прямиком в оперативную память с флешки.

Грубо говоря, одного HDD под виртуалки хватит.

По итогу что мы имеем.

  • Одноразовая VDS за 200 рублей с внешним IP-адресом, дропается в случае обнаружения атаки;
  • Компьютер DEXP для запуска виртуальных машин под служебные нужды; опционально таких серверов можно купить сколько потребуется по мере роста предприятия и бизнес-процессов.
  • Интернет в офис из соседней квартиры.

А теперь вишенка на торте.

Для того, чтобы наш бизнес заработал, осталось только подключить все виртуалки к сети, к той самой VDS, использовать для этого мы будем VPN WireGuard!

Мы включаем компьютер, запускаем виртуалки, устанавливаем ОС, настраиваем, то, сё, пятое-десятое, чики-брики, дело в шляпе.

На VDS приступаем к настройке WireGuard:

# umask 0077
# wg genkey > privatekey
# wg pubkey < privatekey > publickey
# umask 0022

На каждой виртуальной машине с доступом в интернет проделываем тоже самое.

# umask 0077
# wg genkey > privatekey
# wg pubkey < privatekey > publickey
# umask 0022

Затем на VDS настраиваем WireGuard:

# ip link add dev wg0 type wireguard
# ip addr add 192.168.254.1/24 dev wg0
# wg set wg0 listen-port 51820 private-key "./privatekey"
# wg set wg0 peer "копируем сюда publickey из виртуалки" allowed-ips 192.168.254.0/24
# последнюю команду повторять, добавить каждый publickey каждой из виртуалки

На каждой виртуалке с доступом в интернет мы настраиваем WireGuard:

# ip link add dev wg0 type wireguard
# ip addr add 192.168.254.2/24 dev wg0 # двоечку меняем по количеству виртуалок например
# wg set wg0 listen-port 51820 private-key "./privatekey"
# wg set wg0 peer "копируем сюда publickey из vds" endpoint "IP-адрес-VDS:51820" allowed-ips 192.168.254.0/24

Поздравляю! Ваш столичный филиал готов к работе!

# ping 192.168.254.1
PING 192.168.254.1 (192.168.254.1) 56(84) bytes of data.
64 bytes from 192.168.254.1: icmp_seq=1 ttl=64 time=10.4 ms
^C
--- 192.168.254.1 ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 10.361/10.361/10.361/0.000 ms
# wg
interface: wg0
  public key: 5yeOjvLxfD9jicztCMQvarfBHHaI0t31BlJZBjmx8kg=
  private key: (hidden)
  listening port: 51820

peer: lmjidCVduFcrORW+fkEDK6LsXGBANRe5WZWyg7nO3gU=
  endpoint: 82.146.61.33:51820
  allowed ips: 192.168.254.0/24
  latest handshake: 2 seconds ago
  transfer: 1.55 KiB received, 2.02 KiB sent

Что делать дальше — вы знаете.

У нас есть VDS, которая выступает мастер-нодой с VPN, к ней подключаются все виртуальные машины по VPN, на которой происходят бизнес-процессы.

Это обычная внутренняя локальная сеть, на которой отдельными виртуалками вы всё так же настраиваете веб, почту, а правилами iptables управляете доступом.

На одну виртуалку установили веб-сервер, тут-же правилом iptables добавили forwarding всех запросов с VDS на эту виртуалку.

Ещё виртуалка — настроили почту, сделали forwarding почты с VDS на порт виртуалки.

Всё просто! И главное, всё это дело легко переносимо. Перенесли файл с образом виртуалки на другой компьютер, да даже личный ноутбук, запустили — она тут-же подсосалась к VPN на VDS и продолжает делать свою работу!

А вам не жалко будет потерять копеечную VDS и взять другую, развернуть всё уже готовое из ISO-образа (см. booty).

...

Зачем?! Зачем люди продолжают покупать дорогостоящее серверное оборудование, арендовать стойки в дата-центрах, платить бешеные данные за создание сетевой инфрастуктуры для своего бизнеса, если всё решается ТАК ПРОСТО!?

Готов стать админом на вашем предприятии и сделать всё с нуля под ключ, контакты в профиле. =)

Spoofing
()

Хорошей музыки тред

 , ,

Привет еще раз. Сегодня 17.06.2023 / 21:15
Как изменился лор. Появилось много интересных тем, меньше стало «архивов на флешке». Я ушел больше в ридонли, постарел наверное. Я не ухожу, меняю никнейм. Удачи тебе и мне желаю. Я сегодня немного пьян. Это можно.

https://youtu.be/7IpfZnBvBF0 - Cozy Powell

Чак Берри - https://youtu.be/T38v3-SSGcM

// Есть тег пиво, но нет тега бренди.

cyberping
()