Серверы android: Делаем сервер из Android-телефона / Хабр
|Содержание
Делаем сервер из Android-телефона / Хабр
Некоторое время назад мне пришла в голову интересная идея — превратить свои старые телефоны (их скопилось немало за десять лет) в серверы, в качестве альтернативы покупке Raspberry Pi.
На то было несколько причин: во-первых, у телефонов есть батарея, что для сервера практически бесплатный мини-UPS, во-вторых, внутренняя память смартфона (UFS) работает быстрее и надёжнее, чем SD-карта. В-третьих, у телефонов имеется экран, по которому можно отслеживать состояние сервера.
Ну и в-четвёртых, мне просто было жаль их выбрасывать. Консьюмеризм в наше время предписывает каждый год-два покупать новые смартфоны, производители блокируют возможности железа, которые им невыгодны, прекращают поддержку старых моделей, оставляя людей беспомощными. Миллионы смартфонов отправляются на свалку истории каждый год, хотя каждый из них это мощный компьютер.
TL;DR: в этом посте будут разобраны вопросы установки PostmarketOS на смартфон,
поднятия на нём в качестве примера Docker и веб-приложения в нём.
Сразу хочу оговориться — я понимаю, что есть типовые решения, например Termux или UserLAnd, и спектр поддерживаемых устройств у них шире. Но все они работают как надстройки над основной системой, Android, и подвержены её ограничениям, таким как агрессивное сокращение энергопотребления или перенос задач на LITTLE-ядра при выключении экрана. Будущее Termux, например, вообще неясно из-за всё более жёстких гаек безопасности в Android 11. UserLAnd, помимо этого, работает через PRoot, который при всей своей пользе ощутимо замедляет процессы с большим количеством системных вызовов. В этой статье мы разбираем именно создание сервера на железе без Android.
Часть первая. Прошивка
Проект PostmarketOS был создан именно ради этой цели — сохранение вычислительных устройств после прекращения их поддержки производителями. Список поддерживаемых устройств можно найти здесь.
Для установки требуется телефон с разблокированным загрузчиком. В качестве примера буду использовать OnePlus One из-за простоты разлочки со стороны производителя. Для каждого производителя список шагов разный, ниже привожу обобщённые действия для смартфона 2018-2021 года выпуска:
Шаг 1
Шаг 2
Шаг 3
$ sudo apt install adb fastboot $ # подключаем телефон к USB $ adb devices $ # должен показать устройство в статусе unauthorized
Далее авторизуем подключение на самом телефоне
$ adb devices $ # теперь должен показать нормальный статус "device"
Шаг 4
$ adb reboot bootloader $ # смартфон перезагружается в режим fastboot $ # команда может отличаться от oem unlock, уточняйте шаги для вашего производителя $ fastboot oem unlock $ # теперь должен показать дисклеймер и уточнить намерения, подтверждаем...
После разблокировки телефон сбросит данные снова перезагрузится в Android, перезапустите его в режим fastboot комбинацией клавиш или повторите релевантные для этого шаги 3 и 4.
Если разблокировка прошла успешно, далее можно следовать стандартной процедуре установки PmOS:
$ sudo apt install python3-pip git $ python3 -m pip install --user pmbootstrap $ export PATH="$HOME/.local/bin:$PATH" $ pmbootstrap init
На этом этапе pmbootstrap
запросит пароль и задаст довольно много вопросов о том, как сконфигурировать систему и целевое устройство. Итоговый результат будет записан в ~/.config/pmbootstrap.cfg
.
Пару слов по поводу разных конфигураций. Здесь есть несколько важных пунктов — ядро mainline
или downstream
, графическая среда mate
, weston
и т.д., канал обновлений edge
или stable
. Интуиция при выборе значений должна быть такой:
- Если планируете пользоваться графикой, ставьте пароль из цифр. Некоторые графические среды поддерживают только цифровую клавиатуру на экране ввода пин-кода.
- Выбирайте
edge
в качестве канала обновлений. PostmarketOS разрабатывается быстро, и много опакеченного ПО ещё долго не будет вstable
. - Выбирайте ядро
downstream
если хотите максимум работающей «из коробки» второстепенной периферии после установки. Выбирайте ядроmainline
если вам нужен OpenGL/OpenCL и современные возможности ядра, такие как контейнеризация и cgroups. - Выбирайте графическую систему
phosh
,sway
илиplasma-mobile
если у ваc ядроmainline
и имеется графическое ускорение. В противном случае остановитесь наmate
илиxfce4
. Внимательно смотрите страницу вики для вашего устройства.
Пример того, что получилось у меня
[pmbootstrap] aports = /home/kanedias/.local/var/pmbootstrap/cache_git/pmaports ccache_size = 5G is_default_channel = False device = oneplus-bacon extra_packages = rsync,vim,networkmanager,bluez hostname = lab-of-maker build_pkgs_on_install = True jobs = 17 kernel = mainline keymap = locale = en_US. UTF-8 nonfree_firmware = True nonfree_userland = False ssh_keys = True timezone = Europe/Moscow ui = sway ui_extras = False user = kanedias work = /home/kanedias/.local/var/pmbootstrap boot_size = 128 extra_space = 0 sudo_timer = False
Затем с помощью pmbootstrap install
сразу же начинаем сборку образа целевой системы. После сборки её предлагается установить самому, так как механизм установки варьируется от модели к модели. Пример того, как это делается стандартно, и как вышло у меня, ниже.
Пример из инструкции
$ # прошиваем основную систему, библиотеки, модули ядра $ pmbootstrap flasher flash_rootfs $ # прошиваем ядро и initramfs $ # можно использовать pmbootstrap flasher boot для проверки загрузки перед этим $ pmbootstrap flasher flash_kernel
Есть хорошие шансы, что всё сработает как надо с первого раза. К сожалению, загрузчики и реализацию fastboot каждый производитель телефонов пишет по-своему, отчего попытки установки превращаются в смерть от тысячи иголок. В моём случае fastboot наотрез отказывался прошивать образы такого размера. Пришлось воспользоваться сторонним recovery, чтобы продвинуться дальше:
Пример из жизни
$ # собираем образ для установки напрямую на устройстве через TWRP $ pmbootstrap install --android-recovery-zip $ # скачиваем TWRP для нужного устройства, см. https://twrp.me/Devices/ $ fastboot boot twrp-3.5.2_9-0-bacon.img $ # на экране телефона выбираем Advanced -> ADB Sideload -> Start sideload $ pmbootstrap flasher --method=adb sideload
После завершения процесса sideload жмём «Reboot to system». Должен пойти процесс загрузки ядра и далее самой PostmarketOS.
Часть вторая. Настройка PostmarketOS
По сути своей, PostmarketOS построена на основе дистрибутива Linux под названием Alpine. Это позволяет создать работающую систему минимального размера, что для большого количества старых устройств с ограниченной внутренней памятью критично.
Однако, есть и подводные камни. О них ниже:
- Alpine построен на основе лаконичного libc под названием Musl. Плохая новость тут в том, что большинство других дистрибутивов работает на основе glibc, что означает невозможность установки ПО простым переносом бинарников с Raspbian или Ubuntu ARM, как позволяет, например, Golang или Rust.
- Система инициализации в дистрибутиве — OpenRC. Если вы знакомы с Gentoo, это для вас не будет озарением, но OpenRC куда ближе к прародителю sysvinit, чем к общепринятому в индустрии systemd. Имейте в виду.
- Для уменьшения размера используется Busybox, поэтому команды
grep
/sed
/find
и т.д. имеют ограниченный набор опций по умолчанию. Устанавливайте их GNU-версии и стандартный Bash-шелл отдельно, чтобы получить полный набор.
Итак, после загрузки телефона с PostmarketOS нам необходимо каким-то образом с ним взаимодействовать. Если вы ставили оболочку Phosh или Plasma Mobile, скорее всего вы сможете это сделать напрямую с тачскрина телефона. Если по каким-то причинам графический интерфейс не сработал, подключайте телефон к компьютеру USB-кабелем, PostmarketOS автоматически создаст дополнительную сеть:
После чего к телефону можно будет подключиться с именем и паролем пользователя, который вы указывали при pmbootstrap install
:
$ ssh [email protected] [email protected] password: $ sudo cat /etc/os-release | head -3 PRETTY_NAME="postmarketOS edge" NAME="postmarketOS" VERSION_ID="edge"
Если вы видите эти строчки — значит PostmarketOS установлена верно. В противном случае попробуйте посмотреть секцию Troubleshooting для вашего устройства на вики PmOS, измените конфигурацию для pmbootstrap install
или спросите мейнтейнеров в IRC или Matrix чате (все три пункта ваш покорный слуга в итоге и сделал).
Настройка сети
Если не получилось настроить WiFi сеть через графическую оболочку, ниже пример как сделать это через консоль. Предварительно подключите телефон к USB-интерфейсу вашего ПК.
Выполните на ПК:
# разрешаем интерфейсам, подключённым по USB, ходить в интернет через нас $ sudo sysctl net.ipv4.ip_forward=1 $ sudo iptables -P FORWARD ACCEPT $ sudo iptables -A POSTROUTING -t nat -j MASQUERADE -s 172.16.42.0/24
Выполните на телефоне:
$ # делаем наш подключённый по USB ПК основным сетевым шлюзом для телефона $ sudo route add default gw 172.16.42.2 $ echo nameserver 1.1.1.1 | sudo tee /etc/resolv.conf $ # теперь у нас есть интернет на телефоне, правда пока только через USB-кабель
Далее, снова на телефоне:
$ # обычно если ip link show показывает беспроводной интерфейс, этого достаточно $ # если нет, убедитесь, что firmware-пакеты для вашего устройства установлены $ sudo apk add networkmanager $ sudo rc-update add networkmanager $ sudo /etc/init.d/networkmanager start $ nmtui $ # далее подключаемся к WiFi через интерфейс NM
Как это выглядит
Настройка Bluetooth
Если на вики указана поддержка bluetooth, пробуем так:
$ sudo apk add bluez $ sudo rc-update add bluetooth $ sudo /etc/init. d/bluetooth start $ # далее подключаемся к мыши/клавиатуре/наушникам (должно быть в режиме pairing) $ bluetoothctl Agent registered [CHG] Controller 00:00:00:00:5A:AD Pairable: yes [bluetooth]$ power on Changing power on succeeded [CHG] Controller 00:00:00:00:5A:AD Powered: yes [bluetooth]$ scan on Discovery started [CHG] Controller 00:00:00:00:5A:AD Discovering: yes [NEW] Device D6:3B:32:01:3D:DD TEST-DEVICE [bluetooth]$ pair D6:3B:32:01:3D:DD Attempting to pair with D6:3B:32:01:3D:DD [CHG] Device D6:3B:32:01:3D:DD Connected: yes
Если всё прошло как надо, на графическом интерфейсе увидите мышку и/или пропадёт экранная клавиатура.
Настройка диска
PostmarketOS как правило устанавливает себя в раздел system
, то место, где Андроид обычно хранит системные библиотеки, настройки и приложения. Размер этого раздела ограничен, и для каталогов /home
или /var/lib/docker
имеет смысл выбрать раздел побольше. На Андроиде это, как правило, userdata
:
$ ls -lh /dev/disk/by-partlabel/ | grep userdata lrwxrwxrwx 1 root root 16 May 5 1970 userdata -> . ./../mmcblk0p28 $ sudo mkfs.ext4 /dev/mmcblk0p28 $ sudo mkdir -p /var/lib/docker $ sudo mount /dev/mmcblk0p28 /var/lib/docker
Готово, теперь будущий докер не съест всё системное место за секунды.
Настройка Docker
Здесь должен был быть большой раздел про пересборку ядра и быстрый экскурс в pmbootstrap kconfig
Благодаря недавним изменениям в конфигурации ядра PostmarketOS, докер и другие системы контейнеризации должны работать из коробки на любом устройстве, достаточно установить (apk add docker
) и запустить (/etc/init.d/docker start
) сервис.
На PostmarketOS действует рудиментарный фаервол в виде правил nftables
, сперва разрешаем трафик с интерфейса WiFi. Создайте файл /etc/nftables.d/52_wlan_inet.nft
с таким содержимым:
table inet filter { chain input { iifname "wlan*" accept comment "Allow incoming network traffic from WLAN" } chain forward { iifname "wlan*" accept comment "Allow outgoing network traffic from WLAN through us" ct state {established, related} counter accept comment "accept established connections" } }
Затем выполняем:
$ # сперва перезагружаем фаервол $ /etc/init. d/nftables restart * Caching service dependencies ... [ ok ] * Stopping firewall ... [ ok ] * Loading nftables state and starting firewall ... [ ok ] $ # запускаем сервис, для примера возьмём персональное облако NextCloud $ docker run --rm -d -p 80:80 nextcloud
Далее на локальном компьютере открываем http://<ip-адрес-телефона>
и смотрим, что получилось:
Какие выводы я сделал, проведя такой опыт переноса своих сервисов на телефон? Самое главное — делайте это только убедившись, что точно хотите окунуться в неизвестное и сможете потратить на это 2-4 дня, а может и больше. Сильно поможет, если устройство хорошо поддерживается сообществом, ну и конечно если идеи свободного ПО и переиспользования вам близки 🙂
В моём случае оказалось, что таким устройством, как у меня, никто из разработчиков не обладает, и пришлось добавлять драйверы производителя, поддержку батареи и её зарядки в ядре и следить за обновлениями, чтобы изменения не потерялись. Тем не менее, после настройки телефон работает как полноценный сервер NextCloud, синхронизируя календарь, файлы и задачи, и потребляя при этом всего 2.5 Вт энергии.
Я выкладываю эту инструкцию в надежде, что она окажется полезной, но не предоставляю никаких гарантий работоспособности результата. Если вы столкнулись с проблемами, пишите в комментарии или в Matrix-каналы разработчиков PostmarketOS, будем разбираться.
Ресурсы, использованные для написания этой статьи
- Официальная инструкция установки PostmarketOS (en)
- Использование USB в качестве внешней сети на PostmarketOS (en)
- Инструкция Alpine по работе с OpenRC (en)
- Проверка параметров ядра на совместимость с Docker (en)
Веб-сервер на старом смартфоне Android / Хабр
Бывает такое, что смартфон становится ненужным — например, на нём разбивается экран или он просто старенький, тормозит даже браузер. Что делать с таким гаджетом, не выбрасывать же его? В самом деле, американцы летали на Луну с компьютерами, у которых характеристики много хуже, чем в вашем старом смартфоне. Скорее всего, в нём 4−8 процессорных ядер, 2−4 гигабайта оперативной памяти, блок бесперебойного питания с аккумулятором. Не слабее, чем некоторые компьютеры.
Попробуем найти этому смартфону полезное применение.
Рассматриваем варианты
Первый вариант, который приходит в голову — установить на телефон Linux-окружение и какой-нибудь полезный софт, который будет работать в «фоновом режиме» на пользу домашнему хозяйству. Что это может быть?
Ясно, что телефон не сможет работать как медиасервер и обрабатывать видеопотоки, для этого у него слишком слабый процессор.
Теоретически можно подключить к нему внешний HDD (тоже остался от сломанного ноутбука, для него куплен специальный корпус-переходник с интерфейсом USB). Даже на ёмкой карте microSD он вполне может работать как файловое хранилище или сервер для бэкапов, места хватит. Правда, карты microSD вряд ли можно посоветовать как надёжное хранилище, они часто выходят из строя.
Простая синхронизация
Если поднимать на телефоне сервер для бэкапов или файловый сервер, то самый простой вариант — это установить программу Syncthing.
Syncthing выполняет непрерывную синхронизацию файлов между двумя или более компьютерами в режиме реального времени. В таком варианте синхронизации отсутствует центральный сервер, а все компьютеры участвуют в синхронизации как бы peer-to-peer. Синхронизация идёт по дате изменения файла, ещё имеется поддержка синхронизации на уровне блоков, т.е. при небольших изменениях в файле, будут синхронизированы только изменившиеся блоки, а не весь файл сразу. Трафик шифруется по TLS (transport layer security). Опять же, программа с открытым исходным кодом, что говорит в пользу надёжности и безопасности такого решения.
В любом случае для персональных компьютеров и ноутбуков в доме нужно резервное хранилище, так что это вполне подходящий вариант.
Syncthing выпускается под все распространённые операционные системы: Linux, Windows, macOS, FreeBSD, OpenBSD, NetBSD, Dragonfly BSD, Illumos, Solaris. Ну и Android, конечно. То есть можно выполнять синхронизацию файлов между всеми этими устройствами, если поставить клиент на каждое из них. Затем в программе на компьютере добавляем ID устройства — и они синхронизируются.
Syncthing на компьютере
Затем остаётся выбрать папки для синхронизации на компьютере и телефоне.
Syncthing на телефоне
Потом программа может постоянно работать в фоновом режиме. Как вариант, можно установить конкретные условия, при которых она выполняется.
Сервер для резервного копирования под Linux
Можно поставить более серьёзную программу — UrBackup. Это опенсорсный сервер для резервного копирования. Он может работать по такому же принципу, что и Syncthing — постоянно в фоновом режиме отслеживать папки, которые требуется сохранять в резервной копии, но это более серьёзное решение, которое предпочтительно при управлении бэкапами в сети из десятка компьютеров. Система кроссплатформенная и поддерживает дистрибутивы Linux, Windows и Mac OS.
Веб-интерфейс UrBackup
Чтобы заработал UrBackup, нужно установить Linux-окружение. Тут у нас есть два варианта:
- Установить настоящий дистрибутив через Linux Deploy — опенсорсное приложение с открытым исходным кодом для простой и быстрой установки GNU/Linux на Android.
- Установить Linux-окружение Termux.
Первый вариант более сложный. Но теоретически он позволяет более эффективно использовать ресурсы системы.
Обязательное требование — рутованный смартфон (для рутования можно использовать инструмент, например, такой Magisk).
Итак, алгоритм примерно такой, судя по инструкции от Ханны Ли, которая и реализовала этот план.
- Подключаем HDD/SSD к телефону. Можно подключить его USB-кабелем напрямую: в этом случае мы получим максимально возможную скорость. Но на реальном файл-сервере или сервере бэкапов скорость не всегда является самым критичным фактором, разве что на очень больших объёмах чтения/записи. Важнее стабильность. С USB-кабелем гораздо выше риск столкнуться с ошибками ввода-вывода в процессе копирования.
Поэтому для повышения надёжности лучше использовать USB-хаб, в котором есть microUSB для выхода на телефон и стандартный USB для подключения HDD, плюс дополнительный разъём для питания.
В идеале нужно покупать хаб с адаптером Ethernet. Сервер может работать и по WiFi, но кабельное подключение надёжнее.
USB-хаб с разъёмом Ethernet и выходом microUSB
- Примонтировать HDD к телефону, то есть сделать его доступным для операционной системы на телефоне. Если не планировать форматирование диска в будущем, то его можно сразу добавить в
mounts
— и он будет монтироваться при каждой загрузке. После примонтирования его уже не получится форматировать, да это обычно и не нужно. Лучше монтировать его как логический диск, а не физическое устройство, потому что в последнем случае его имя (/dev/block/sdX
) может измениться после перезагрузки, а это нежелательно. Если примонтировать его как логический диск (/dev/sdX
), то имя не изменится.Найти подключённый HDD, то есть узнать его имя в системе, можно командой
lsblk
. - На рутованный телефон скачиваем файлы .apk Linux Deploy и BusyBox. После этого устанавливаем BusyBox, конфигурируем Linux Deploy: выбираем Linux-дистрибутив, архитектуру, путь установки (HDD), размер образа, файловую систему, устанавливаем логин и пароль, разрешение использовать SSH-сервер и т. д. Указываем месторасположение BusyBox, затем ставим Linux Deploy. После установки нажимаем кнопку
START
— и на телефоне Android загружается нормальный Linux. Например, Debian. - Поскольку мы при установке разрешили использовать SSH-сервер, то к нему можно подключиться по стандартному порту 22 с учётными данными, которые указали при установке Linux Deploy. IP-адрес можно посмотреть в программе.
- Скачиваем и устанавливаем UrBackup:
wget https://hndl. urbackup.org/Server/2.4.13/urbackup-server_2.4.13_arm64.deb
apt install -f ./urbackup-server_2.4.13_arm64.deb
- Создаём рабочую директорию, устанавливаем стартовый скрипт, запускаем сервис и создаём крон для него. После этого сервер будет доступен через веб-интерфейс по адресу
http://YOUR_SERVER_IP:55414
. - Подключаем пользователей(это можно сделать через веб-интерфейс) Windows, Linux и т. д. У пользователей на машинах необходимо поставить соответствующее программное обеспечение, там будут инструкции, как соединиться с сервером и добавить конкретную машину на сервер.
Termux
Возможно, всё это можно сделать без рутования, с использованием Linux-окружения Termux. Проверим, так ли это.
Termux — это бесплатный эмулятор консоли и Linux-окружение под Android, которое устанавливается как обычное приложение и не требует рутового доступа, включает в себя множество пакетов операционной системы Linux. В базовом формате там установлен минимум, дополнительные пакеты можно организовать при помощи диспетчера пакетов «pkg» (аналоге apt). Это самый удобный способ запустить на Android практически любые линуксовые программы. Лучше устанавливать его с F-Droid, а не из Google Play.
Изначально Termux устанавливается в виде «голого» эмулятора. При первом запуске загружается небольшая базовая система, а все нужные пакеты можно установить с помощью менеджера пакетов apt
, стандартного для Debian и Ubuntu. Но его тоже нужно будет установить с помощью встроенного пакетного менеджера pkg
.
В нашем случае можно сразу установить apt:
pkg install apt
Затем с его помощью установить wget, ну или использовать родную команду pkg
:
pkg install wget
Потом можно установить тот же UrBackup, другой файл-сервер или сервер резервного копирования на свой выбор.
К примеру, можем поставить веб-сервер nginx:
pkg install nginx
После этого запускаем веб-сервер:
nginx
Если открыть браузер на смартфоне и набрать localhost:8080
, то мы увидим работающий веб-сервер:
Теперь можно скопировать в рабочую директорию nginx файлы HTML — и на телефоне будет полноценный сайт, который можно открыть для общего доступа через интернет. Тогда у нас будет собственный сервер и собственный хостинг, мы не платим никакому провайдеру, кроме сотового оператора, и можем публиковать в интернете что угодно. В принципе, сайт будет всем доступен до тех пор, пока телефон подключён к сотовой сети, на нём открыта сессия Termux, а в ней запущен nginx. Главное, чтобы сотовый оператор не блокировал этот трафик, потому что мы формально можем нарушать его условия обслуживания.
Конечно, для надёжного хостинга лучше рутануть смартфон и установить нормальный дистрибутив через Linux Deploy. Но и в Termux всё работает, как видим.
Вывод: Таким образом, даже из старого смартфона Android можно сделать адекватный, полнофункциональный многоядерный Linux-сервер на ARM-архитектуре. Если подключить внешний HDD/SDD, то он будет работать как хранилище файлов, сервер резервного копирования для домашней сети или веб-сервер, для ваших личных нужд.
НЛО прилетело и оставило здесь промокоды для читателей нашего блога:
— 15% на все тарифы VDS (кроме тарифа Прогрев) — HABRFIRSTVDS.
— 20% на выделенные серверы AMD Ryzen и Intel Core — HABRFIRSTDEDIC.
Доступно до 31 декабря 2021 г.
лучших веб-серверов для Android
View:
Open Source
Коммерческий
- 1
Tiny Web Server
Leonardo Javier Russo
Tiny Web Server для Android 4.0 и выше. Работает как служба, имеет разные кодировки и легко настраивается. Функция автозапуска (сервер будет запускаться автоматически при каждой загрузке). Минималистичный интерфейс, список папок и файлов, низкое потребление памяти.
- 2
КСВЭБ
KSLabs
Достаточно установить KSWEB на Android-устройство и скопировать скрипты в папку htdocs на карте памяти. После этого вы можете запускать свой веб-контент! Итак, KSWEB — это набор для веб-разработчиков для платформы Android. Пакет состоит из веб-сервера, FTP-сервера, языка программирования PHP, СУБД MySQL и планировщика. KSWEB не нужны root-права для корректного функционирования, если, конечно, вы не хотите использовать сервер на 80 порту. Кстати, это может быть удобно при открытии вашего сервера в интернете. Это позволит вам иметь небольшой хостинг в кармане! Для запуска веб-сервера необходимо запустить KSWEB, указать при необходимости порт и корневую директорию. По умолчанию KSWEB содержит полностью настроенные файлы конфигурации для всех компонентов. Наш пакет легко запускает популярные CMS и фреймворки, такие как Yii2, Drupal, Joomla, WordPress, MODX и т.д. Если у вас есть вопросы по запуску той или иной CMS, мы ответим на них!
- 3
KWS
Kamran Zafar
KWS — это легкий и быстрый веб-сервер, специально разработанный для мобильных устройств Android. Его можно использовать для размещения веб-сайтов и передачи файлов по протоколу HTTP. KWS реализует HTTP-1.0. Базовая и дайджест-аутентификация для безопасного доступа. Серверная сторона включает (SSI). Индекс каталога, загрузка каталогов в форматах tar, tgz и zip. Возобновляемая загрузка файлов, встроенные обновления динамического DNS, до 20 параллельных подключений, исчерпывающие журналы HTTP. Поддержка HTTPS/TLS с хранилищами ключей BKS и PKCS12. Шифрование файлов на основе пароля (128-битный AES и Triple DES). Сжатие файлов GZip, индекс каталогов в форматах JSON и XML и сортировка индексов, широкие возможности настройки с поддержкой до 999 параллельных соединений на порт. Конфигурация на уровне каталога, поддержка дополнительных поставщиков динамических DNS, таких как ZoneEdit и т. д. KWS также обеспечивает автоматический запуск при загрузке.
- 4
AWebServer
Sylkat
AWebServer позволит вам легко обмениваться файлами с телефона на любом устройстве или компьютере. Вы можете исследовать файлы с помощью любого SO или браузера через беспроводную сеть. AWebServer — это простое и удобное решение для публикации вашего собственного веб-сайта на вашем Android-устройстве с PHP и всеми функциями, которые предоставляет Apache. Также включен старый сервер MySQL MariaDb, а также установлено и готово к работе приложение MyPhpAdmin. Имеет встроенный FTP-сервер для загрузки содержимого и совместим с Android 4 и выше. Это приложение основано на известном и стабильном сервере Apache 2, известном своей стабильностью на устройствах Android. Улучшен внешний вид файлов индексов Apache. Обновлены серверы для 64-битной арки и phpMyAdmin. Распределенный пакет приложений для уменьшения размера приложения.
- 5
Servers Ultimate
Ice Cold Apps
Теперь вы можете запустить практически любой сервер, какой только сможете себе представить. Например, веб-сервер, сервер базы данных или сервер хранения! Легко запустите сервер на вкладке «Простой» или перейдите в расширенный режим и добавьте пользователей, разрешенные IP-адреса и многое другое! Несколько серверов могут работать одновременно, и root не требуется. Это приложение будет работать в течение 7 дней, после чего вам нужно будет купить платную версию. В этой версии вы можете добавить только два сервера. К сожалению, мы должны сделать это, чтобы поддержать развитие. Предоставляет 18 сетевых инструментов! Поддержка удаленного управления, включая PHP-сервер, NAS-сервер, выделенный сервер и/или приманку! Шифрование настроек и поддержка паролей! Поддержка Tasker/Llama! Запускайте и останавливайте серверы, используя правила WIFI/SMS/вызова/питания или cronjob! Или используйте «Триггерный сервер» для большего! Установите порт, сетевой интерфейс для прослушивания, отставание, ведение журнала (в файл) и т. д. Если у вас есть root-права, установите порт ниже 1024. Обеспечивает поддержку виджетов и многое другое!
- 6
Сервер PAW
Сервер PAW
Подключите компьютер через Wi-Fi или USB (поддерживается ADB). Для большей безопасности доступен HTTPS. PAW обеспечивает интеграцию Tasker/Locale, чтобы упростить автоматический запуск и завершение работы. PAW — это настоящий веб-сервер, позволяющий размещать собственные страницы на вашем устройстве Android. Просто поместите свой контент в каталог /sdcard/paw/HTML, и все! Вы можете не только развернуть свою собственную веб-страницу, но и разработать собственные динамические веб-приложения. Можно использовать Android API, это также включает подключение к базе данных SQLite. С помощью PAW вы можете устанавливать плагины от PHP до PirateBox или разрабатывать плагины самостоятельно. Исследуйте Android с помощью PAW, используя Android API и изменяя существующий код. Большая часть веб-приложения PAW доступна в виде простого текста, который вы можете редактировать и улучшать. Документация и примеры доступны в веб-приложении. Вы можете бесплатно создать свой собственный сервер на основе PAW для личных и образовательных целей.
org/ListItem»>
7
KickWeb Server
YelOyo
Простая и автоматическая установка, все предварительно настроено, низкое потребление памяти, низкая загрузка ЦП, возможность одновременного обслуживания запросов, не требуется root-доступ, хотя вы также можете использовать root, и полностью бесплатно зарядка без рекламы. Это лучший веб-сервер Android. Внутренняя память не должна быть меньше 50Мб! Lighttpd 1.4.34, PHP 5.5.9, MySQL 5.1.62, MSMTP 1.4.31, phpMyAdmin 4.1.10 и Nginx 1.5.11. Одна вещь, которую вы должны помнить, это запуск сервера перед вводом конфигураций.
О нет! Не удалось загрузить некоторые стили. 😵
Попробуйте перезагрузить эту страницу
Превратите телефон или планшет Android в сервер: пошаговое руководство
Как сделать
Автор: Jagdish Purohit
Ценность электронных устройств уменьшается с течением времени. Неоспоримый факт, что даже смартфоны и планшеты постигла та же участь. Стоимость Android-смартфона за 800 долларов наверняка уменьшится вдвое всего за год.
Из-за этого мы склонны искать более новые и лучшие устройства. Если у вас валяется старый Android-смартфон, собирая пыль, мы рекомендуем использовать его.
В этом посте мы покажем вам, как вы можете превратить свой старый телефон Android в сервер с помощью приложения под названием «Servers Ultimate».
Обязательно Прочтите : Что делать со старым телефоном Android
Что такое сервер?
Если вы мало что знаете о компьютерах и серверах, то, вероятно, думаете, что серверы — это огромные компьютеры, используемые для выполнения сложных задач в офисе. На самом деле сервер — это любое устройство, которое может использоваться другими устройствами для запроса различных типов информации.
Типы телефонных серверов Android
Servers Ultimate — одно из самых популярных серверных приложений, доступных в магазине Google Play, которое позволяет использовать около 60 различных типов серверов, включая FTP, прокси, веб, CVS, HTTP snoop, электронную почту, TFTP. , VNC, RTMP, DNS и торрент-трекер.
Как использовать телефон/планшет Android в качестве сервера?
В магазине Google Play доступно более 10 различных типов серверных приложений. Однако мы предпочитаем использовать приложение Servers Ultimate.
Приложение Servers Ultimate — отличный инструмент для превращения любого телефона или планшета Android в сервер.
Приложение очень простое в использовании и не требует рутирования. Для начала просто выполните следующие шаги, чтобы успешно превратить ваше старое устройство Android в сервер.
Примечание : приложение можно использовать бесплатно в течение определенного периода времени. После этого вам нужно будет приобрести приложение.
Шаг 1. Загрузите и установите приложение
Загрузите и установите приложение Servers Ultimate на свое старое устройство Android. Вы можете получить приложение с помощью кнопки Google Play ниже.
Шаг 2: Запустите приложение и настройте сервер
Следующий шаг — запустить приложение и настроить сервер, добавив настроенный.
Нажмите значок «Плюс» вверху, чтобы добавить новый сервер, и выберите нужный тип сервера из списка.
Теперь вы увидите различные варианты. Измените все параметры в соответствии со своими предпочтениями, например имя и порт. Нажмите на значок «Сохранить», когда закончите настройку сервера.
Шаг 3: Запустите и подключите сервер
Чтобы запустить все серверы, нажмите кнопку «Воспроизвести» вверху. Чтобы запустить отдельный сервер, нажмите на имя сервера и выберите «Пуск».
Последний шаг — нажать на имя сервера и выбрать «Информация». Теперь вы увидите всю информацию, такую как сведения о подключении. Теперь вы можете подключать другие устройства к серверу, используя данные подключения. Вот и все!
Превратите старый телефон/планшет Android в сервер
Смартфоны и планшеты Android можно использовать для разных полезных вещей. Вы можете использовать их для создания таких вещей, как детские мониторы и камеры безопасности. Если вы только что приобрели новое устройство Android или хотите его приобрести, мы рекомендуем сохранить старое, так как с его помощью можно так много сделать.
Убедитесь, что вы правильно следуете всем инструкциям, чтобы он работал. Если у вас есть какие-либо вопросы, не стесняйтесь задавать их в области комментариев ниже.
Вы также можете ознакомиться с нашими руководствами по использованию старого устройства Android в качестве радионяни, MP3-плеера и устройства только с WiFi.
Избранное изображение
Jagdish Purohit
Jagdish — специалист по устранению неполадок Android, который любит говорить о технологиях и обсуждать влияние технологий на человечество. Он страстно любит писать и любит технологии, а также рвение к решению проблем Android. Когда Джаг не пишет и не обсуждает технологии и маркетинг, он будет разбивать мячи для крикета или бросать мяч в кольцо на баскетбольной площадке.