Горячее
Лучшее
Свежее
Подписки
Сообщества
Блоги
Эксперты
Войти
Забыли пароль?
или продолжите с
Создать аккаунт
Я хочу получать рассылки с лучшими постами за неделю
или
Восстановление пароля
Восстановление пароля
Получить код в Telegram
Войти с Яндекс ID Войти через VK ID
Создавая аккаунт, я соглашаюсь с правилами Пикабу и даю согласие на обработку персональных данных.
ПромокодыРаботаКурсыРекламаИгрыПополнение Steam

Пикабу Игры +1000 бесплатных онлайн игр

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

Пикман

Аркады, На ловкость, 2D

Играть
Скайдом - пожалуй, самая красочная и интересная головоломка с действительно уникальными режимами игры!

Скайдом

Три в ряд, Головоломки, Казуальные

Играть
«Дурак подкидной и переводной» — классика карточных игр! Яркий геймплей, простые правила. Развивайте стратегию, бросайте вызов соперникам и станьте королем карт! Играйте прямо сейчас!

Дурак подкидной и переводной

Карточные, Настольные, Логическая

Играть
Поднимайтесь как можно выше по дереву, собирайте цветы и дарите их близким.
Вас ждут уникальные награды и 22 выгодных промокода!

Пикаджамп

Аркады, Казуальные, На ловкость

Играть
Веселая аркада с Печенькой для новогоднего настроения. Объезжайте препятствия, а подарки, варежки, конфеты и прочие приятности не объезжайте: они помогут набрать очки и установить новый рекорд.

Сноуборд

Спорт, Аркады, На ловкость

Играть

Топ прошлой недели

  • Oskanov Oskanov 8 постов
  • alekseyJHL alekseyJHL 6 постов
  • XpyMy XpyMy 1 пост
Посмотреть весь топ

Лучшие посты недели

Рассылка Пикабу: отправляем самые рейтинговые материалы за 7 дней 🔥

Нажимая кнопку «Подписаться на рассылку», я соглашаюсь с Правилами Пикабу и даю согласие на обработку персональных данных.

Спасибо, что подписались!
Пожалуйста, проверьте почту 😊

Новости Пикабу Помощь Кодекс Пикабу Реклама О компании
Команда Пикабу Награды Контакты О проекте Зал славы
Промокоды Скидки Работа Курсы Блоги
Купоны Biggeek Купоны AliExpress Купоны М.Видео Купоны YandexTravel Купоны Lamoda
Мобильное приложение

Storagevps

1 пост сначала свежее
252
megavolt0
megavolt0
7 лет назад

Облачный терабайт за шапку сухарей. Nextcloud на StorageVPS⁠⁠

Для @arklem и всех интересующихся.

Стоимость хранения информации в облаках непрерывно снижается, но до сих пор иметь под рукой большие облачные ёмкости было не дёшево. Но вот, один за другим, хостеры стали обновлять линейки тарифов на так называемые StorageVPS. Это виртуальные машины с небольшой производительностью, но большой ёмкостью диска. Сегодня арендовать виртуалку с отказоустойчивым терабайтом стоит всего около 5 евро! Сделаем это и заодно потрогаем достойного наследника OwnCloud — идеологически бесплатный Nextcloud. Статья будет традиционно предельно подробной и пошаговой. По факту, все установки и настройки можно сделать за 10-15 минут.


В статье будет использоваться предложение одного из хостеров — одноядерная виртуалка с одним гигабайтом оперативки, 100-мегабитной сеткой (месячный объем исходящего трафика 10 TB) и терабайтным диском на борту. И всё это за 5 евро в месяц. Название хостера не привожу ибо не реклама. Больше инфы в оригинале статьи на моём сайте. Там же красивые конфиги в правильной кодировке (на пикабу сбивается форматирование и, иногда, возникают проблему с кодировкой при копировании)

Еще понадобиться доменное имя. Можно и без него, но это не очень удобно, да и сертификаты https правильные не сделать. Как получить халявный домен и настроить DNS-зону я уже писал в этой статье. Здесь я буду использовать доменное имя nc.mydomen.ml

Используя панель управления хостинга установите на свою виртуальную машину Debian 8 x64. Для настройки нам понадобиться стандартный набор инструментов. Как подключиться по SSH, установить и настроить PUTTY и WinSCP, настроить вход по сертификатам - написано в этой статье. Вам только понадобятся логин и пароль от SSH. Их предоставит хостер или в письме на электронную почту или в панели управления.

