Программист и ЭВМ

Из чата Космопорта

Из чата Космопорта
Директор подразделения компании IOActive, занимающегося тестированием систем безопасности, в докладе на конференции 34c3 привёл статистику, свидетельствующую о нехватке разработчиков, способных заниматься выявлением и исправлением ошибок в BSD-системах.
В ходе проведённого летом поверхностного аудита в ядрах трёх наиболее распространённых BSD-систем было выявлено 115 ошибок, потенциально приводящих к проблемам с безопасностью. 30 ошибок было найдено в ядре FreeBSD, 25 в OpenBSD и 60 в NetBSD. Спустя полгода после информирования разработчиков данных систем о проблемах, многие из ошибок остались неисправленными или не были доведены до пользователей.
Показать
Наиболее перспективной с точки зрения обеспечения безопасности называется ОС OpenBSD, ошибки в ядре которой были не столь тривиальны, а разработчики исправили ошибки в течение нескольких дней. Недостаток числа разработчиков в OpenBSD компенсируется оставлением только самой необходимой функциональности и внедрением прогрессивных методов противостояния эксплуатации уязвимостей.
Во FreeBSD разработчики отреагировали на проблемы в течение недели, но исправили в репозитории лишь часть проблем и выпустили лишь несколько отчётов об уязвимостях. Статус исправления остальных ошибок находится в неопределённом состоянии, так как разработчики посчитали, что для них отсутствуют практические пути эксплуатации и перенесли из категории проблем с безопасностью в область обычных ошибок.
Хуже всего обстоит дело с ОС NetBSD, качество кода которой очень разнородно, а время доставки исправлений слишком велико. Ошибки были исправлены за ночь, но были доведены до пользователей только через 6 месяцев из-за редкого формирования обновлений.
С учётом того, что многие из проблем лежали на поверхности и не потребовали больших усилий для их выявления, исследователь делает вывод, что небольшое число отчётов об уязвимостях в BSD системах говорит не об их безопасности, а о недостаточном числе разработчиков, заинтересованных в проведении аудита. Также отмечается слишком большое время жизни ошибок, от их появления в коде до обнаружения. По утверждению докладчика, большинство уязвимостей в ядре Linux выявляются достаточно оперативно. В BSD-системах ситуация иная и ряд выявленных исследователем проблем находились в коде 10 и более лет.
P. S. Интересный комментарий анонима:
У ребят нет выбора: сектантские истерики и хайп, которые лапчатый базар давно сделал нормой общения, имеют определенное влияние на потребителя. Чтобы не отпугнуть оставшиеся три с половиной компании от своих систем, бздуны теперь сообщают о проблемах иносказательно.
P. P. S. Ну и шутка «в тему».
OmniOS v11 r151020Новый клон солярки —
OmniOS v11 r151020.
Показать
Делал так. От рута:
echo "nameserver 8.8.8.8" > /etc/resolv.conf useradd -b /export/home soul passwd soul
Под юзером soul создал файл bootstrap.sh со следующим содержимым:
BOOTSTRAP_TAR="bootstrap-2017Q3-x86_64.tar.gz" BOOTSTRAP_SHA="10bb81b100e03791a976fb61f15f7ff95cad4930" # Download the bootstrap kit to the current directory. curl -O https://pkgsrc.joyent.com/packages/SmartOS/bootstrap/${BOOTSTRAP_TAR} # Verify the SHA1 checksum. [ "${BOOTSTRAP_SHA}" = "$(/bin/digest -a sha1 ${BOOTSTRAP_TAR})" ] || echo "ERROR: checksum failure" # Verify PGP signature. This step is optional, and requires gpg. #curl -O https://pkgsrc.joyent.com/packages/SmartOS/bootstrap/${BOOTSTRAP_TAR}.asc #curl -sS https://pkgsrc.joyent.com/pgp/DE817B8E.asc | gpg --import #gpg --verify ${BOOTSTRAP_TAR}{.asc,} # Install bootstrap kit to /opt/local tar -zxpf ${BOOTSTRAP_TAR} -C / # Add to PATH/MANPATH. PATH=/opt/local/sbin:/opt/local/bin:$PATH MANPATH=/opt/local/man:$MANPATH
Затем делаю его исполняемым и запускаю:
sudo chmod +x bootstrap.sh && sudo ./bootstrap.sh
Поставив pkgin, в файле ~/.profile добавил:
PKGSRC_BIN=/opt/local/bin PKGSRC_SBIN=/opt/local/sbin PKGSRC_MAN=/opt/local/man PATH=${PKGSRC_SBIN}:${PKGSRC_BIN}:${PATH} MANPATH=${PKGSRC_MAN}:${MANPATH}
После этого проверяю работу pkgin:
export PATH export MANPATH source ~/.profile pkgin help
Если вывод команды pkgin корректный (она установлена и функционирует), то:
sudo pkg install xsvc sudo pkgin install modular-xorg sudo pkgin install modular-xorg-server modular-xorg-apps modular-xorg-fonts xf86-input-keyboard xf86-input-mouse sudo pkgin install xf86-video-FOO sudo pkgin install gnome touch ~/.xinitrc && echo "exec gnome-session" > ~/.xinitrc startx
Всё.
(бОльшую) часть подсмотрел тут.

