ANTICHAT

ANTICHAT (https://forum.antichat.xyz/index.php)
-   Статьи (https://forum.antichat.xyz/forumdisplay.php?f=30)
-   -   Поднимаем сервер на расбери пай. (https://forum.antichat.xyz/showthread.php?t=449560)

SooLFaa 22.03.2017 17:48

Приветствую Вас господа, сегодня мы поговорим о вечном. А именно как создать маленькую станцию для хека в том числе всего за 6000р.

Собственно, начнем с основ и разберемся для чего мне это было надо:

1) Неудобно каждый раз пускать виртуалку;

2) Меньше нагрузка для поддержки двух систем;

3) Возможность непрерывной работы с малыми энергозатратами;

4) Пользоваться с любой точки планеты с помощью одного браузера;

5) Остальные радости белого ip, позволят нам ловить внешние сессии метерпретера и ломать удаленные компутеры, а не только в локалке; (для чего конечно лучше брать vds'ку а не ставить у себя дома)

Строить нашу станцию мы будем на базе маленьких одноплатных компьютерах с ARM процессорами. В моем случае - это Raspberry Pi 3 model B(далее просто малина), цена на Aliexpress от 2500 – 3000р, но лучше брать в комплекте с чехлом адаптером питания и радиаторами (для охлаждения) всё это вместе мне обошлось 3200р.

http://s011.radikal.ru/i316/1703/05/ea563837ae5f.png

Приступаем к настройке…

Первое, что мы делаем - это качаем и устанавливаем ОС на нашу флешку через кардридер в компьютер. Лично я выбрал дистрибутив Parrot OS.Моё ИМХО,что для ARM процессоров лучше использовать именно его, чем тот же kali linux. Хотя репозитории Kali мы так же добавим.

Идем на сайт: https://www.parrotsec.org/download.fx и качаем дистриб строго под raspberry pi, скачали и записываем на нашу флешку microSD и подключаем роутер.

Так как необходимо распределить интернет между компьютером и малиной, покупаем роутер, а так же microsd флешку SunDisk на 32GB (1400р)+ покупаем у провайдера белый ip – адрес. Итого у нас всё встало примерно в 6000р. (кто как шиковал)

http://s010.radikal.ru/i311/1703/8e/50192c0bf606.png

Когда мы попали в систему ввели логин и пароль parrot : parrot. Для того, чтобы отныне мы могли удаленно перезагружать нашу систему, необходимосделать автозагрузку без ввода логина и пароля.

Для этого у расбери и паррота есть клевый уже готовый механизм.

(!) В кали это делается следующим образом:

Код:

nano /etc/gdm3/daemon.conf
и расскоментируем следующие строчки

Код:

AutomaticLoginEnable = true
AutomaticLogin = root

Возвращаясь к parrot

Вызываем консоль и создаем пользователя командой adduser

Код:

sudo adduser pi
На просьбу ввести пароль – берём пароль raspberry

ЭТО ОБЯЗАТЕЛЬНОЕ УСЛОВИЕ

позже так же можно бдет поменять в конфигах

После этих действий, пишем в консоль

Код:

sudo raspi-config
Видим окно настройки малинки. Далее выберем Expand Filesystem для того, чтобы расширить дисковое пространство на всю емкость флешки, так как по умолчанию ос выделяет только 8ГБ памяти, что очень мало.

http://i023.radikal.ru/1703/f7/415b2b6c9b52.png

После этого выбираем Boot Options и выбираем последний пункт, теперь наша система всегда будет грузится по дефолту от пользователя pi с паролем raspberry.

http://s41.radikal.ru/i094/1703/00/6cc58ad93b44.png

Установка gotty

Для того, чтобы иметь постоянный доступ к системе в любой точке мира, будем использовать web-shell gotty.

Кто не вкурсе, этот shell позволяет администрировать систему используя https протокол и собственно через любой бразуер, что намного удобнее, чем держать клиента на каждой машине с ключами SSH (моё ИМХО)

1) Качаем и устанавливаем язык GO

Для этого последовательно выполняем список команд.

Код:

wget https://storage.googleapis.com/golang/go1.6.1.linux-amd64.tar.gz

export GOROOT=/home/pi/go

2)
Далее переходим в папу с GO и выполняем следующий скрипт

Код:

./go get https://github.com/yudai/gotty
3) На этом установка закончена и рассмотрим работу команды

Код:

gotty -a 192.168.2.221 -p 1337 --tls -w -c admin:Pa$$WorD /bin/bash > /dev/null 2>&1 &
где 192.168.2.221 локальный ip - адрес машины (узнать можно командой ifconfig)

1337 – порт на который будем запускать сервис.

-tls - использовать шифрование

admin;Pa$$WorD – Логин и пароль

Вызов демонов

Теперь нам необходимонаписать демона, чтобы при старте линукса, готти запускался автоматический.

Здесь существует одна проблема, так как демоны загружаются до старта системы, то сам веб сервер запуститься не успевает, чтобы решить сие проблему установим задержку на 15 секунд и воспользуемся скриптом nohup.

Создаем файл gotty.sh со следующим содержимым:

Код:

#!/bin/bash
sleep 15
./gotty -a 192.168.2.221 -p 1337 -w -c admin : Pa$$WorD /bin/bash > /dev/null 2>&1 &

Не забываем сделать его исполняемым chmod +x (полное имя файла)

Далее идем в файл /etc/rc.local и добавляем перед exit 0 следующую строку:

Код:

nohup /bin/bash /home/pi/gotty.sh &
Сохраняем и перезагружаем, таким образом мы получили возможность через браузер работать с нашим сервером.

http://s010.radikal.ru/i311/1703/37/8e3f1e706ad9.png

Однако, таким образом мы можем работать, находясь только в локальной сети с малинкой, для того, чтобы быть доступным везде надо пробросить порты на внешний адрес. Это можно сделать несколькими способами, опишу простой в настройках роутера(в разынх роутерах по разному у меня модель ASUS).

По шагам:

1) Идем по адресуhttp://192.168.1.1/(в разных роутерах по-разному)

2) Идем на вкладу «Интернет -> Переадресация Портов»

3) Добавляем новый маршрут и жмем применить.

http://s020.radikal.ru/i722/1703/71/82b58694005b.png


Теперь мы можем на любом браузере с любого места работать с нашим сервером. Осталось только добавить репозитории Kali-linux и раскрасить консоль.

Репы добавить проще простого, берем актуальные на сайте: http://docs.kali.org/general-use/kal...t-repositories

И в файл /etc/apt/sources.list.parrot

Добавляем строки:

Код:

deb http://http.kali.org/kali kali main contrib non-free
deb http://security.kali.org/kali-security kali/updates main contrib non-free

После, обновляем репозитории

Код:

apt-get update
Можем устанавливать тулзы

Код:

apt-get install metasploit-framework
Для работы малинки почти всё готово, осталось только покрасить нашу некрасивую консоль.

Будем использовать продукт с этого репозитория: https://github.com/robbyrussell/oh-my-zsh

Для этого в консоли выполняем следующую команду

Код:

sh -c "$(wget https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh -O -)"
Далее в ~/.bashrc

Добавить в начало строку

Код:

export TERM=xterm
В конец добавляем

Код:

if [ -f /usr/bin/grc ]; then
  alias cvs="grc --colour=auto cvs"
  alias diff="grc --colour=auto diff"
  alias esperanto="grc --colour=auto esperanto"
  alias gcc="grc --colour=auto gcc"
  alias irclog="grc --colour=auto irclog"
  alias ldap="grc --colour=auto ldap"
  alias log="grc --colour=auto log"
  alias netstat="grc --colour=auto netstat"
  alias ping="grc --colour=auto ping"
  alias proftpd="grc --colour=auto proftpd"
  alias traceroute="grc --colour=auto traceroute"
  alias wdiff="grc --colour=auto wdiff"
fi

После этого устанавливаем grc

Код:

apt-get install grc
На этом всё =)

А вот так теперь выглядит наш сервер

http://s09.radikal.ru/i182/1703/54/a09fb2be9cc0.png

NEW::

Но спустя какое - то время, стало понятно, что расбери очень слабенькая для могозадачности, как сканилка вполне себе. Позже я купил нормальный хороший сервер и обратил внимание на дистрибутив https://backbox.org/ под Ubuntu.

Порадовала его компактность и скорость по сравнению с той же кали.

А вот этот гайдик во многом пригодился и для его настройки.

UPDATE::

А подумав ещё какое то время. Я пришёл к выводу, что нет ничего лучше чистого Debian без всяких этих сборок

Вот теперь у меня всё. Всем спасибо.

Так же помогали:

@Mister_Bert0ni

@gartos

Mustang

Crafty fox

Первоисточник: https://codeby.net/forum/threads/pod...-server.58633/


Время: 19:31