Ρυθμίσεις του Nextcloud


Είδαμε πως μπορούμε να κάνουμε βασική εγκατάσταση Nextcloud σε Banana Pi με Armbian Ubuntu 14.04.5. Εδώ θα δούμε κάποιες ρυθμίσεις για τον διακομιστή σας.

Ρυθμίσεις Apache Web Server

Είδαμε τη βασική εγκατάσταση Nextcloud. Εδώ θα δούμε κάποιες απλές ρυθμίσεις για τον server. Για περισσότερες και πιο εξειδικευμένες ρυθμίσεις για τον server, δείτε την τεκμηρίωση.

Κάθε φορά που κάνετε αλλαγές στον apache, πρέπει να εκτελείτε την εντολή:

service apache2 restart

Για να λειτουργεί το Nextcloud σωστά, θα χρειαστεί να ενεργοποιήσετε κάποια modules. Αυτά με την σειρά είναι (μερικά μπορεί να είναι ενεργοποιημένα ήδη):

a2enmod rewrite
a2enmod headers
a2enmod env
a2enmod dir
a2enmod mime
a2enmod setenvif

Εάν με την επανεκκίνηση του apache σας βγάλει ένα σφάλμα:

AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using ::1. Set the 'ServerName' directive globally to suppress this message

μπορείτε να εκτελέσετε τις παρακάτω εντολές:

echo "ServerName localhost" | sudo tee /etc/apache2/conf-available/fqdn.conf

sudo a2enconf fqdn

και θα είστε ΟΚ.


Ρυθμίσεις για μνήμη Caching

Στην επίσημη τεκμηρίωση γράφει 4 προγράμματα που μπορούν να χρησιμοποιηθούν. Στο συνέδριο έμαθα ότι τα 2 επικρατέστερα είναι το redis και το APCu. Το redis, απ' όσο κατάλαβα, αφορά την έκδοση php 7, ενώ το APCu την έκδοση 5. Μπορεί βέβαια να κατάλαβα και λάθος.

APCu

Στην έκδοση PHP 5.5 και νεότερη συμπεριλαμβάνεται το Zend OPcache, και στις περισσότερες διανομές Linux είναι ενεργοποιημένο ως προεπιλογή. Ωστόσο δεν χρησιμοποιούμε το APCu ως cache δεδομένων, και είναι διαθέσιμο σε όλες τις διανομές Linux. Στα συστήματα με Debian/Ubuntu/Mint εγκαθιστάτε το πακέτο php5-apcu. Στο Ubuntu 14.04LTS, το APCu βρίσκεται στην έκδοση 4.0.2, η οποία είναι πολύ παλιά για να χρησιμοποιηθεί στο Nextcloud. Το Nextcloud απαιτεί έκδοση 4.0.6+. Πρέπει να εγκαταστήσετε την 4.0.7 από τα Ubuntu backports με την εντολή:

apt-get install php5-apcu/trusty-backports

και επανεκκινήστε τον apache.

Αφού εκκινήσει ο apache, προσθέστε στο τέλος την παρακάτω γραμμή στο αρχείο /var/www/html/nextcloud/config/config.php:

'memcache.local' => '\OC\Memcache\APCu',

Τώρα μπορείτε να κάνετε ανανέωση της σελίδας του admin και η προειδοποίηση για την cache θα εξαφανιστεί.

Για το Redis, υπάρχουν οδηγίες εδώ και εδώ.


Ρυθμίσεις php.ini

Πρέπει να κάνετε κάποιες αλλαγές στο αρχείο php.ini για να αυξήσετε κάποια όρια στα πόσα αρχεία ανεβάζετε, μέγεθος αρχείων κλπ.

nano /etc/php5/apache2/php.ini

Ψάξτε και αλλάξτε τις τιμές.

post_max_size = 2058M
upload_max_filesize = 2048M
max_file_uploads = 200
memory_limit = 512M


Προώθηση του / στο /nextcloud

Κάντε τροποποίηση το αρχείο index.html

mv /var/www/html/index.html /var/www/html/index.html.old
nano /var/www/html/index.html

και προσθέστε το κείμενο που θα βρείτε στον σύνδεσμο

http://paste.opensuse.org/39274042