Облачный терабайт за шапку сухарей. Nextcloud на StorageVPS Storagevps, VPS, Nextcloud, Настройка, Apache, Debian, Cloud, Облачное хранилище, Длиннопост

Для начала настроим репозитории следующим набором команд:

echo 'deb http://packages.dotdeb.org jessie all' >> /etc/apt/sources.list
echo 'deb-src http://packages.dotdeb.org jessie all' >> /etc/apt/sources.list
echo 'deb http://ftp.debian.org/debian jessie-backports main' >> /etc/apt/sources.list
echo 'deb http://ftp.utexas.edu/dotdeb/ jessie all' >> /etc/apt/sources.list
wget https://www.dotdeb.org/dotdeb.gpg
apt-key add dotdeb.gpg

Обновим наш сервер командами:

apt -y update
apt -y upgrade

И начнём установливать необходимые пакеты:

apt-get -y install apache2 mariadb-server libapache2-mod-php7.0 php7.0-redis

Тут нас попросят придумать пароль для рутовой учётки MariaDB.

Облачный терабайт за шапку сухарей. Nextcloud на StorageVPS Storagevps, VPS, Nextcloud, Настройка, Apache, Debian, Cloud, Облачное хранилище, Длиннопост

Вводим пароль (символы не отображаются), жмём Enter и повторно вводим тот-же пароль и жмём Enter.


Доустановим ещё пакетов командами:

apt-get -y install php7.0-gd php7.0-json php7.0-mysql php7.0-curl php7.0-mbstring
apt-get -y install php7.0-intl php7.0-mcrypt php7.0-xml php7.0-zip
apt-get -y install libmagickwand-dev imagemagick php-dev redis-server
apt-get -y install python-certbot-apache -t jessie-backports

Запустим и добавим в автозагрузку наши Web-сервер и СУБД:

systemctl start apache2
systemctl enable apache2
systemctl start mysql
systemctl enable mysql

Можно убедиться, что наш Web-сервер работает, перейдя по адресу http://<ip-адрес вашего сервера>. Получим такую картинку:

Облачный терабайт за шапку сухарей. Nextcloud на StorageVPS Storagevps, VPS, Nextcloud, Настройка, Apache, Debian, Cloud, Облачное хранилище, Длиннопост

Выполним первичную настройку безопасности СУБД:

mysql_secure_installation

Вводим тот пароль для MariaDB, который мы придумали ранее. Нам зададут ряд вопросов, отвечаем так:

Облачный терабайт за шапку сухарей. Nextcloud на StorageVPS Storagevps, VPS, Nextcloud, Настройка, Apache, Debian, Cloud, Облачное хранилище, Длиннопост

Теперь зайдём в консоль MariaDB командой:

mysql -u root -p

Вводим пароль от MariaDB и попадаем в консоль.

Облачный терабайт за шапку сухарей. Nextcloud на StorageVPS Storagevps, VPS, Nextcloud, Настройка, Apache, Debian, Cloud, Облачное хранилище, Длиннопост

Создадим базу данных (точка с запятой в конце команд обязательны):

CREATE DATABASE nextclouddb;

Создадим учётную запись, с которой на Nextcloud будет обращаться к базе данных. Вместо password придумываем и вставляем в команду новый пароль:

CREATE USER 'nextcloud'@'localhost' IDENTIFIED BY 'password';

Дадим этой учётной записи права на базу данных

GRANT ALL PRIVILEGES ON nextclouddb.* TO 'nextcloud'@'localhost';

Обновим таблицу привилегий, чтобы изменения применились:

FLUSH PRIVILEGES;

И выходим из консоли:

\q

Теперь пора установить сам Nextcloud. Посмотреть список доступных версий можно на этой странице. Выбираем самую свежую. На дату написания статьи это nextcloud-12.0.2


Скачиваем:

cd /tmp
wget https://download.nextcloud.com/server/releases/nextcloud-12....

Распаковываем:

unzip nextcloud-12.0.2.zip

И переносим к месту постоянного обитания:

mv nextcloud /usr/share/

Обязательно нужно дать права web-серверу на папку:

chown -R www-data:www-data /usr/share/nextcloud

Теперь любым удобным способом (например с помощью WinSCP) создадим в папке /etc/apache2/sites-available/ файл с именем nextcloud.conf со следующим содержимым:

