Как стать автором
Обновить

Установка OpenWRT на CheckPoint T-120 (4200 appliance)

Время на прочтение5 мин
Количество просмотров10K
CheckPoint T-120 (4200 appliance)
CheckPoint T-120 (4200 appliance)

В очередной раз просматривая объявления о продаже компьютерной техники и всяческой электроники наткнулся на интересного зверя - корпоративный файрвол CheckPoint T-120. Быстренько погуглив, нашел технические характеристики этого устройства. Вот они:

  • Intel Atom D525 1.80GHz Dual-Core;

  • оперативная память 4 GB (DDR2);

  • 4 x 10/100/1000Base-T RJ45 ports;

  • 250 гигабайт жесткий диск (SATA).

Очень даже неплохо, особенно учитывая то, что эта покупка обошлась мне в 4000 тенге, сейчас это чуть меньше $10. Заинтересовала эта железка тем, что внутри почти полноценный компьютер на базе процессора с пассивным охлаждением, крепкий блок питания, памяти достаточно. Единственное, там нет выхода на монитор/клавиатуру. Но есть консольный порт (RS232, разъем правда RJ45). Еще один аргумент к покупке - это то, что на него смогли установить pfSense. В этом случае теоретически можно и другой роутерный софт установить. Душа у меня лежит к OpenWRT. Его и будем ставить.

Консольный Кабель. Теперь вопрос с контролем процесса установки и вообще "Главный вопрос жизни, вселенной и всего такого". Фирменного кабеля - нет, Гугл подсказывает что можно использовать кабель Cisco, которого у меня тоже нет, купить - это совсем плохая идея, стоит как чугунный мост, с АлиЭкспресса - ждать долго. Выход один - паять! Достаем ЭПСН-25 и... Идем в гараж/кладовую/склад и берем оттуда кабель для подключения телефона Ericsson к компьютеру через RS232 и патч-корд RJ45. Фирменный кабель содержит 8 проводов, а в кабеле для телефона всего 5, отсутствуют провода CTS/DCD/DSR. Внизу распиновка фирменного кабеля.

Фирменный кабель Cisco.

За всю свою сознательную жизнь на практике я не встретил консольного кабеля, который использует больше, чем RXD/TXD/GND. Была не была, собираем простой кабель по следующей схеме.

Кабель спаяли.

И подключаем его через переходник USB to RS232 к компьютеру.

Проверка работы кабеля. Подключаем все это хозяйство к компьютеру, настраиваем параметры порта: Baud rate = 9600 bps, Data bits = 8, Parity = None, Stop bits = 1, Flow Control = None. Включаем роутер и видим в терминале процесс начальной инициализации (BIOS) и загрузки этого убер девайса.

Установка OpenWRT. Теперь мы будем ставить на этот роутер OpenWRT. Ну как ставить ? Его прошивают либо в флеш-память роутера, либо на жесткий диск или на карту памяти.

Для этого нужно скачать сборку OpenWRT под процессор x86, тип сборки Combined-Ext4. Такая сборка необходима для того, чтобы потом изменить размер разделов на карте памяти/жестком диске.

В кладовых у меня есть пару видов переходников SD Card to SATA, CF Card to SATA. Почему то, SD Card to SATA не всегда определяется BIOS-ом как диск. Используем CompactFlash.

Используем переходник для установки 2.5" жестких дисков вместо 3.5". Немного винтиков и болтиков М3 и получаем такую конструкцию.

Установка OpenWRT на карту памяти. Хорошее руководство можно найти здесь. У нас 64-х битный процессор, и как я упоминал выше, нужна сборка Combined-Ext4, вот ссылка на текущий стабильные билды.

Скачиваем образ, распаковываем архив и записываем на карту памяти файл *.img. В Линуксе - это можно сделать примерно так:

# Unpack image
gunzip openwrt-*.img.gz
 
# Identify disk (to replace sdX in the following command below)
lsblk
 
# Write image
dd if=openwrt-21.02.0-x86-64-generic-ext4-combined.img bs=1M of=/dev/sdX

Далее мы вставляем карту памяти CompactFlash в переходник, устанавливаем в роутер и собираем все.

Через сетевой порт Lan1 подключаем к компьютеру или сети, Console - через самодельный кабель к компьютеру. Если после включения питания через некоторое время в окне терминала побежит вывод загрузки системы, значит Вы все сделали верно и все работает как нужно. Да, кстати, нужно сменить скорость терминала на порту на 115200, все остальные параметры без изменений.