Ουσιαστικά θα κάνει προώθηση στον φάκελο που είναι εγκατεστημένο (αλλάξτε τον φάκελο /nextcloud σε αυτόν που βάλατε εσείς).
Αυτό δεν είναι και το πιο σωστό από άποψη server. Καλό θα είναι να κάνετε ρυθμίσεις μέσα από τον apache. Όμως υπάρχουν clients (όχι ο επίσημος) που πρέπει να εισάγετε και τον φάκελο εγκατάστασης. Οπότε αυτό βολεύει περισσότερο.


Εξαφάνιση του index.php από την διεύθυνση

Έχει καθαρά κοσμητικό ρόλο.

Δείτε εάν έχετε εγκατεστημένο το πακέτο
apt-get install php5-cli

Πρέπει να έχετε ενεργοποιήσει τα mod_env και mod_rewrite. Ανοίξτε το αρχείο config.php:
nano /var/www/html/nextcloud/config/config.php

Και προσθέστε στο τέλος (πριν την παρένθεση) το εξής:
'htaccess.RewriteBase' => '/nextcloud',

Μέσα στον φάκελο /var/www/html/nextcloud, εκτελέστε:
sudo -u www-data php occ maintenance:update:htaccess

Κάντε και μια επανεκκίνηση τον apache. Αν είχατε μια διεύθυνση ανοικτή, σβήστε το index.php και δοκιμάστε να δείτε.

Ενεργοποίηση SSL

Στο συνέδριο, μας πρότειναν το εύκολο certbot. Πρέπει να ανοίξετε (port forward) τις πόρτες 80 και 443 στο router σας. Για το Ubuntu 14.04 θα βρείτε τις εντολές από στην ιστοσελίδα (αν διαφέρει ο server ή το λειτουργικό του server σας, ακολουθήστε τις κατάλληλες οδηγίες):

Αυτόματη εγκατάσταση

wget https://dl.eff.org/certbot-auto
chmod a+x certbot-auto
$ ./certbot-auto

Αυτόματη εκκίνηση
$ ./path/to/certbot-auto --apache

Εάν θέλετε να κάνετε αλλαγές στον Apache μόνοι σας, μπορείτε να εκτελέσετε την εντολή:
$ ./path/to/certbot-auto --apache certonly

Αυτόματη ανανέωση
Τα πιστοποιητικά του Let's Encrypt είναι έγκυρα για 90 ημέρες, έτσι καλό είναι να τα ανανεώνετε αυτόματα:
./path/to/certbot-auto renew --dry-run

Εάν δουλεύει μια χαρά, μπορείτε να το προσθέσετε είτε στο cron είτε στο systemd ώστε να εκτελείται το παρακάτω:

./path/to/certbot-auto renew --quiet --no-self-upgrade

Αν δεν σας πειράζει, μπορείτε να έχετε και ένα self signed πιστοποιητικό εφόσον το χρησιμοποιείτε μόνο εσείς.
Υπάρχει ένας αναλυτικός οδηγός στην Digital Ocean για το πως να δημιουργείτε κλειδί ssl στο Ubuntu 12.04.


Trusted Domains

Όταν κάνετε εγκατάσταση του Nextcloud, εγγράφεται στο αρχείο config.php η IP από την οποία κάνατε εγκατάσταση. Εάν μπείτε πχ από ένα ddns (no-ip, freedns κλπ), θα σας βγάλει προειδοποίηση ότι δεν είναι περασμένη η διεύθυνση αυτή και εάν θέλετε να την προσθέσετε ως trusted_domains. Ανοίξτε το αρχείο /var/www/html/nextcloud/config/config.php και θα δείτε την μορφή:

'trusted_domains' =>
array (
0 => 'localhost',
1 => 'server1.example.com',
2 => '192.168.1.100',
),

Ενεργοποίηση προσθέτων (εξωτερικές πηγές)

Μπορείτε να ενεργοποιήσετε κάποια πρόσθετα. Αυτό που έχει ιδιαίτερο ενδιαφέρον είναι οι εξωτερικές πηγές (είτε sites είτε μέσα). Για τα εξωτερικά μέσα, πρέπει να κάνετε εγκατάσταση και το παρακάτω.

apt-get install smbclient


Για περισσότερες πληροφορίες-ρυθμίσεις, δείτε τους παρακάτω οδηγούς:
* https://bayton.org/2016/07/installing-nextcloud-on-ubuntu-16-04-lts-with-redis-apcu-apache/
* https://www.linuxbabe.com/cloud-storage/setup-nextcloud-server-ubuntu-16-04-apache-mariadb-php7

Δεν υπάρχουν σχόλια

Από το Blogger.