ServerName nc.mydomen.ml
<VirtualHost *:80>
ServerAdmin admin@mydomen.ml
ServerName nc.mydomen.ml
DocumentRoot /usr/share/nextcloud
</VirtualHost>
<Directory "/usr/share/nextcloud/">
Options MultiViews FollowSymlinks
AllowOverride All
Order allow,deny
Allow from all
</Directory>
TransferLog /var/log/apache2/nextcloud_access.log
ErrorLog /var/log/apache2/nextcloud_error.log

По тексту конфига исправляем под себя адрес электронной почты и домен (ServerAdmin, ServerName)


Сохраняем файл и применяем настройки командами:

a2dissite 000-default
a2ensite nextcloud
service apache2 reload
service apache2 restart

Теперь можно перейти по адресу http://nc.mydomen.ml (вы используете своё имя домена) и донастроить наш Nextcloud:

Облачный терабайт за шапку сухарей. Nextcloud на StorageVPS Storagevps, VPS, Nextcloud, Настройка, Apache, Debian, Cloud, Облачное хранилище, Длиннопост

Придумываем и вводим логин и пароль администратора, вписываем настройки базы данных, которые мы сделали ранее и нажимаем "Завершить установку".


В общем-то наш сервер уже работает. Осталось настроить безопасность и затюнинговать.


Переведём наш сервер на https. Для этого сначала получим сертификаты командой:

certbot --apache certonly

На запросы вводим адрес электронной почты (укажите реальный, на него будут приходить уведомления о действиях с сертификатом), принимаем условия использования сервисом Let's Encrypt (вводим A) и вводим имя домена (или выбираем из предложенного списка), для которого получаем сертификат (в моём случае это nc.mydomen.ml):

Облачный терабайт за шапку сухарей. Nextcloud на StorageVPS Storagevps, VPS, Nextcloud, Настройка, Apache, Debian, Cloud, Облачное хранилище, Длиннопост

Отлично, сертификаты получены и лежат в папке  /etc/letsencrypt/live/nc.mydomen.ml/


Срок действия сертификатов - 90 дней. Об истечении срока придёт письмо на указанную выше почту. Для обновления сертификатов используем команду:

certbot renew

Этот процесс можно автоматизировать с помощью Cron. Пример приведён в статье про ownCloud.


Донастроим Apache. Включим ssl модуль командой:

a2enmod ssl

Включим дефолтный конфиг для ssl:

a2ensite default-ssl.conf

Поскольку нам нужно будет перенправлять клиентов с 80 порта (http) на 443 (hhtps), то включим модуль перенаправлений:

a2enmod rewrite

Теперь любым удобным способом (например с помощью WinSCP) создадим в папке /etc/apache2/sites-available/ файл с именем nextcloud-ssl.conf со следующим содержимым:

<IfModule mod_ssl.c>
<VirtualHost nc.mydomen.ml:443>
ServerAdmin admin@mydomen.ml
DocumentRoot /usr/share/nextcloud
TransferLog /var/log/apache2/nextcloud_access.log
ErrorLog /var/log/apache2/nextcloud_error.log
SSLEngine on
SSLCertificateFile /etc/letsencrypt/live/nc.mydomen.ml/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/nc.mydomen.ml/privkey.pem
<FilesMatch "\.(cgi|shtml|phtml|php)$">
SSLOptions +StdEnvVars
</FilesMatch>
<Directory /usr/lib/cgi-bin>
SSLOptions +StdEnvVars
</Directory>
BrowserMatch "MSIE [2-6]" \
nokeepalive ssl-unclean-shutdown \
downgrade-1.0 force-response-1.0
BrowserMatch "MSIE [17-9]" ssl-unclean-shutdown
</VirtualHost>
</IfModule>

Сохраняем файл и применяем настройки командами:

a2ensite nextcloud-ssl
service apache2 reload
service apache2 restart

Теперь можно перейти по адресу https://nc.mydomen.ml (вы используете своё имя домена) и убедится, что всё работает

Облачный терабайт за шапку сухарей. Nextcloud на StorageVPS Storagevps, VPS, Nextcloud, Настройка, Apache, Debian, Cloud, Облачное хранилище, Длиннопост

Настроим жёсткое перенаправление с http на https. Тогда работа с нашим сайтом будет возможна только по https.


Откройте файл  /etc/apache2/sites-available/nextcloud.conf и добавим две строчки с директивой Rewrite:

