Инструкция по установке Nextcloud на OrangePi
Black_Triangle 996ad7de78 Update 'README.md' | 3 years ago | |
---|---|---|
README.md | 3 years ago | |
promo.jpg | 4 years ago |
Orange Pi PC - покупал тут http://ali.pub/4ydnlp
Карточка MicroSD - покупал тут http://ali.pub/4ydogt
Внешний жесткий диск с USB - взял у соседа
Кабель Ethernet - гдето валялся
Качай armbian от сюда https://www.armbian.com/ под свою модель платы и запихивай в microSD
Обновляем ОС
apt update
apt upgrade
Перезагружаемся
reboot
Прыгаем в каталог wireguard
cd /etc/wireguard
Создаем клиентский конфиг
nano wg0-client.conf
С содержанием
[Interface]
PrivateKey = oJ2zключГГГГГГГГГГГГГГГГГГГГГГГГГHY=
Address = 10.8.0.4
DNS = 10.8.0.1
[Peer]
PublicKey = CLключГГГГГГГГГГГГГГГГГГГГГГГГXg=
AllowedIPs = 0.0.0.0/0, ::/0
Endpoint = айпи_сервера:порт_сервера
PersistentKeepalive = 25
ВлююЮЮююЧай!
wg-quick up wg0-client
Теперь айпишник нашей платы будет 10.8.0.4
Бахаем индейца
sudo apt install apache2
Чтобы установить PHP и нужные нам пакеты
sudo apt install php7.3 php7.3-gd php7.3-sqlite3 php7.3-curl php7.3-zip php7.3-xml php7.3-mbstring php7.3-mysql php7.3-bz2 php7.3-intl php7.3-smbclient php7.3-imap php7.3-gmp
Перезагрузим индейца
sudo service apache2 restart
Установка Марии
sudo apt install mariadb-server
Одеваем Марию
sudo mysql_secure_installation
Всегда говори да!
Создаем базу
sudo mysql -u root -p
Назавем ее nextclouddb
CREATE DATABASE nextclouddb;
И создадим юзера nextclouduser [PASSWORD] меняй на свой
CREATE USER 'nextclouduser'@'localhost' IDENTIFIED BY '[PASSWORD]';
Даем пользователю трогать Марию
GRANT ALL PRIVILEGES ON nextclouddb.* TO 'nextclouduser'@'localhost';
Очищаем таблицу привелегий
FLUSH PRIVILEGES;
Прыгаем каталог html
cd /var/www/
Бахаем Nextcloud
sudo wget https://download.nextcloud.com/server/releases/latest.tar.bz2
Открываем посылку
sudo tar -xvf latest.tar.bz2
Теперь нам нужно создать каталог данных для работы с Nextcloud
sudo mkdir -p /var/www/nextcloud/data
Передаем управление
sudo chown -R www-data:www-data /var/www/nextcloud/
Даем разрешения
sudo chmod 750 /var/www/nextcloud/data
Создадим файл, в котором будут храниться наши изменения конфигурации для Nextcloud
sudo nano /etc/apache2/sites-available/nextcloud.conf
Бахаем туда это:
Alias /nextcloud "/var/www/nextcloud/"
<Directory /var/www/nextcloud/>
Require all granted
AllowOverride All
Options FollowSymLinks MultiViews
<IfModule mod_dav.c>
Dav off
</IfModule>
</Directory>
Говорим индейцу это съесть
sudo a2ensite nextcloud.conf
Перезапускаем индейца
sudo systemctl reload apache2
Делаем как в видео и внимательно слушаем https://www.youtube.com/watch?v=aJ3gHHFATyc
Подключаем жесткий
Помни он должен быть в ext4
Смотрим как он обзываеться
fdisk -l
Создаем папку для монтирования:
sudo mkdir /media
Монтируем
sudo mount Как_он_обзываеться /media
Проверяем
mount
Перемещаем все что есть на жесткий
sudo mv -v /var/www/nextcloud/data /media
Прыгаем в каталог конфигурации для Nextcloud
cd /var/www/nextcloud/config
Делаем копию на всякий
sudo cp -p config.php config.php.bk
Редактируем конфиг
sudo nano config.php
В этом файле нам нужно изменить следующую строку:
'datadirectory' => '/var/www/nextcloud/data',
заменить на
'datadirectory' => '/media/data',
Соблюдаем права
sudo chown -R www-data:www-data /media/data
Прыгаем в браузер и проверяем
Если пишет ошибку
cd media
touch .ocdata
Потом должно фурычить
Редактируем конфиг
sudo nano /etc/php/7.3/apache2/php.ini
Меняем вот эти строки:
post_max_size = 8M
upload_max_filesize = 2M
На вот эти:
post_max_size = 8000M
upload_max_filesize = 8000M
Значения можешь придумать свои
Перезапускай индейца
sudo service apache2 restart
Создадим каталог
sudo mkdir -p /etc/apache2/ssl
Создаем сертеффикат
sudo openssl req -x509 -nodes -days 365 -newkey rsa:4096 -keyout /etc/apache2/ssl/apache.key -out /etc/apache2/ssl/apache.crt
На все вопросы можно прожать enter
Включим модуль SSL для Apache
sudo a2enmod ssl
Редактируем конфиг
sudo nano /etc/apache2/sites-available/default-ssl.conf
Изменить:
SSLCertificateFile /etc/ssl/certs/ssl-cert-snakeoil.pem
SSLCertificateKeyFile /etc/ssl/private/ssl-cert-snakeoil.key
На
SSLCertificateFile /etc/apache2/ssl/apache.crt
SSLCertificateKeyFile /etc/apache2/ssl/apache.key
Подключаем конфиг и перезагружаем индейца
sudo a2ensite default-ssl.conf
sudo service apache2 restart
Врубаем HTTPS на всю катушку
Редактируем конфиг
sudo nano /etc/apache2/sites-available/000-default.conf
Все удаляем и пишем
<VirtualHost *:80>
ServerAdmin example@example
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}$1 [R=301,L]
</VirtualHost>
Кормим индейцу и перезапускаем
sudo a2enmod rewrite
sudo service apache2 restart
Вот и все, делов то
Спасибо за внимание к проекту друг, для создания этой инструкции и видео пришлось потратить несколько больше сил и времени чем занимают обычные мои ролики, если у тебя есть возможность поддержать канал, то буду рад любой поддержке:
Bitcoin: 1AWBMoeV8UEybQi4QrQMmeFX1sXvRLDeCn
Ethereum: 0xB151c82A264eF0EA848c120444173658BFA18Cf9
DASH: XcNtFGW1ydGLudvTPWoBvPZZxG844EvksR
Zcash: t1hCJwasRozdkoaK9HLpngoEVPQhEZpxdFT
Monero: 41iNuQsc6GjZofH3XkKwNYVSXVsrjipfVjjNR3nbsL5XjJMFTfykW1T6CkYz1StdXH2t8dhnjUTT9FwEPpbsFVxjHuuYabQ
Litecoin: LNpw5QS5fvH1NW5AMp35zzMs1FYKuAUuPP
Bitcoin Cash: qrs29h849m9vj02ljd2utf6g7e7hxnntqvkhz8r8u3
Ethereum Classic: 0xc20a61Ec5765aC0059D6e85f069B440889EBfcC5