Веб- и FTP-сервер на Raspberry Pi
Установка сервера на Raspberry Pi - вопрос времени. Да, мне тоже поначалу это казалось неразумным, но позднее я понял, какие большие возможности это даёт. По сути, это веб-интерфейс, доступный откуда угодно через браузер, с помощью которого можно получать изображение с камеры или рулить сервами. Короче говоря, я до сервера дозрел очень быстро.
Веб-сервер
Идеальным веб-сервером для Raspberry Pi является lighttpd в силу его легковесности и высокой производительности. Кому интересно, можно почитать немного тут, а мы же перейдём непосредственно к установке. Кстати, если у вас используются настройки доступа по умолчанию (пользователь "pi" и пароль "raspberry"), то настоятельно рекомендуется их сменить. Теперь можно устанавливать lighttpd и PHP5:
sudo apt-get install lighttpd -y
sudo apt-get install php5-common php5-cgi php5 -y
Так же необходимо включить протокол Fastcgi и перезапустить сервер, чтобы изменения вступили в силу:
sudo lighty-enable-mod fastcgi-php
sudo /etc/init.d/lighttpd restart
sudo service lighttpd force-reload
Установка закончена и если набрать в строке браузера IP-адрес своего Raspberry Pi (как его узнать написано тут), откроется страница-заглушка lighttpd.
Для повышения комфорта, можно изменить права доступа к папкам сервера, чтобы не только root мог там что-то менять, но простой "рабочий класс" в лице юзера pi:
sudo chown www-data:www-data /var/www
sudo chmod 775 /var/www
sudo chown -R pi /var/www
sudo usermod -a -G www-data pi
Для вступления изменений в силу нужно перезагрузить устройство. Корневая папка сервера - /var/www , порт сервера - 80. Если есть необходимость изменить порт, сделать это можно отредактировав конфигурационный файл сервера (после изменения опять же необходима перезагрузка):
sudo nano /etc/lighttpd/lighttpd.conf
И последний нюанс. Если Raspberry Pi подключен к локальной сети, возможно, что для доступа "извне" придётся сделать перенаправление портов (Port Forwarding) в рутере. В этом случае надо установить перенаправление для внешних клиентов с порта 80 (Public Port) на IP-адрес Raspberry Pi и опять же на порт 80 (Private port).
FTP-сервер
Веб-сервер установлен, но надо же ещё туда как-то файлы закачивать. Наиболее простой способ - настроить FTP-сервер. Установим vsftpd и сразу же откроем файл конфигурации для редактирования
sudo apt-get install vsftpd -y
sudo nano /etc/vsftpd.conf
В файле необходимо сделать следующее:
- изменить anonymous_enable=YES на anonymous_enable=NO
- разкомментировать (убрать символ # в начале) строки local_enable=YES и write_enable=YES
- добавить в конце файла строку force_dot_files=YES
После сохранения изменений надо перезапустить сервер:
sudo service vsftpd restart
Для повышения комфорта, можно добавить быструю ссылку на корневую папку сервера:
ln -s /var/www/ ~/www
Опять же, если нужно перенаправление портов, оно делается так же, как и для веб-сервера, но с портами 20 и 21.
Знатно накомментили: