Forutsetninger
Trinn 1: Oppdater systemet
Trinn 2: Installer Apache
Trinn 3: Installer PHP og nødvendige PHP-utvidelser
Trinn 4: Installer MariaDB og sett opp en database for NextCloud
Trinn 5: Installer NextCloud
NextCloud, akkurat som navnet antyder, er et lovende alternativ til en annen åpen kildekode-filvertsløsning OwnCloud.
I denne artikkelen vil jeg vise deg hvordan du installerer NextCloud på en Vultr CentOS 7-serverforekomst.
Forutsetninger
- En nyopprettet Vultr CentOS 7-serverforekomst.
- En sudo-bruker for pålogging.
Trinn 1: Oppdater systemet
Logg inn på CentOS 7-systemet som en sudo-bruker, og oppdater deretter systemet til siste stabile status:
sudo yum install epel-release -y
sudo yum update -y
sudo shutdown -r now
Etter omstart, bruk fortsatt den samme sudo-brukeren til å logge på.
Trinn 2: Installer Apache
Installer Apache som webserver for NextCloud:
sudo yum install httpd -y
Deaktiver den forhåndsinnstilte Apache-velkomstsiden:
sudo sed -i 's/^/#&/g' /etc/httpd/conf.d/welcome.conf
Av sikkerhetshensyn, hindre Apache fra å vise innhold i webrotkatalogen /var/www/html:
sudo sed -i "s/Options Indexes FollowSymLinks/Options FollowSymLinks/" /etc/httpd/conf/httpd.conf
Hindre Apache fra å laste WebDAV-moduler, som kreves av NextCloud:
sudo sed -i 's/^/#&/g' /etc/httpd/conf.modules.d/00-dav.conf
Start Apache-tjenesten og få den til å starte ved oppstart:
sudo systemctl start httpd.service
sudo systemctl enable httpd.service
Trinn 3: Installer PHP og nødvendige PHP-utvidelser
NextCloud anbefaler å bruke PHP 5.6. Her kan du installere PHP 5.6 og nødvendige PHP-utvidelser ved å bruke IUS YUM-depotet.
Installer IUS YUM-depotet:
cd
wget https://centos7.iuscommunity.org/ius-release.rpm
sudo rpm -Uvh ius-release.rpm
Installer PHP 5.6 og nødvendige utvidelser ved å bruke IUS YUM-repoen:
sudo yum install php56u php56u-common php56u-xml php56u-gd php56u-mbstring php56u-process php56u-mysqlnd php56u-intl php56u-mcrypt php56u-imap php56u-cli -y
Øk størrelsen på opplastingsfilen til en passende verdi, for eksempel 50 MB:
sudo cp /etc/php.ini /etc/php.ini.bak
sudo sed -i "s/post_max_size = 8M/post_max_size = 50M/" /etc/php.ini
sudo sed -i "s/upload_max_filesize = 2M/upload_max_filesize = 50M/" /etc/php.ini
Start Apache på nytt for å bruke modifikasjonene ovenfor:
sudo systemctl restart httpd.service
Trinn 4: Installer MariaDB og sett opp en database for NextCloud
Installer MariaDB:
sudo yum install mariadb mariadb-server -y
Start MariaDB-tjenesten og få den til å starte ved oppstart:
sudo systemctl start mariadb.service
sudo systemctl enable mariadb.service
Sikker installasjon av MariaDB:
sudo /usr/bin/mysql_secure_installation
Under prosessen, svar på spørsmålene ett etter ett som nedenfor:
Enter current password for root (enter for none): Enter
Set root password? [Y/n]: Y
New password: <your-password>
Re-enter new password: <your-password>
Remove anonymous users? [Y/n]: Y
Disallow root login remotely? [Y/n]: Y
Remove test database and access to it? [Y/n]: Y
Reload privilege tables now? [Y/n]: Y
Nå er det på tide å sette opp en database for NextCloud:
mysql -u root -p
Skriv inn MariaDB-rotpassordet du satte tidligere for å logge på.
I MySQL-skallet må du opprette en database og en databasebruker, og deretter gi privilegier til denne databasebrukeren.
Bruk følgende kommandoer for å fullføre arbeidet. Pass på å erstatte databasenavnet "nextcloud", databasebrukernavnet "nextclouduser" og databasebrukerpassordet "dittpassord" i hver kommando med dine egne.
CREATE DATABASE nextcloud;
CREATE USER 'nextclouduser'@'localhost' IDENTIFIED BY 'yourpassword';
GRANT ALL PRIVILEGES ON nextcloud.* TO 'nextclouduser'@'localhost' IDENTIFIED BY 'yourpassword' WITH GRANT OPTION;
FLUSH PRIVILEGES;
EXIT;
Trinn 5: Installer NextCloud
Last ned den siste stabile versjonen av NextCloud fra den offisielle nettsiden. I skrivende stund er siste stabile versjonsnummer 9.0.53.
cd
wget https://download.nextcloud.com/server/releases/nextcloud-9.0.53.zip
Pakk ut NextCloud-arkivet:
sudo yum install unzip -y
unzip nextcloud-9.0.53.zip
Flytt alle NextCloud-filene til webrotkatalogen, og gi dem riktige tillatelser:
sudo mv nextcloud/* /var/www/html && sudo chown apache:apache -R /var/www/html
Installer NextCloud fra kommandolinjegrensesnittet med følgende eksempelparametere. Pass på å erstatte dem med dine egne.
- databasenavn: nextcloud
- database-bruker: nextclouduser
- database-pass: ditt passord
- admin-bruker: admin
- admin-pass nextcloudadminpassword
Løpe:
cd /var/www/html/
sudo -u apache php occ maintenance:install --database "mysql" --database-name "nextcloud" --database-user "nextclouduser" --database-pass "yourpassword" --admin-user "admin" --admin-pass "nextcloudadminpassword"
Hvis alt går bra, vil utgangen lese:
Nextcloud is not installed - only a limited number of commands are available
ownCloud was successfully installed
Legg til server-IP-en din (si det er 203.0.113.1) og domenenavnet (si det er www.example.com) til NextClouds liste over klarerte domener:
sudo vi /var/www/html/config/config.php
Finn linjen:
0 => 'localhost',
Sett inn følgende to linjer rett under:
1 => '203.0.113.1',
2 => 'www.example.com',
Lagre og avslutt:
:wq!
Av sikkerhetshensyn må du angi sterke tillatelser til Nextcloud-filer og kataloger etter installasjonen:
sudo find /var/www/html -type f -print0 | sudo xargs -0 chmod 0640
sudo find /var/www/html -type d -print0 | sudo xargs -0 chmod 0750
sudo chown -R root:apache /var/www/html
sudo chown -R apache:apache /var/www/html/apps
sudo chown -R apache:apache /var/www/html/config
sudo chown -R apache:apache /var/www/html/data
sudo chown -R apache:apache /var/www/html/themes
sudo chown -R apache:apache /var/www/html/updater
sudo chmod 0644 /var/www/html/.htaccess
sudo chown root:apache /var/www/html/.htaccess
sudo chmod 0644 /var/www/html/data/.htaccess
sudo chown root:apache /var/www/html/data/.htaccess
Husk i tillegg at det er en katalog som ikke er opprettet med navnet /var/www/html/assets. Hvis du oppretter denne katalogen i fremtiden, må du også kjøre følgende kommando:
sudo chown -R apache:apache /var/www/html/assets
Disse innstillingene bidrar til å forhindre at NextCloud får uautorisert tilgang.
Note: If you need to update NextCloud in the future, you can temporarily loosen permissions using the following command:
sudo chown apache:apache -R /var/www/html
After the update, still set strong permissions as above.
Start Apache på nytt for å sette endringene i kraft:
sudo systemctl restart httpd.service
Endre brannmurregler for å gi tilgang for besøkende:
sudo firewall-cmd --zone=public --permanent --add-service=http
sudo firewall-cmd --zone=public --permanent --add-service=https
sudo firewall-cmd --reload
Det er det. Nå kan du peke nettleseren til http://203.0.113.1, og bruke NextCloud-administratorkontoen for å logge på.
Takk for at du leser.