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

    fdroid
    @fdroid
    press any key
    Лучшая "загрузочная флэшка" - это Zalman VE400 или другие подобные модели. Это бокс для HDD 2.5", который умеет эмулировать CD-привод. Т.е. алгоритм такой: в бокс вставляете HDD или SSD и в специальную папочку _iso копируете нужные образы, которые могу понадобиться - дистрибутивы ОС, диагностические утилиты, Live CD, и т.д. Потом в меню бокса выбираете эмуляцию, выбираете нужный образ и грузитесь с него как с обычного CD-диска. Не первый год использую такой бокс и крайне доволен, про всевозможные "загрузочные флэшки" забыл и не желаю больше с ними возиться.
    Ответ написан
    4 комментария
  • Как передать в цикл for два аргумента из строки bash?

    @mezhuev
    Системный администратор
    Установите необходимый разделитель через переменную $IFS.
    IFS=$'\n'
    for addr in $(cat filename); do
        IFS=' '
        telnet $addr
    done

    man bash

    Word Splitting
    The shell scans the results of parameter expansion, command substitution, and arithmetic expansion that did not occur within double quotes for word splitting.

    The shell treats each character of IFS as a delimiter, and splits the results of the other expansions into words using these characters as field terminators. If IFS is unset, or its value is exactly , the default, then sequences of , , and at the beginning and end of the results of the previous expansions are ignored, and any sequence of IFS characters not at the beginning or end serves to delimit words. If IFS has a value other than the default, then sequences of the whitespace characters space, tab, and newline are ignored at the beginning and end of the word, as long as the whitespace character is in the value of IFS (an IFS whitespace character). Any character in IFS that is not IFS whitespace, along with any adjacent IFS whitespace characters, delimits a field. A sequence of IFS whitespace characters is also treated as a delimiter. If the value of IFS is null, no word splitting occurs.

    Explicit null arguments ("" or '') are retained and passed to commands as empty strings. Unquoted implicit null arguments, resulting from the expansion of parameters that have no values, are removed. If a parameter with no value is expanded within double quotes, a null argument results and is retained and passed to a command as an empty string. When a quoted null argument appears as part of a word whose expansion is non-null, the null argument is removed. That is, the word -d'' becomes -d after word splitting and null argument removal.

    Note that if no expansion occurs, no splitting is performed.
    Ответ написан
    3 комментария
  • Как скачать сайт полностью на компьютер?

    @lirostin
    Чтобы скачать сайт целиком с помощью wget нужно выполнить команду:
    wget -r -k -l 7 -p -E -nc http://site.com/

    -r — указывает на то, что нужно рекурсивно переходить по ссылкам на сайте, чтобы скачивать страницы.
    -k — используется для того, чтобы wget преобразовал все ссылки в скаченных файлах таким образом, чтобы по ним можно было переходить на локальном компьютере (в автономном режиме).
    -p — указывает на то, что нужно загрузить все файлы, которые требуются для отображения страниц (изображения, css и т.д.).
    -l — определяет максимальную глубину вложенности страниц, которые wget должен скачать (по умолчанию значение равно 5, в примере мы установили 7). В большинстве случаев сайты имеют страницы с большой степенью вложенности и wget может просто «закопаться», скачивая новые страницы. Чтобы этого не произошло можно использовать параметр -l.
    -E — добавлять к загруженным файлам расширение .html.
    -nc — при использовании данного параметра существующие файлы не будут перезаписаны. Это удобно, когда нужно продолжить загрузку сайта, прерванную в предыдущий раз.
    Ответ написан
    Комментировать
  • Как добавить предпоследнюю строку в файл через консоль?

    smorman
    @smorman
    When In Rome do as The Romans do...
    А так разве не проще без удаления последней (предложенного постами выше), добавлением перед последней $ строкой текст через операнд i - добавляет перед.
    sed -i '$i\text' myfile

    и усё...
    Ответ написан
    1 комментарий
  • Почему на моём vps стоит 24 маска. Разве 32 не была бы безопаснее?

    Robur
    @Robur
    Знаю больше чем это необходимо
    Если вы поставите маску /32 - у вас там будет только один хост в сети а надо минимум 3 - ваш сервер, роутер, и broadcast. Так что сеть может быть как максимум /30. И хостеру придется для каждого пользователя такую сеть создавать и в каждую выставлять роутер по дефолту.
    При публичных IP смысла в этом нет - вы все равно будете способны их точно так же пропинговать, ровно как и любой другой адрес в интернет, зато адреса расходуются впустую.
    Ответ написан
    Комментировать
  • Как сравнить два файла (по md5 или еще как-то) в bash?

    Для текстовых файлов можно попробовать с diff:
    diff -q file1 file2
    Если файлы одинаковые – ничего не выведет. Если различаются, вывалит различия.

    if [ -z "$(diff -q file1  file2)" ]; then
      echo "Одинаковые"
    else
      echo "Они такие разные!"
    fi


    upd. Спасибо nick3iro за подсказку про команду cmp: она сравнивает файлы побайтово и выходит со статусом 0, если файлы идентичны; 1 если различаются; 2 если произошла ошибка. Можно примерно так её использовать в скрипте:
    if cmp -s  file1  file2 ; then
      echo "Одинаковые"
    else
      echo "Они такие разные!"
    fi
    Ответ написан
    6 комментариев
  • Как интерпретировать load average?

    @hx510b
    "Я знаю, что ничего не знаю"
    Сложное объяснение, но видимо методически правильное есть в статье https://habr.com/company/mailru/blog/335326/
    Как показывает практика - LA связан не только с вычислительной нагрузкой на CPU, но зависит и от ввода вывода и других факторов состояния системы.
    При определенных обстоятельствах вполне можно наблюдать LA в несколько тысяч, при фактически не загруженных процессорах и обычном количестве и состоянии процессов.

    Я для себя LA интерпретирую как комплексный показатель нагрузки на систему.
    Упрощенно можно воспринимать как некий эфемерный показатель длины очереди процессов на исполнение - это условное заведомо неверное толкование, но вполне применимое в реальной работе.
    Интерпретация значений LA:
    Где значения от 0 до 1 указывают на не нагруженную систему близкую к простою.
    Значения от 1 до 10 - как умеренно нагруженную систему. Все нормально.
    Значения от 10 до 30 - как высоконагруженную систему. Не следует добавлять нагрузку. Можно подумать о поиске оптимизации нагрузки. Оптимизация рекомендуется.
    Значения от 30 до 100 - как чрезмерно нагруженную систему, например, причиной может быть большая доля iowait из-за перегрузки - большое количество потоков ввода вывода на одно блочное устройство, аномально медленная работа блочного устройства из-за неисправности, другие подобные причины, связанные с возникновением "бутылочного горлышка" в системе, которое надо расшивать - при таких значениях LA - производительность неэффективная. Оптимизация необходима.
    Значения выше 100 - следует воспринимать как аварийное состоянии системы с точки зрения производительности. Нужно принимать меры безотлагательно.
    Значения выше 1000 - и дальнейший рост LA ведут к падению ядра, как правило, падение системы происходит в течении ближайших нескольких часов. Требуется экстренная реакция для избежания отказа систем и потери данных.
    Границы указаны примерные на основе своего опыта.
    Ответ написан
    Комментировать
  • Linux Ubuntu, Mint как избавится от локализации в консоле?

    bingo347
    @bingo347
    Crazy on performance...
    alias git='LANG=en_US.UTF-8 git'
    в .bashrc
    Ответ написан
    Комментировать
  • Есть ли рисовалка инфраструктуры для веб-проектов?

    nuBacuk
    @nuBacuk
    Python/Linux
    Ответ написан
    Комментировать
  • Минимальные настройки безопасности Linux на VPS?

    @MechanID
    Админ хостинг провайдера
    Как работник хостинг провайдера я всячески поддерживаю то что написал Tyranron
    + дополню немного субьективной сатистики по отлому впс и дедикейтед серверов
    1 простые пароли и открытый доступ руту
    2 не менее простые пароли и секретные вопросы для емейлов - ответы на которые можно в ВК или Фейсбуке
    3 устаревший софт, в первую очередь cms в вторую все остальное

    Помните безопасность впс это не только настройки впс но и безопасность(недоступность посторонним) вашего пароля(используете вы keepass или аналоги?), ссш ключа(с паролем ли он у вас?), емейла через который можно сбросить пароль для аккаунта хостинг провайдера а далее сбросить пароль или написать тикет в техподдержку. Безопасность компьютера с которого вы заходите на впс.
    Включайте двух-факторную авторизацию если ее предоставляет ваш емейл провайдер и хостинг провайдер, если для обычной почты она слишком напряжна - заведите отдельный ящик для очень важных писем и там ее включите.
    Ответ написан
    Комментировать
  • Минимальные настройки безопасности Linux на VPS?

    xmoonlight
    @xmoonlight
    https://sitecoder.blogspot.com
    1. На порты управления обязательно: port-knocking
    2. Не нужно использовать ключи взамен пароля.
    3. Нужно использовать здравый смысл, поведенческий фильтр с ограничением по подсетям. Его можно использовать как перед подключением к SSH, так и сразу после подключения (например, промежуточным логин-скриптом проверить: предоставить доступ с верным паролем или нет).

    Не забывайте, что кроме пары логин-пароль и ключей, есть много других способов аутентификации.

    4. port-knocking: https://www.vultr.com/docs/port-knocking-on-debian
    Подключение из putty с port-knocking "из коробки":
    putty-port-knocking.png
    https://putty.org.ru/

    5. Также, можно поставить AppArmor (что это?) для управления доступом приложений к системе: https://wiki.debian.org/AppArmor/HowToUse

    6. Защита web-сайтов от большинства видов атак (включая правила исполнения кода): sitecoder.blogspot.com/2016/05/website-protection-...
    Ответ написан
    3 комментария
  • Подойдет ли ssl сертификат сайта для почтового сервера?

    @Vasily_Pechersky
    Системщик с опытом
    Сертификат подойдёт. У меня почтовик на postfix. Обычный сертификат и ключ для апача вполне подходят.
    Вопрос какой у вас доменный сертификат ? Если *.mymedia.ge то подойдёт. Если www.mymedia.ge - тогда нет.
    Можно взять бесплатные сертификаты с startssl или woosign при надобности.
    Ответ написан
    1 комментарий
  • Как установить utf8 локаль для postgresql?

    @whats
    Сам долго с этим боролся.
    Включаешь консоль
    Удаляем старый кластер базы данных
    pg_dropcluster --stop 9.1(версия кластера) main(имя кластера, получить можно pg_lsclusters)

    Создаем новый кластер
    pg_createcluster --locale de_DE.UTF-8 --start 9.3 main

    При этом локаль должна быть установлена
    dpkg-reconfigure locales
    Ответ написан
    Комментировать