Начал новую линейку заметок по теме обучения на системного администратора. Учусь не я, а моя жена, хотя и я тоже многое оттуда воспринял (на самом деле нет ;-). Это не конспекты лекций, не пошаговые руководства, а просто заметки на память, чтобы ей легче было повторять пройденный материал. Помечаться будут тегом ’учёба’ и в начале страницы будет стоять маленький логотипчик
. В квадратных скобках указывается ОС, в которой производились настройки/тесты/манипуляции.
Итак, первая заметка.
Показать
Поставить
nginx и
PHP.
sudo apt-get install nginx php-fpm
В файле */etc/nginx/nginx.conf* убрать коментарий в строке
multi_accept on
и дописать index.php в определении индексных файлов
index index.php index.html index.htm index.nginx-debian.html;
В файле */etc/nginx/sites-available/default* изменить путь к индексному файлу
root /var/www/html/site1
и разрешить FPM, убрав коментарий
location ~ \.php$ { include snippets/fastcgi-php.conf; fastcgi_pass unix:/var/run/php/php7.0-fpm.sock; }
Также запретить доступ к файлам, имя которых начинается с префикса .ht
location ~ /\.ht { deny all; }
Создать индексный файл сайта
sudo mkdir -p /var/www/html/site1 sudo touch /var/www/html/site1/index.php sudo echo "<?php phpinfo(); ?>" > /var/www/html/site1/index.php
В файле */etc/php/7.0/fpm/php.ini* исправить значения в строках
memory_limit = 256M default_socket_timeout = 360
и раскомментировать строки
;user_agent="PHP" ;cgi.fix_pathinfo=1
Отключить уязвимость, поставив значение 0:
cgi.fix_pathinfo=0
Затем перегружаем nginx (любым способом)
systemctl reload nginx nginx -s reload

