В этой серии статей я буду рассказывать, как сделать свой переносной сервер на Linux из нетбука EEE Pc 701, способный для множества задач, как то:
- Раздача 3G-интернета с USB-модема (да, в принципе, хоть с тостера) через вайфай-карточку, плюс использование внешних прокси и VPN прозрачно для пользователя
- Безопасный файловый сервер — защита от вирусов и тому подобное
- Проверка вайфай-сетей, да и практически чего угодно, защищённого паролем, на прочность
- Система голосового оповещения
- Система распознавания голоса и, соответственно, управления голосом
- Переносной медиапроигрыватель и будильник
- Стационарный телефон (хотелось бы задействовать внутренний модем)
- Сервер видеонаблюдения и потокового вещания звуков с микрофона — может иногда быть крайне полезно, если нужно кого-то подслушать
- Девайс для починки роутеров со слетевшими прошивками, используя TFTP и USB-UART преобразователь, ну и пару скриптов для облегчения своих стараний
- Много чего интересного, что только взбредёт в голову.
Статьи будут предназначены для тех, кто не боится компьютеров и готов экспериментировать. Для экспериментов я выберу нетбук Asus EEE Pc 701 4G с системой Debian — мне он достался с разбитым экраном по символической цене в 25$, поэтому я сразу загорелся идеей сделать из него переносной сервер, который сможет выживать в довольно суровых условиях. В принципе, ноутбуку при падении особо нечего терять, кроме жёсткого диска и экрана, но экран разбит, а жёсткий диск в этом ноутбуке отсутствует в принципе — вместо него внутри встроена флешка на 4 гигабайта, которая и послужит системным диском. Батареи для этого ноутбука недороги, около 20 долларов на dx.com, и я с удовольствием прикуплю ещё парочку, благо они маленького размера — всё для портативности. Также я планирую заняться небольшим моддингом этого ноутбука — допаять внутренние USB-порты, а к ним подключить что-нибудь функциональное, вроде Bluetooth адаптера. Для чего мне это надо?
- Портативность. Столько самых необходимых в моей жизни функций в моей сумке иметь очень удобно.
- Получение опыта работы с системой Debian. Не скажу, конечно, что у меня его совсем нет, но всё же хочется больше.
- Масса веселья при настройке и использовании — будут обязательно.
- Получится просто классный гаджет, который облегчит жизнь.
Что есть?
Информация о системе:
Debian 7
uname -a:
>Linux localhost 3.2.0-4-486 #1 Debian 3.2.41-2 i686 GNU/Linux
Никакая оболочка рабочего стола не установлена, поскольку в ней элементарно нет смысла — экран разбит напрочь, да и делать всё необходимое спокойно можно через SSH. Аккаунт буду использовать рутовый — просто нет смысла создавать ещё один, так как систему планируется однажды настроить и больше не использовать — смысл тогда делать аккаунт для пользователя? Мой любимый язык программирования — Python, но использовать для программной части я буду Bash — скрипты на Bash в большинстве своём удобнее для задач автоматизации в Линуксе.
Батарея неопределённой ёмкости — возможно, что и уже значительно подсела, не могу протестировать это с Windows XP и Everest, чтобы получить детализированную информацию об ожидаемом времени работы и прочем. Однако при включенном и настроенном энергосбережении работает сравнительно долго — часа 2 точно.
- Вайфай-карта Atheros AR242x / AR542x
- 1 гигабайт оперативной памяти
- 4 гигабайта на SSD-диске — как ни странно, он всё ещё работает
- Модем для аналоговой телефонной линии, встроенный. Мне, правда, пришлось найти подходящий и поставить внутрь, но при наличии отвёртки это не проблема.
- Встроенные динамики и микрофон, Ethernet 100/10 Mbps, VGA-out, 3xUSB (+ 2 нераспаянных внутри), SATA — нераспаянный внутри
- 3G модем от одного латвийского провайдера
- Терпение
Что планируется?
Сделать несколько железных модов нетбука:
- Внутренний инфракрасный порт для управления с пульта — нет смысла каждый раз использовать SSH или клавиатуру вслепую, а вот мелкий пульт был бы идеален
- E-SATA порт, используя нераспаянные контакты SATA на материнской плате
- Возможно, банальное расширение жёсткого диска (флешка для пользовательских данных внутри) и встроенный Bluetooth.
Сделать из ноутбука почти что полноценный переносной сервер:
- Создание WiFi-точки доступа
- Настройка DHCP-сервера
- Маршрутизация между двумя интерфейсами — внешним и локальным
- Подключение 3G модема
- Загрузка по сети для других машин
- Видеонаблюдение
- Файловый сервер
- Голосовое оповещение
Прочие цели:
- Hydra для подбора паролей и прочего
- Связка из Aircrack, Reaver и других прикольных штук — конечно же, пентестинг и только пентестинг
- Система распознавания голоса на основе CMU Sphinx
- Проигрывание музыки (ну а почему бы и нет?)
- To be continued
Необходимые допилы:
- Настройка энергосбережения
- Очистка места на жёстком диске (удаление ненужных пакетов и запасных файлов, ну и там по мелочи)
- To be continued
Итак, вопрос.
Хотелось бы обитателям Хабрахабра прочитать цикл статей по подобным темам? Я работаю над статьями в своё свободное время и надеюсь, что они помогут новичкам в Linux освоить прикладное использование различных пакетов в условиях подобных серверов, возможно, встроенных или же переносных, как у меня, и постичь часть интереснейших деталей конструктора, коим являются системы на базе Linux. Конечно же, эти статьи могут пригодиться для тех же переносных компьютеров на базе Raspberry Pi или других становящихся популярными платформ — да и вообще для всего, на что можно поставить Linux и подключить к сети — те же тостеры не исключение. После этих статей я, возможно, начну книгу, которая поможет пользователю, ни разу в жизни не сталкивавшемуся с системой Linux, но работавшему с Windows, освоить Linux как минимум до уровня новичка, но, видимо, это будет темой уже для отдельного блога — на Хабре всё же в большей части люди более-менее знакомы с этой системой или имеют о ней представление. Будет востребовано или нет? Вот в чём вопрос.
Автор: CRImier