Первоначальная настройка OpenWRT. Подключаемся к веб-интерфейсу OpenWRT. IP/mask по умолчанию 192.168.1.1/24, пароль - по умолчанию пустой. Рекомендую сразу поменять пароль администратора. Затем необходимо донастроить сетевой интерфейс - гейт по умолчанию и DNS сервера. Иначе Вы не сможете установить нужные пакеты для изменения разделов.

Теперь мы можем изменить разделы установленного OpenWRT. По умолчанию размеры следующие:

/dev/sda1 is a 16MB ext4 /boot partition where GRUB and the kernel are stored.
/dev/sda2 is a 104MB partition containing the squashfs root filesystem and a read-write f2fs filesystem OR the ext4 root filesystem (depending on what image you have chosen).

Подключаемся через SSH. Процесс изменения разделов очень хорошо описан в руководстве. Сначала необходимо изменить размер Partition, затем размеры в файловой системе.

Изменение разделов/размеров.

  1. Установить fdisk.

  2. Запустить fdisk и посмотреть разделы.

  3. Записать номер начального сектора /dev/sda2.

  4. Удалить раздел /dev/sda2, но не записывать изменения на диск!!!

  5. Создать раздел /dev/sda2, при этом нужно указать начальный сектор, который Вы записали на шаге 3. Последний сектор - по умолчанию (до конца раздела).

  6. Записать изменения на диск.

Hidden text
Welcome to fdisk (util-linux 2.32).
Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.

Command (m for help): p
Disk /dev/sda: 7.2 GiB, 7751073792 bytes, 15138816 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0xcbad8a62

Device     Boot Start    End Sectors  Size Id Type
/dev/sda1  *      512  33279   32768   16M 83 Linux
/dev/sda2       33792 246783  212992  104M 83 Linux

Command (m for help): d
Partition number (1,2, default 2): 

Partition 2 has been deleted.

Command (m for help): n
Partition type
   p   primary (1 primary, 0 extended, 3 free)
   e   extended (container for logical partitions)
Select (default p): 
Partition number (2-4, default 2): 
First sector (33280-15138815, default 34816): 33792
Last sector, +sectors or +size{K,M,G,T,P} (33792-15138815, default 15138815): 

Created a new partition 2 of type 'Linux' and of size 7.2 GiB.
Partition #2 contains a ext4 signature.

Do you want to remove the signature? [Y]es/[N]o: n

Command (m for help): w

The partition table has been altered.
Syncing disks.

Пример изменения размеров разделов.

Hidden text
opkg update
opkg install fdisk
BOOT="$(sed -n -e "/\s\/boot\s.*$/{s///p;q}" /etc/mtab)"
DISK="${BOOT%%[0-9]*}"
PART="$((${BOOT##*[^0-9]}+1))"
ROOT="${DISK}${PART}"
OFFS="$(fdisk ${DISK} -l -o device,start | sed -n -e "\|^${ROOT}\s*|s///p")"
echo -e "p\nd\n${PART}\nn\np\n${PART}\n${OFFS}\n\nn\np\nw" | fdisk ${DISK}

Скрипт для изменения размеров разделов автоматически.

Следующим шагом будет изменение размеров диска - в руководстве приведен хороший скрипт для выполнения всех действий автоматически.

opkg update
opkg install losetup resize2fs
BOOT="$(sed -n -e "/\s\/boot\s.*$/{s///p;q}" /etc/mtab)"
DISK="${BOOT%%[0-9]*}"
PART="$((${BOOT##*[^0-9]}+1))"
ROOT="${DISK}${PART}"
LOOP="$(losetup -f)"
losetup ${LOOP} ${ROOT}
fsck.ext4 -y ${LOOP}
resize2fs ${LOOP}
reboot

Заключительным шагом - будет перезагрузка роутера. Пусть все хорошо утрясется...

OpenWRT установлен ! Далее можно делать из этого роутера - МегаУберРоутер. У меня на другом роутере, но на базе Intel D410 и 4 гигабайтах ОЗУ - крутится AdGuard и очень даже неплохо убирает рекламу и прочее. При этом загрузка системы в среднем еле превышает 5%.

P.S. чуть в обморок не упал, когда увидел, сколько стоил CheckPoint T-120 в свое время...

Теги:
Хабы:
Всего голосов 30: ↑30 и ↓0+30
Комментарии21

Публикации

Истории

Ближайшие события

15 – 16 ноября
IT-конференция Merge Skolkovo
Москва
22 – 24 ноября
Хакатон «AgroCode Hack Genetics'24»
Онлайн
28 ноября
Конференция «TechRec: ITHR CAMPUS»
МоскваОнлайн
25 – 26 апреля
IT-конференция Merge Tatarstan 2025
Казань