В качестве продолжения статьи Установка DebWrt на DIR-320 аппаратных ревизий A1/A2.
Показать
Следует иметь в виду, что у свежеперепрошитого устройства на LAN-интерфейсе настроен IP-адрес 192.168.1.1/24. Если используются другие сети, то правим сетевые настройки (возможно, сеанс удалённого входа отвалится, если изменился IP-адрес). Для этого необходимо удалить /etc/network/interfaces (это симлинк на /etc/network/interfaces.firstboot), создать его с необходимым содержимым и перегрузить службу networking:
rm /etc/network/interfaces touch /etc/network/interfaces cat << EOF > /etc/network/interfaces auto lo eth0 iface lo inet loopback iface eth0 inet dhcp iface wlan0 inet dhcp wpa-ssid <имя WiFi-сети> wpa-psk <ключ WiFi-сети> EOF service networking restart echo "<DNS-сервер>" > /etc/resolv.conf
Изначально настроен только один пользователь — root с паролём debwrt. Из-за того, что при старте таймер времени равен нулю, то есть системные время и дата установлены на полночь 1 января 1970 года (Thu Jan 1 00:00:00 UTC 1970),то при входе ssh’ем (или telnet’ом) система потребует смену пароля. Необходимо выставить правильное время.
date --set="<дата> <месяц> <год> <часы>:<минуты>:<секунды>" date --set="<номер месяца>/<дата>/<год> <часы>:<минуты>:<секунды>"
Например, на дату опубликования этой заметки актуальной была команда:
date --set="16 January 2018 17:57:00" date --set="01/16/2018 17:57:00"
service ntp stop ntpdate time.nist.gov service ntp start
hwclock -w hwclock --hctosys
не сработают, так как у системы нет аппаратных часов.
echo "deb http://archive.debian.org/debian squeeze main" > /etc/apt/sources.list apt-get update apt-get upgrade
Донастраиваем систему и устанавливаем нужные пакеты:
passwd hostname <имя узла> echo "<имя узла>" > /etc/hostname echo -e "127.0.0.2\t<имя узла>" > /etc/hosts apt-get install mc sudo most locales bash-completion nload htop ccze telnet wpasupplicant dpkg-reconfigure locales dpkg-reconfigure tzdata adduser <пользователь> echo -e "<пользователь>\tALL=(ALL:ALL) NOPASSWD: ALL" > /etc/sudoers apt-get install apache2 php7 mysql-server
Pearl Linux 6.0 (Artful)Поставил ещё одну систему в виртуалбоксе —
Pearl Linux 6.0 (Artful).
Показать
При установке в
Virtualbox (как с UEFI, так и без) в самом конце, после заливки всех файлов, когда возникает надпись "Извлеките установочный диски и затем нажмите ENTER" — нажатие этой клавиши (да и любой другой) не даёт эффекта. А в
VMware всё работает.
LuninuX OS 17.04 (Zulu)Быстрый, стабильный и удобный дистрибутив GNU/Linux, основанный на
бубунте. Пилится с декабря 2010 года (тогда проект был известен как
Sn0wL1nuX) разработчиком
Эммануэлем Аппиа (Emmanuel Appiah). С первого января 2019 года проект заморожен. Оконный менеджер —
GNOME. Размер файла образа винта после установки — 5,7 гигов.
Показать
Неплохой современный дистр, похож на
Deepin чем-то, хотя их сейчас много лепят с однотипными инсталляшками.
Metamorphose Linux 8.5.7 (Panther)Поставил ещё одну оську в виртуалбоксе —
Metamorphose Linux 8.0.
Обновление от 3 декабря 2021 года: Linux-дистрибутив на базе тестовой ветки
Дебиана. Дистр предоставляет простую и полную ОСь с приятным графическим интерфейсом для начинающих и опытных пользователей. Разработчик проекта —
Аилтон Насименто де Матос (Ailton Nascimento de Matos). Дистр пилился с 2008 года. Последняя версия (эта) вышла 24 ноября 2016 года. Графическая среда —
KDE Plasma. Файл образа винта после установки стал размером 7,4 гигабайта.
Детали: Показать
Инсталлятор тоже не маленький — около трёх гигабайт. И самая изюминка инсталляшки этого дистра (скачанного с SourceForge, кстати) — она на португальском! 
Но ничего, разобрался, поставил, локализовал, снял скрин... Только не обновил, время не хотелось терять. Я с SourceForge 60 гигов разных дистрибутивов скачал вчера. Правда, все Линуксы, походу школота современные делатели дистров другого не умеют, сложно...
P. S. Старая версия: Показать
BackSlash Linux KristoffПоставил сегодня в виртуалбоксе новую ось —
BackSlash Linux Kristoff.
Показать
Установщик без режима UEFI глючил, при двух гигабайтах памяти система тормозила, пришлось настроить выделение её четырёх гигов. Без заранее созданных разделов на винте программа установки выхватывает ошибки, пришлось запускать GParted перед процессом инсталляции. В /var/log/syslog ничего не пишет, хотя инсталлятор при сообщении об ошибке рекомендует ознакомиться с деталями сей досадной неприятности именно в нём 
Ну и хостится проект на не вызывающей большого доверия площадке SourceForge.
Интересно, чем руководствовался разработчик дистра, заставляя пользователя при загрузке с инсталляционного LiveCD входить в систему под именем юзера backslash с пустым паролём (причём пароль могут спросить несколько раз) и запускать руками иксы командой startx, чтобы начать установку?
P. S. Блин, инсталляционный образ весит 4 (четыре) гига! ЧЕТЫРЕ, Карл!.. Распаковывается/скачивается это счастье в 12 гигабайт места.
P. P. S. А, да, при выборе русского языка установщик тоже ошибки генерит.
С конца сентября 2016 года решил ставить виртуалки (и не только) с разными ОС (Linux, BSD, вобщем — все *nix). Прокачиваю, так сказать, свой скил... Заодно анализирую некоторую инфу, полезную для распознавания типа и версии ОС. Снимаю скриншот с инфой, выведеной в BASH’е, в основном — вывод uname, собержимое разных /etc/*release* и /etc/*version*, lsb-release (если это Linux-based distro), всякие kern.osrelease и kern.ostype (это если BSD). С новыми дистрибутивами проблем обычно нет (их большинство), но с устаревшими, про которые мало инфы (как
plan9 или
XENIX386), снятыми с поддержки (как
Moblin 2, для которого не могу найти рабочую копию репозитория в сети), или трансформировавшимися в другие (как
LindowsOS /
Linspire /
Freespire /
Xandros или
Mandrake /
Mandriva /
Mageia /
OpenMandriva).
Показать
На сегодня сделал 110 осей (это которые дошли до процесса снятия скрина, но много пока не доделаны).
Линуксы:
Бэ Эс Дэ:
FreeBSD![]() |
PicoBSD![]() |
NetBSD![]() |
BSDRP![]() |
FreeSBIE![]() |
DesktopBSD![]() |
TrueOS![]() |
kFreeBSD![]() |
OliveBSD![]() |
UlBSD![]() |
LibertyBSD![]() |
OpenBSD![]() |
pfSense![]() |
DragonFly![]() |
GhostBSD![]() |
Андроиды:
БиОСь и клоны:
Солярка:
МакОси:
Всякая экзотика: