Предупреждение для тех кто привык к оконным интерфейсам и боится терминала: Вы можете испытать нервное потресение, глубокое непонимание и сильное раздражение. Если вы неуверенны в своей психике закройте данный текст немедленно. У нас уже есть флэшка с Kali Live и мы с неё загрузились. Запускаем gparted и разбиваем диск. Понадобится два раздела: один в ext4 для корня и второй в swap для свопа. Однажды я компилил исходники к андроиду, после этого делаю своп на 16Gb. Отдельно разделы под home, usr или var не выделяю. Запускаем терминал. Можно в иксах, а можно нажать Ctrl+Alt+F1 Для тех кто переключился в консоль НАСТРОЙКА КОНСОЛИ Настройка локали Code: apt install locales dpkg-reconfigure locales То что выбрал я Locales to be generated: [*] en_US.UTF-8 UTF-8 [*] ru_RU.UTF-8 UTF-8Default locale for the system environment = en_US.UTF-8 Настройка клавы Code: apt install keyboard-configuration dpkg-reconfigure keyboard-configuration То что выбрал я Keyboard model = Generic 105-key PC (intl.) Keyboard layout = Russian Method for toggling between national and Latin mode = Caps Lock - привыкнув использовать капслок начинаешь понимать насколько неудобно переключаться используя Alt+Shift, когда приходится работать в винде (хвала создателю приходится это делать раз в полгода). Method for temporarily toggling between national and Latin input = No temporary switch - Служит для временного переключения между языками, может пригодится например если печатаете в vim кирилицей, а нужно использовать латинский что бы написать слово или нажать комбу. Key to function as AltGr = No AltGr key Compose key = No compose key - Назначение этого параметра для меня загадка. Use Control+Alt+Backspace to terminate the X server? = Yes - удобная фигня для прибивания иксов, может пригодится во время эксперементов с настройками. Настройка шрифтов Code: apt install console-setup dpkg-reconfigure console-setup То что выбрал я Encoding to use on the console = UTF-8 Character set to support = # Cyrillic - KOI8-R and KOI8-U Font for the console = TerminusBold - Самый лучший из моноширных шрифтов Font size = 10x20 (framebuffer only) - Самый лучший размер для букв УСТАНОВКА СИСТЕМЫ Установим установщик Code: apt install debootstrap man 8 debootstrap - для пытливых умов Посмотрим как называется дистрибутив и откуда нам качать пакеты (debian packages) Code: cat /etc/apt/sources.list имя (SUITE) - kali-rolling хранилище (MIRROR) - http://http.kali.org/kali Монтируем корень будущей системы (у меня корень /dev/sda6) в /mnt (TARGET) Code: mount /dev/sda6 /mnt Устанавливаем базовый набор програм Code: debootstrap kali-rolling /mnt http://http.kali.org/kali Отправляем данные для монтировки разделов (они понадобятся позже) Code: lsblk -o NAME,LABEL,FSTYPE,UUID /dev/sda >> /mnt/etc/fstab Монтируем виртуальные фс для будущего корня Code: mount -B /dev /mnt/dev mount -t devpts devpts /mnt/dev/pts mount -t proc proc /mnt/proc mount -t sysfs sys /mnt/sys Сделаем корнем нашу систему Code: chroot /mnt Подправим source.list Code: vim.tiny /etc/apt/sources.list source.list Code: deb http://http.kali.org/kali kali-rolling main non-free contrib Обновим список пакетов Code: apt update Настроим консоль (смотреть выше) Установим пароль руту (постоянно зыбывал это делать, загружаешь свежую систему, а попасть в неё не можешь) Code: passwd Настроим монтировку корня и свопа Code: vim.tiny /etc/fstab /etc/fstab Code: # sda1 swap swap UUID=2dca7465-8c29-49a5-ac04-6991a0a66fd5 none swap sw 0 0 # sda6 ext4 root UUID=84526d7f-0363-4171-bdf7-6a8a690e80ee / ext4 errors=remount-ro 0 1 Установим ядро и дрова Code: apt install linux-image-amd64 firmware-linux-free firmware-linux-nonfree Установим загрузчик Code: apt install grub2 Выходим из chroot Code: exit Отмонтируем систему Code: umount /mnt/sys umount /mnt/proc umount /mnt/dev/pts umount /mnt/dev umount /mnt Установка завершена. Перегружаемся. Code: reboot
КОНСОЛЬ После того как мы перезагрузились в свежую систему мы оказались в пустом линуксе. Что бы наполнить его прогами нужно подключится к инэту. Но во время установки я не стал добавлять нужные пакеты поэтому придётся перезагрузится в Kali Live смонтировать как в инструкции по установке и сделать chroot. Устанавливаем то что нужно для соединения с инетом. Code: apt install net-tools wpasupplicant После того как установили перегружаем машину Смотрим какие сетевухи в системе Code: ifconfig -a Настроим их подключение /etc/network/interfaces Code: iface enp2s0 inet dhcp iface wlp8s0 inet dhcp wpa-ssid SSIDName wpa-psk WiFiPassword Что бы не прочитали пароль от WiFi Code: chmod 600 /etc/network/interfaces Подключаюсь и отключаюсь по езэрнэту Code: ifup enp2s0 ifdown enp2s0 По вайфаю Code: ifup wlp8s0 ifdown wlps0 Установим собственный розолвер имён Code: apt install bind9 dnsutils Добавим в /etc/bind/named.conf.options Code: recursion yes; allow-query { 127.0.0.1; }; listen-on { 127.0.0.1; }; Изменим /etc/default/bind9 Code: OPTIONS="-4 -u bind" Запустим Code: systemctl enable bind9 systemctl start bind9 Сделаем так что бы dhclient не брал сервера имён провайдера Добавим строчку в /etc/dhcp/dhclient.conf Code: supersede domain-name-servers 127.0.0.1; Отключимся от инета Оставим в /etc/resolv.conf только Code: nameserver 127.0.0.1 Подключимся к инэту и проверим преобразование имён Code: cat /etc/resolv.conf netstat -antup nslookup forum.antichat.ru
ИКСЫ Подправим конфиг /etc/hostname Code: localhost Установим иксы Code: apt install xorg xfwm4 xfce4 xfce4-terminal mousepad Перезагружаем комп, а после перезагрузки жмём Ctrl+Alt+F1 и работаем в консоли Найдём прогу которая показывает окошко входа Code: ps ax Это прога /usr/sbin/lightdm Удалим её Code: systemctl stop lightdm systemctl disable lightdm apt purge lightdm apt autoremove Перезагрузимся Добавим пользователя Code: adduser --ingroup users --gecos "" user chmod 700 /home/user Нажмём Alt+F6 и залогинемся им Запустим иксы Code: startx Выберите Use default config Переключимся обратно к руту Ctrl+Alt+F1 Настроим звук Code: apt install alsa-utils alsactl -L init adduser user audio После перезагрузки появится звук, и он не будет прерываться при переключении в консоль Добавим возможность запускать в иксах приложения от имени других пользователей Code: addgroup --gid 99 xusers addgroup user xusers touch /var/local/Xauthority chown user:xusers /var/local/Xauthority chmod 640 /var/local/Xauthority У юзера в терминале выполняем Code: xauth extract /var/local/Xauthority $DISPLAY echo $DISPLAY Добавим экстракт в автозагрузку юзеру Выбираем Applications -> Settings -> Session and Startup -> Application Autostart -> Add Name = xshare Description = share xuathority Command = xauth extract /var/local/Xauthority :0.0 В консоле рута Code: export DISPLAY=":0.0" export XAUTHORITY="/var/local/Xauthority" xfce4-terminal Переключаемся в иксы Alt+F6 и пользуемся рутовым терминалом Добавим возможность запускать торнутый браузер от имени тора Code: apt install tor Подправим /etc/passwd Code: debian-tor:x:109:115::/var/lib/tor:/bin/bash Загрузим браузер Code: apt install lynx su -l debian-tor lynx https://torproject.org tar -xvf ./tor-browser-linux64-8.5.1_en-US.tar.xz exit Распоковали и вышли в рута Создадим тору стартер /usr/local/bin/tor-browser Code: export DISPLAY=":0.0" export XAUTHORITY="/var/local/Xauthority" cd /var/lib/tor/tor-browser_en-US/Browser ./start-tor-browser Последние штрихи Code: chmod 755 /usr/local/bin/tor-browser addgroup debian-tor xusers apt install ntpdate ntpdate us.pool.ntp.org Запускаем Code: su -c /usr/local/bin/tor-browser -l debian-tor
СЕРВЕР Установим web набор Code: apt install apache2 default-mysql-server php php-mysql chromium Добавим почтовик Code: apt install postfix Мой выбор: General type of mail configuration = Local only System mail name = localhost.localdomain Отредактируем /etc/hosts Code: 127.0.0.1 localhost.localdomain ::1 ip6-localhost ip6-loopback Далее изолируем виртуальный хост Подправим /etc/apache2/ports.conf Code: Listen 127.0.0.1:80 ServerName localhost Изолируем файловую систему средствами php Добавим в /etc/apache2/sites-available/000-default.conf Code: <IfModule mod_php7.c> php_admin_value open_basedir "/var/www/html:/tmp" </IfModule> Изолируем сеть Code: ip netns add isolator ip netns exec isolator ifconfig lo up 127.0.0.1/8 Зайдём в изолятор Code: ip netns exec isolator /bin/bash Запустим postfix Code: postfix start Запустим apache2 Code: . /etc/apache2/envvars export APACHE_STARTED_BY_SYSTEMD=false /usr/sbin/apachectl start Запустим mysql Code: mkdir -p /var/run/mysqld chown -R mysql:mysql /var/run/mysqld mysqld --user=mysql --pid-file=/var/run/mysqld/mysql.pid & Проверим Code: netstat -antup Далее запустим браузер Подправим /etc/passwd Code: www-data:x:33:33:www-data:/home/www-data:/bin/bash Создадим домашний каталог что бы браузер мог класть туда файло Code: mkdir /home/www-data chown www-data:www-data /home/www-data chmod 700 /home/www-data Разрешим запускать проги в иксах Code: adduser www-data xusers Логинимся юзером запускаем иксы и переключаемся обратно в консоль Создадим стартер /usr/local/bin/www-browser Code: export DISPLAY=":0.0" export XAUTHORITY="/var/local/Xauthority" /usr/bin/chromium --password-store=basic Code: chmod 755 /usr/local/bin/www-browser Находясь в изоляторе запускаем Code: su -c /usr/local/bin/www-browser -l www-data & Переключаемся в иксы и проверяем http://localhost/index.html Назад в изолятор и тушим систему Выключаем mysql Code: kill -SIGTERM `cat /var/run/mysqld/mysql.pid` Выключаем apache Code: /usr/sbin/apachectl stop Выключаем postfix Code: postfix stop Выходим и удаляем изолятор Code: exit ip netns delete isolator
БОНУС В иксах выбираем в меню Settings -> Accessibility -> Mouse -> Use mouse emulation Acceleration delay = 50 Repeat interval = 10 Acceleration time = 1000 Maximum speed = 2000 Теперь мышиный курсор управляется с Num Pad кнопок. Можно мышь убирать в шкаф. Моя там давно лежит. Избавляемся от назойливой панельки Запускаем терминал Code: ps ax | grep xfce4-panel kill -SIGTERM 1231 Закрываем терминал Нажимаем Alt+F4 и выходим с сохранением. Снова запусаем иксы и выходим без сохранения Что бы вызвать меню нажмите Ctrl+Esc
Лично мне, без надобности шифровать или очищать, специально, раздел подкачки. Тем не менее по теме: Encrypted swap partition on Debian/Ubuntu
Спасибо ТС, все четко и понятно расписано) за своп тоже слышал, что лучше его удалять, правда так и не понял зачем(