ServerName nc.mydomen.ml
<VirtualHost *:80>
ServerAdmin admin@mydomen.ml
ServerName nc.mydomen.ml
DocumentRoot /usr/share/nextcloud
RewriteEngine On
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}

</VirtualHost>
<Directory "/usr/share/nextcloud/">
Options MultiViews FollowSymlinks
AllowOverride All
Order allow,deny
Allow from all
</Directory>
TransferLog /var/log/apache2/nextcloud_access.log
ErrorLog /var/log/apache2/nextcloud_error.log

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

service apache2 reload
service apache2 restart

Попробуйте войти на сайт по http и убедитесь, что вас перенаправляет на https.


Канал защитили. Теперь оптимизируем производительность сервера за счёт кэширования.


С помощью WinSCP или иным способом откроем файл /etc/sysctl.conf и добавим в конце строчку:

vm.overcommit_memory = 1

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

reboot

Запустим и добавим в автозагрузку кэш-сервер Redis:

systemctl start redis-server
systemctl enable redis-server

Проверить, что Redis работает и слушает порт 6379 можно командой:

ps ax | grep redis
Облачный терабайт за шапку сухарей. Nextcloud на StorageVPS Storagevps, VPS, Nextcloud, Настройка, Apache, Debian, Cloud, Облачное хранилище, Длиннопост

В WinSCP или иным способом откроем файл /usr/share/nginx/html/config/config.php. Смотрим на последнюю строчку, она выглядит так:

);

Перед ней добавим строчки

'memcache.local' => '\OC\Memcache\Redis',
'redis' => array(
'host' => 'localhost',
'port' => 6379,
),

Сохраним и закроем файл. Зайдите в свой Nextcloud, страницы должны корректно отображаться.

Сделаем еще одну настройку безопасности.

Включим модуль headers:

a2enmod headers

В файл /etc/apache2/sites-available/nextcloud-ssl.conf добавим между тегами <VirtualHost и </VirtualHost> в любое место строчку

Header always set Strict-Transport-Security "max-age=15552000; includeSubDomains"

Сохраним и закроем файл.


Применим настройки:

service apache2 reload
service apache2 restart

Заходим в Nextcloud и проверяем, что всё работает.


Всё! Можно пользоваться.


Ряд рекомендаций:

1. Не используйте созданную выше учётную запись администратора для постоянной работы. Зайдите в настройки пользователей, создайте группу(ы) для обычных пользователей, создайте пользователей с ограниченными правами, установите квоты.

Облачный терабайт за шапку сухарей. Nextcloud на StorageVPS Storagevps, VPS, Nextcloud, Настройка, Apache, Debian, Cloud, Облачное хранилище, Длиннопост

2. Зайдите в приложения (см. скриншот выше) и добавьте функциональности вашему облачному хранилищу. Особенно обратите внимание на возможность зашифровать ваши данные и включить двухфакторную авторизацию. Про включение шифрования можно почитать в конце статьи про ownCloud.


3. Включите использование системного Cron для фоновых заданий.

Облачный терабайт за шапку сухарей. Nextcloud на StorageVPS Storagevps, VPS, Nextcloud, Настройка, Apache, Debian, Cloud, Облачное хранилище, Длиннопост

Этом всё. Вопросы можно задавать здесь, а лучше в Telegram @SecFAll_adm.

Показать полностью 11
[моё] Storagevps VPS Nextcloud Настройка Apache Debian Cloud Облачное хранилище Длиннопост
108
Посты не найдены
О Нас
О Пикабу
Контакты
Реклама
Сообщить об ошибке
Сообщить о нарушении законодательства
Отзывы и предложения
Новости Пикабу
RSS
Информация
Помощь
Кодекс Пикабу
Награды
Команда Пикабу
Бан-лист
Конфиденциальность
Правила соцсети
О рекомендациях
Наши проекты
Блоги
Работа
Промокоды
Игры
Скидки
Курсы
Зал славы
Mobile
Мобильное приложение
Партнёры
Промокоды Biggeek
Промокоды Маркет Деливери
Промокоды Яндекс Путешествия
Промокоды М.Видео
Промокоды в Ленте Онлайн
Промокоды Тефаль
Промокоды Сбермаркет
Промокоды Спортмастер
Постила
Футбол сегодня
На информационном ресурсе Pikabu.ru применяются рекомендательные технологии