Umbenannt & aufgesplittet
This commit is contained in:
1
.gitignore
vendored
Normal file
1
.gitignore
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
.DS_Store
|
50
ddclient.md
Normal file
50
ddclient.md
Normal file
@ -0,0 +1,50 @@
|
|||||||
|
## ddclient installieren
|
||||||
|
vgl. [http://www.forum-raspberrypi.de/Thread-tutorial-dynamic-dns](http://www.forum-raspberrypi.de/Thread-tutorial-dynamic-dns)
|
||||||
|
|
||||||
|
### Anmerkung
|
||||||
|
*Die dynamische DNS ist in diesem Beispiel bei [NoIP](https://no-ip.com) gehostet. Bei anderen Anbietern kann die erste Zeile der Konfigurations-Datei abweichen.*
|
||||||
|
|
||||||
|
**Client laden**
|
||||||
|
|
||||||
|
```xml
|
||||||
|
sudo apt install ddclient -y
|
||||||
|
```
|
||||||
|
(Fragen können alle übersprungen werden (ENTER), die Konfigurationsdatei wird im nächsten Schritt bearbeitet)
|
||||||
|
|
||||||
|
**Config-Dateien anpassen**
|
||||||
|
|
||||||
|
```xml
|
||||||
|
sudo nano /etc/ddclient.conf
|
||||||
|
```
|
||||||
|
-> Ändern:
|
||||||
|
|
||||||
|
```xml
|
||||||
|
protocol=noip
|
||||||
|
use=web, web=checkip.dyndns.com, web-skip='IP Address'
|
||||||
|
server=dynupdate.no-ip.com
|
||||||
|
login='test@mail.com'
|
||||||
|
password='secret'
|
||||||
|
domain.ddns.net
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
|
**Update-Rate verändern**
|
||||||
|
|
||||||
|
```xml
|
||||||
|
sudo nano /etc/default/ddclient
|
||||||
|
```
|
||||||
|
-> Ändern (z.B. alle 2 Stunden = 7200s):
|
||||||
|
daemon_interval="7200"
|
||||||
|
|
||||||
|
|
||||||
|
**Testen, ob der Client funktioniert**
|
||||||
|
|
||||||
|
```xml
|
||||||
|
sudo ddclient -daemon=0 -debug -verbose -noquiet 2 /etc/ddclient.conf
|
||||||
|
```
|
||||||
|
|
||||||
|
**Daemon neustarten**
|
||||||
|
|
||||||
|
```xml
|
||||||
|
sudo /etc/init.d/ddclient restart
|
||||||
|
```
|
46
ersteinrichtung.md
Normal file
46
ersteinrichtung.md
Normal file
@ -0,0 +1,46 @@
|
|||||||
|
## Ersteinrichtung Rapsberry Pi
|
||||||
|
### Voraussetzungen
|
||||||
|
|
||||||
|
* Raspberry Pi
|
||||||
|
* microSD Karte mit mind. 8 GB
|
||||||
|
* Einen anderen Computer
|
||||||
|
|
||||||
|
### Installation des Betriebssystems
|
||||||
|
|
||||||
|
* Aktuelle Version von Raspbian Lite [hier](https://www.raspberrypi.org/downloads/raspbian/) laden
|
||||||
|
* Mit Win32 Disk Imager auf die MicroSD Karte schreiben
|
||||||
|
* Eine leere Datei mit dem Namen "ssh" unter /boot erstellen (um den SSH-Dienst zu aktivieren)
|
||||||
|
* microSD Karte in den Pi stecken, Ethernet und Stromkabel anschließen
|
||||||
|
* Per SSH auf den Raspberry Pi verbinden (ssh pi@raspberrypi; Benutzer: pi; Passwort:
|
||||||
|
raspberry)
|
||||||
|
|
||||||
|
## Standardeinstellungen ändern
|
||||||
|
|
||||||
|
```xml
|
||||||
|
sudo raspi-config
|
||||||
|
```
|
||||||
|
|
||||||
|
**Passwort ändern**
|
||||||
|
Punkt 1 wählen und dem Assistenten folgen
|
||||||
|
|
||||||
|
**Sprache ändern**
|
||||||
|
Punkt 4 wählen, dann Punkt 1 wählen
|
||||||
|
-> Scrollen bis „de_DE.UTF-8 UTF-8“, Leertaste drücken, Tabtaste drücken, mit Enter auf „OK“
|
||||||
|
|
||||||
|
**Zeitzone ändern**
|
||||||
|
Punkt 4 wählen, dann Punkt 2 wählen, Europa -> Berlin
|
||||||
|
|
||||||
|
**Tastaturlayout ändern**
|
||||||
|
Punkt 4 wählen, dann Punkt 3 wählen
|
||||||
|
|
||||||
|
**WLAN-Land ändern**
|
||||||
|
Punkt 4 wählen, dann Punkt 4 wählen, scrollen bis „DE Germany“, Enter
|
||||||
|
|
||||||
|
**Datei-System erweitern**
|
||||||
|
Punkt 7, dann Punkt 1
|
||||||
|
|
||||||
|
**Memory Split ändern**
|
||||||
|
Punkt 7 wählen, dann Punkt 3 wählen, Wert auf 16 ändern
|
||||||
|
|
||||||
|
**Setup abschließen**
|
||||||
|
Mit Tabtaste zu "Finish" navigieren, Neustart bestätigen
|
52
externes-laufwerk.md
Normal file
52
externes-laufwerk.md
Normal file
@ -0,0 +1,52 @@
|
|||||||
|
## Daten auf externem Medium speichern
|
||||||
|
|
||||||
|
**Als Root anmelden**
|
||||||
|
|
||||||
|
```xml
|
||||||
|
sudo -s
|
||||||
|
```
|
||||||
|
|
||||||
|
**Alle Laufwerke anzeigen lassen**
|
||||||
|
|
||||||
|
```xml
|
||||||
|
fdisk -l
|
||||||
|
```
|
||||||
|
(externes Laufwerk ist z.B. /dev/sda1)
|
||||||
|
|
||||||
|
**Verzeichnis erstellen, in welches Laufwerk eingehängt wird**
|
||||||
|
|
||||||
|
```xml
|
||||||
|
mkdir externes-laufwerk
|
||||||
|
```
|
||||||
|
|
||||||
|
**Externes Medium mounten**
|
||||||
|
|
||||||
|
```xml
|
||||||
|
mount -t auto /dev/sda1 /media/externes-laufwerk
|
||||||
|
```
|
||||||
|
|
||||||
|
##Externes Medium beim Neustart automatisch einbinden
|
||||||
|
|
||||||
|
**UUID des externen Laufwerkes ermitteln**
|
||||||
|
|
||||||
|
```xml
|
||||||
|
sudo blkid
|
||||||
|
```
|
||||||
|
-> UUID des gewünschten Mediums kopieren
|
||||||
|
|
||||||
|
**fstab bearbeiten**
|
||||||
|
|
||||||
|
```xml
|
||||||
|
nano /etc/fstab
|
||||||
|
```
|
||||||
|
-> Einfügen:
|
||||||
|
|
||||||
|
```xml
|
||||||
|
UUID="ABCD-EFGH-IJKL" /media/externes-laufwerk auto *OPTION* 0 0
|
||||||
|
```
|
||||||
|
|
||||||
|
**OPTION**
|
||||||
|
|
||||||
|
* auto: Das medium wird zum Starten des Pi zwingend benötigt. Der Pi startet nicht, wenn das Medium nicht angeschlossen ist
|
||||||
|
* nofail: Das Laufwerk muss nicht zwangsläufig angeschlossen sein. Wenn es angeschlossen wird, wird es automatisch gemounted
|
||||||
|
|
70
gitea.md
Normal file
70
gitea.md
Normal file
@ -0,0 +1,70 @@
|
|||||||
|
## Gitea auf dem Raspberry Pi
|
||||||
|
|
||||||
|
**Benötigte Pakete installieren**
|
||||||
|
|
||||||
|
```xml
|
||||||
|
sudo apt install git mysql-server -y
|
||||||
|
```
|
||||||
|
(Während des Vorgangs das root Passwort festlegen)
|
||||||
|
|
||||||
|
|
||||||
|
**Ordner für Gitea anlegen**
|
||||||
|
|
||||||
|
```xml
|
||||||
|
mkdir gitea
|
||||||
|
```
|
||||||
|
|
||||||
|
**Gitea Binary laden**
|
||||||
|
|
||||||
|
```xml
|
||||||
|
wget -O gitea https://dl.gitea.io/gitea/1.x.x/gitea-1.1.0-linux-arm-7
|
||||||
|
```
|
||||||
|
|
||||||
|
**Binary ausführbar machen**
|
||||||
|
|
||||||
|
```xml
|
||||||
|
sudo chmod +x gitea
|
||||||
|
```
|
||||||
|
|
||||||
|
**Gitea starten**
|
||||||
|
|
||||||
|
```xml
|
||||||
|
./gitea web
|
||||||
|
```
|
||||||
|
|
||||||
|
Im Browser http://IP-Adresse:3000 aufrufen und konfigurieren
|
||||||
|
|
||||||
|
### Gitea bei Systemstart ausführen
|
||||||
|
|
||||||
|
```xml
|
||||||
|
sudo nano /etc/systemd/system/gitea.service
|
||||||
|
```
|
||||||
|
|
||||||
|
-> Dort einfügen:
|
||||||
|
|
||||||
|
```xml
|
||||||
|
[Unit]
|
||||||
|
Description=Gitea (Git with a cup of tea)
|
||||||
|
After=syslog.target
|
||||||
|
After=network.target
|
||||||
|
After=mysql.service
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
Type=simple
|
||||||
|
User=pi
|
||||||
|
Group=pi
|
||||||
|
WorkingDirectory=/home/pi/gitea
|
||||||
|
ExecStart=/home/pi/gitea/gitea web
|
||||||
|
Restart=always
|
||||||
|
Environment=USER=pi HOME=/home/pi
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=multi-user.target
|
||||||
|
```
|
||||||
|
|
||||||
|
**Dienst aktivieren**
|
||||||
|
|
||||||
|
```xml
|
||||||
|
sudo systemctl enable gitea.service
|
||||||
|
sudo systemctl daemon-reload
|
||||||
|
```
|
23
mysql-externer-zugriff.md
Normal file
23
mysql-externer-zugriff.md
Normal file
@ -0,0 +1,23 @@
|
|||||||
|
## Zugriff auf MySQL von außerhalb
|
||||||
|
|
||||||
|
**MySQL Config-Datei bearbeiten**
|
||||||
|
|
||||||
|
```xml
|
||||||
|
sudo nano /etc/mysql/my.conf
|
||||||
|
```
|
||||||
|
->Suche (CTRL+W) nach "bind", Zeile auskommentieren
|
||||||
|
|
||||||
|
**MySQL neu starten**
|
||||||
|
|
||||||
|
```xml
|
||||||
|
sudo /etc/init.d/mysql restart
|
||||||
|
```
|
||||||
|
|
||||||
|
**Rechte in der DB setzen**
|
||||||
|
|
||||||
|
```xml
|
||||||
|
mysql -p -u root
|
||||||
|
use ***db***;
|
||||||
|
GRANT ALL ON *.* TO root@'%' IDENTIFIED BY 'RootPassword';
|
||||||
|
exit
|
||||||
|
```
|
102
nextcloud-update.md
Normal file
102
nextcloud-update.md
Normal file
@ -0,0 +1,102 @@
|
|||||||
|
## Nextcloud Update
|
||||||
|
|
||||||
|
### Anmerkungen
|
||||||
|
* Alle Nutzer sollten abgemeldet sein
|
||||||
|
* Drittanbieter-Apps müssen nach dem Update wieder aktiviert werden. Die Daten bleiben erhalten
|
||||||
|
|
||||||
|
**Als Root anmelden**
|
||||||
|
|
||||||
|
```xml
|
||||||
|
sudo -s
|
||||||
|
```
|
||||||
|
|
||||||
|
**Ins Nextloud-Verzeichnis wechseln**
|
||||||
|
|
||||||
|
```xml
|
||||||
|
cd /var/www/nextcloud
|
||||||
|
```
|
||||||
|
|
||||||
|
**Wartungsmodus aktivieren**
|
||||||
|
|
||||||
|
```xml
|
||||||
|
sudo -u www-data php occ maintenance:mode --on
|
||||||
|
```
|
||||||
|
|
||||||
|
**Eine Ebene nach oben wechseln**
|
||||||
|
|
||||||
|
```xml
|
||||||
|
cd..
|
||||||
|
```
|
||||||
|
|
||||||
|
**Update laden**
|
||||||
|
|
||||||
|
```xml
|
||||||
|
wget https://download.nextcloud.com/server/releases/nextcloud-xxx.tar.bz2
|
||||||
|
```
|
||||||
|
|
||||||
|
**Webserver (NGINX) stoppen**
|
||||||
|
|
||||||
|
```xml
|
||||||
|
/etc/init.d/nginx stop
|
||||||
|
```
|
||||||
|
|
||||||
|
**Altes Verzeichnis umbenennen**
|
||||||
|
|
||||||
|
```xml
|
||||||
|
mv nextcloud nextcloud-alt
|
||||||
|
```
|
||||||
|
|
||||||
|
**.tar entpacken**
|
||||||
|
|
||||||
|
```xml
|
||||||
|
tar xvjf nextcloud-xxx.tar.bz2
|
||||||
|
```
|
||||||
|
|
||||||
|
**Config-Datei kopieren**
|
||||||
|
|
||||||
|
```xml
|
||||||
|
cp nextcloud-alt/config/config.php nextcloud/config/config.php
|
||||||
|
```
|
||||||
|
|
||||||
|
**Daten-Verzeichnis kopieren**
|
||||||
|
*Nicht nötig, wenn das Daten-Verzeichnis auf einem externen Medium liegt*
|
||||||
|
|
||||||
|
```xml
|
||||||
|
cd nextcloud-alt
|
||||||
|
cp -R data /var/www/nextcloud
|
||||||
|
```
|
||||||
|
|
||||||
|
**Eigentümer des Ordners ändern**
|
||||||
|
|
||||||
|
```xml
|
||||||
|
chown -R www-data:www-data /var/www/nextcloud
|
||||||
|
```
|
||||||
|
|
||||||
|
**Webserver (NGINX) wieder starten**
|
||||||
|
|
||||||
|
```xml
|
||||||
|
/etc/init.d/nginx start
|
||||||
|
```
|
||||||
|
|
||||||
|
**Wartungsmodus deaktivieren**
|
||||||
|
|
||||||
|
```xml
|
||||||
|
cd /var/www/nextcloud
|
||||||
|
sudo -u www-data php occ maintenance:mode --off
|
||||||
|
```
|
||||||
|
|
||||||
|
IP-Adresse des Pi im Browser aufrufen und "Aktualisierung starten" klicken
|
||||||
|
|
||||||
|
**Schlüssel für serverseitige Verschlüsselung übertragen**
|
||||||
|
*Nur nötig, wenn die OwnCloud verschlüsselt wurde*
|
||||||
|
|
||||||
|
```xml
|
||||||
|
sudo -u www-data php occ encryption:migrate-keys
|
||||||
|
```
|
||||||
|
|
||||||
|
**Update-Verzeichnis und alte Nextcloud-Instanz löschen**
|
||||||
|
|
||||||
|
```xml
|
||||||
|
cd ..
|
||||||
|
rm -rf nextcloud-xxx.tar.bz2 nextcloud-alt
|
||||||
|
```
|
356
nextcloud.md
Normal file
356
nextcloud.md
Normal file
@ -0,0 +1,356 @@
|
|||||||
|
## Nextcloud auf dem Raspberry Pi 3
|
||||||
|
|
||||||
|
### Ersteinrichtung des Raspberry Pi
|
||||||
|
Siehe [Ersteinrichtung](https://cdng.ddns.net/gitea/julian/raspberry-pi/src/master/Ersteinrichtung.md)
|
||||||
|
|
||||||
|
|
||||||
|
## Vorbereitungen
|
||||||
|
vgl. [Anleitung von AvoidErrors](http://www.avoiderrors.net/owncloud-raspberry-pi/)
|
||||||
|
|
||||||
|
|
||||||
|
**Aktualisierung suchen & installieren**
|
||||||
|
|
||||||
|
```xml
|
||||||
|
sudo apt update && sudo apt upgrade -y && sudo reboot
|
||||||
|
```
|
||||||
|
|
||||||
|
**Benutzer www-data zur Gruppe www-data hinzufügen**
|
||||||
|
|
||||||
|
```xml
|
||||||
|
sudo usermod -a -G www-data www-data
|
||||||
|
```
|
||||||
|
|
||||||
|
**Benötigte Pakete installieren**
|
||||||
|
|
||||||
|
```xml
|
||||||
|
sudo apt install nginx openssl ssl-cert php5-cli php5-sqlite php5-gd php5-common php5-cgi sqlite3 php-pear php-apc curl libapr1 libtool curl libcurl4-openssl-dev php-xml-parser php5 php5-dev php5-curl php5-gd php5-fpm memcached php5-memcache varnish -y
|
||||||
|
```
|
||||||
|
|
||||||
|
**Eigenes SSL-Zertifikat erstellen**
|
||||||
|
|
||||||
|
```xml
|
||||||
|
sudo openssl req $@ -new -x509 -days 730 -nodes -out /etc/nginx/cert.pem -keyout /etc/nginx/cert.key
|
||||||
|
```
|
||||||
|
|
||||||
|
**Zugriffsrechte des Zertifikats ändern**
|
||||||
|
|
||||||
|
```xml
|
||||||
|
sudo chmod 600 /etc/nginx/cert.pem
|
||||||
|
sudo chmod 600 /etc/nginx/cert.key
|
||||||
|
```
|
||||||
|
|
||||||
|
**Alte nginx config-Datei sichern**
|
||||||
|
|
||||||
|
```xml
|
||||||
|
sudo mv /etc/nginx/sites-available/default /etc/nginx/sites-available/default_old
|
||||||
|
```
|
||||||
|
|
||||||
|
**Neue config-Datei erstellen**
|
||||||
|
|
||||||
|
```xml
|
||||||
|
sudo nano /etc/nginx/sites-available/default
|
||||||
|
```
|
||||||
|
|
||||||
|
**Dort einfügen:**
|
||||||
|
*An 2 Stellen muss die IP-Adresse oder die dynamische DNS eingetragen werden! Außerdem müssen die Pfade zum SSL-Zertifikat und zu den Diffie-Hellman-Parametern geändert werden.*
|
||||||
|
|
||||||
|
```xml
|
||||||
|
upstream php-handler {
|
||||||
|
server 127.0.0.1:9000;
|
||||||
|
}
|
||||||
|
|
||||||
|
server {
|
||||||
|
listen 80;
|
||||||
|
server_name IP-Adresse oder dynamische DNS;
|
||||||
|
# Enforce HTTPS
|
||||||
|
return 301 https://$server_name$request_uri;
|
||||||
|
}
|
||||||
|
|
||||||
|
server {
|
||||||
|
listen 443 ssl;
|
||||||
|
server_name IP-Adresse oder dynamische DNS;
|
||||||
|
|
||||||
|
ssl_certificate /path/to/cert
|
||||||
|
ssl_certificate_key /path/to/private-key;
|
||||||
|
|
||||||
|
# Security Headers
|
||||||
|
add_header Strict-Transport-Security "max-age=15768000";
|
||||||
|
add_header X-Content-Type-Options nosniff;
|
||||||
|
add_header X-Frame-Options "SAMEORIGIN";
|
||||||
|
add_header X-XSS-Protection "1; mode=block";
|
||||||
|
add_header X-Robots-Tag none;
|
||||||
|
add_header X-Download-Options noopen;
|
||||||
|
add_header X-Permitted-Cross-Domain-Policies none;
|
||||||
|
|
||||||
|
|
||||||
|
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
|
||||||
|
ssl_ciphers 'ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-DSS-AES128-GCM-SHA256:kEDH+AESGCM:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA:ECDHE-ECDSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-DSS-AES128-SHA256:DHE-RSA-AES256-SHA256:DHE-DSS-AES256-SHA:DHE-RSA-AES256-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:AES:CAMELLIA:DES-CBC3-SHA:!aNULL:!eNULL:!EXPORT:!DES:!RC4:!MD5:!PSK:!aECDH:!EDH-DSS-DES-CBC3-SHA:!EDH-RSA-DES-CBC3-SHA:!KRB5-DES-CBC3-SHA';
|
||||||
|
ssl_prefer_server_ciphers on;
|
||||||
|
ssl_dhparam /path/to/dh-params
|
||||||
|
ssl_session_cache shared:ssl_session_cache:10m;
|
||||||
|
|
||||||
|
|
||||||
|
# Path to the root of your installation
|
||||||
|
root /var/www;
|
||||||
|
|
||||||
|
location = /robots.txt {
|
||||||
|
allow all;
|
||||||
|
log_not_found off;
|
||||||
|
access_log off;
|
||||||
|
}
|
||||||
|
|
||||||
|
location = /.well-known/carddav {
|
||||||
|
return 301 $scheme://$host/nextcloud/remote.php/dav;
|
||||||
|
}
|
||||||
|
location = /.well-known/caldav {
|
||||||
|
return 301 $scheme://$host/nextcloud/remote.php/dav;
|
||||||
|
}
|
||||||
|
|
||||||
|
location /.well-known/acme-challenge { }
|
||||||
|
|
||||||
|
location ^~ /nextcloud {
|
||||||
|
# set max upload size
|
||||||
|
client_max_body_size 20148M;
|
||||||
|
fastcgi_buffers 64 4K;
|
||||||
|
|
||||||
|
# Disable gzip to avoid the removal of the ETag header
|
||||||
|
gzip off;
|
||||||
|
|
||||||
|
error_page 403 /nextcloud/core/templates/403.php;
|
||||||
|
error_page 404 /nextcloud/core/templates/404.php;
|
||||||
|
|
||||||
|
location /nextcloud {
|
||||||
|
rewrite ^ /nextcloud/index.php$uri;
|
||||||
|
}
|
||||||
|
|
||||||
|
location ~ ^/nextcloud/(?:build|tests|config|lib|3rdparty|templates|data)/ {
|
||||||
|
deny all;
|
||||||
|
}
|
||||||
|
location ~ ^/nextcloud/(?:\.|autotest|occ|issue|indie|db_|console) {
|
||||||
|
deny all;
|
||||||
|
}
|
||||||
|
|
||||||
|
location ~ ^/nextcloud/(?:index|remote|public|cron|core/ajax/update|status|ocs/v[12]|updater/.+|ocs-provider/.+|core/templates/40[34])\.php(?:$|/) {
|
||||||
|
include fastcgi_params;
|
||||||
|
fastcgi_split_path_info ^(.+\.php)(/.*)$;
|
||||||
|
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
|
||||||
|
fastcgi_param PATH_INFO $fastcgi_path_info;
|
||||||
|
fastcgi_param HTTPS on;
|
||||||
|
#Avoid sending the security headers twice
|
||||||
|
fastcgi_param modHeadersAvailable true;
|
||||||
|
fastcgi_param front_controller_active true;
|
||||||
|
fastcgi_pass php-handler;
|
||||||
|
fastcgi_intercept_errors on;
|
||||||
|
# fastcgi_request_buffering off;
|
||||||
|
}
|
||||||
|
|
||||||
|
location ~ ^/nextcloud/(?:updater|ocs-provider)(?:$|/) {
|
||||||
|
try_files $uri/ =404;
|
||||||
|
index index.php;
|
||||||
|
}
|
||||||
|
|
||||||
|
# Adding the cache control header for js and css files
|
||||||
|
# Make sure it is BELOW the PHP block
|
||||||
|
location ~* \.(?:css|js|woff|svg|gif)$ {
|
||||||
|
try_files $uri /nextcloud/index.php$uri$is_args$args;
|
||||||
|
add_header Cache-Control "public, max-age=7200";
|
||||||
|
# Add headers to serve security related headers (It is intended
|
||||||
|
# to have those duplicated to the ones above)
|
||||||
|
# Before enabling Strict-Transport-Security headers please read
|
||||||
|
# into this topic first.
|
||||||
|
# add_header Strict-Transport-Security "max-age=15768000;
|
||||||
|
# includeSubDomains; preload;";
|
||||||
|
add_header X-Content-Type-Options nosniff;
|
||||||
|
add_header X-Frame-Options "SAMEORIGIN";
|
||||||
|
add_header X-XSS-Protection "1; mode=block";
|
||||||
|
add_header X-Robots-Tag none;
|
||||||
|
add_header X-Download-Options noopen;
|
||||||
|
add_header X-Permitted-Cross-Domain-Policies none;
|
||||||
|
# Optional: Don't log access to assets
|
||||||
|
access_log off;
|
||||||
|
}
|
||||||
|
|
||||||
|
location ~* \.(?:png|html|ttf|ico|jpg|jpeg)$ {
|
||||||
|
try_files $uri /nextcloud/index.php$uri$is_args$args;
|
||||||
|
# Optional: Don't log access to other assets
|
||||||
|
access_log off;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
**PHP-conf bearbeiten**
|
||||||
|
|
||||||
|
```xml
|
||||||
|
sudo nano /etc/php5/fpm/pool.d/www.conf
|
||||||
|
```
|
||||||
|
|
||||||
|
-> listen = 127.0.0.1:9000
|
||||||
|
|
||||||
|
|
||||||
|
**conf-swapsize ändern**
|
||||||
|
|
||||||
|
```xml
|
||||||
|
sudo nano /etc/dphys-swapfile
|
||||||
|
```
|
||||||
|
|
||||||
|
-> CONF_SWAPSIZE = 512
|
||||||
|
|
||||||
|
**Pi neustarten**
|
||||||
|
sudo reboot
|
||||||
|
|
||||||
|
|
||||||
|
## Nextcloud installieren
|
||||||
|
|
||||||
|
**Als Root anmelden**
|
||||||
|
|
||||||
|
```xml
|
||||||
|
sudo -s
|
||||||
|
```
|
||||||
|
|
||||||
|
**Ordner erstellen**
|
||||||
|
|
||||||
|
```xml
|
||||||
|
mkdir -p /var/www/nextcloud
|
||||||
|
```
|
||||||
|
|
||||||
|
**Verzeichnis wechseln**
|
||||||
|
|
||||||
|
```xml
|
||||||
|
cd /var/www/
|
||||||
|
```
|
||||||
|
|
||||||
|
**Nextcloud laden**
|
||||||
|
|
||||||
|
```xml
|
||||||
|
wget https://download.nextcloud.com/server/releases/nextcloud-xxx.tar.bz2
|
||||||
|
```
|
||||||
|
|
||||||
|
**.tar entpacken**
|
||||||
|
|
||||||
|
```xml
|
||||||
|
tar xvjf nextcloud-xxx.tar.bz2
|
||||||
|
```
|
||||||
|
|
||||||
|
**User „www-data“ zum Eigentümer des Ordners machen**
|
||||||
|
|
||||||
|
```xml
|
||||||
|
chown -R www-data:www-data /var/www/nextcloud
|
||||||
|
```
|
||||||
|
|
||||||
|
**Alte Dateien entfernen**
|
||||||
|
|
||||||
|
```xml
|
||||||
|
rm -rf nextcloud-xxx.tar.bz2
|
||||||
|
exit
|
||||||
|
```
|
||||||
|
|
||||||
|
## Datenbank ändern (MySQL)
|
||||||
|
**Benötigte Pakete installieren**
|
||||||
|
|
||||||
|
```xml
|
||||||
|
sudo apt install mysql-server php5-mysql -y
|
||||||
|
```
|
||||||
|
(Während des Vorgangs das root Passwort festlegen)
|
||||||
|
|
||||||
|
**Datenbank erstellen**
|
||||||
|
|
||||||
|
```xml
|
||||||
|
mysql -p -u USER
|
||||||
|
CREATE DATABASE IF NOT EXISTS nextcloud;
|
||||||
|
exit
|
||||||
|
```
|
||||||
|
|
||||||
|
## Nextcloud öffnen & konfigurieren
|
||||||
|
* IP-Adresse des Raspberry Pi im Browser eingeben
|
||||||
|
* Administrator-Account erstellen
|
||||||
|
* Unten bei Speicher & Datenbank „MySQL/MariaDB“ auswählen
|
||||||
|
|
||||||
|
-> Benutzer: root, PW: vorhin festgelegt, DB-Name: nextcloud, Host: localhost
|
||||||
|
|
||||||
|
## Signiertes SSL-Zertifikat installieren
|
||||||
|
Siehe [Signiertes SSL-Zertifikat installieren](https://cdng.ddns.net/gitea/julian/raspberry-pi/src/master/signiertes-ssl-zertifikat.md)
|
||||||
|
|
||||||
|
|
||||||
|
## ddclient installieren
|
||||||
|
Siehe [ddclient installieren](https://cdng.ddns.net/gitea/julian/raspberry-pi/src/master/ddclient.md)
|
||||||
|
|
||||||
|
|
||||||
|
## Daten auf externem Medium speichern
|
||||||
|
Siehe zuerst [Externes Laufwerk einbinden](https://cdng.ddns.net/gitea/julian/raspberry-pi/src/master/externes-laufwerk.md)
|
||||||
|
|
||||||
|
**Als Root anmelden**
|
||||||
|
|
||||||
|
```xml
|
||||||
|
sudo -s
|
||||||
|
```
|
||||||
|
|
||||||
|
**Speicherort der Nextcloud-Daten ermitteln**
|
||||||
|
|
||||||
|
```xml
|
||||||
|
nano /var/www/nextcloud/config/config.php
|
||||||
|
```
|
||||||
|
-> Eintrag: datadirectory (Standard: /var/www/owncloud/data)
|
||||||
|
-> Ändern in: /home/pi/usbstick
|
||||||
|
|
||||||
|
**Nextcloud-Daten auf das externe Medium kopieren**
|
||||||
|
|
||||||
|
```xml
|
||||||
|
cp -R /var/www/nextcloud/data/. /home/pi/usbstick
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
|
**Überprüfen, ob Daten da sind**
|
||||||
|
|
||||||
|
```xml
|
||||||
|
cd /home/pi/usbstick && ls -la
|
||||||
|
```
|
||||||
|
|
||||||
|
**Datei-Eigentümer der Datenkopie ändern**
|
||||||
|
|
||||||
|
```xml
|
||||||
|
chown -R www-data:www-data /home/pi/usbstick
|
||||||
|
```
|
||||||
|
|
||||||
|
**Überprüfen, ob Eigentümer geändert wurde**
|
||||||
|
|
||||||
|
```xml
|
||||||
|
ls -la
|
||||||
|
```
|
||||||
|
|
||||||
|
**Original-Ordner nach erfolgreichem Umziehen der Daten löschen**
|
||||||
|
|
||||||
|
```xml
|
||||||
|
cd /var/www/nextcloud
|
||||||
|
rm -rf data
|
||||||
|
exit
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
|
## Anpassungen
|
||||||
|
**Cache konfigurieren**
|
||||||
|
|
||||||
|
```xml
|
||||||
|
sudo nano /var/www/nextcloud/config/config.php
|
||||||
|
```
|
||||||
|
|
||||||
|
-> Unten einfügen: 'memcache.local' => '\OC\Memcache\APC',
|
||||||
|
|
||||||
|
**PHP-Path Variablen**
|
||||||
|
|
||||||
|
```xml
|
||||||
|
sudo nano /etc/php5/fpm/pool.d/www.conf
|
||||||
|
```
|
||||||
|
Suche (CTRL+W) nach "env[HOSTNAME]"
|
||||||
|
-> Bei allen folgenden env-Variablen (HOSTNAME, PATH, TMP, TMPDIR, TEMP) das ";" entfernen
|
||||||
|
|
||||||
|
**Datei-Limits anheben**
|
||||||
|
|
||||||
|
```xml
|
||||||
|
sudo nano /var/www/nextcloud/.user.ini
|
||||||
|
```
|
||||||
|
|
||||||
|
-> Ändern:
|
||||||
|
upload\_max\_file\_size=2048M
|
||||||
|
post\_max\_size=2048M
|
||||||
|
|
16
oeffentliche-schluessel-importieren.md
Normal file
16
oeffentliche-schluessel-importieren.md
Normal file
@ -0,0 +1,16 @@
|
|||||||
|
## Öffentliche Schlüssel von alten Paketen (Backports) importieren
|
||||||
|
|
||||||
|
```xml
|
||||||
|
sudo apt update
|
||||||
|
```
|
||||||
|
|
||||||
|
**Ausgabe (Beispiel):**
|
||||||
|
W: GPG-Fehler: http://ftp.debian.org jessie-backports InRelease: Die folgenden Signaturen konnten nicht überprüft werden, weil ihr öffentlicher Schlüssel nicht verfügbar ist: NO_PUBKEY 123456
|
||||||
|
|
||||||
|
**Fehlenden Schlüssel importieren**
|
||||||
|
|
||||||
|
```xml
|
||||||
|
gpg --keyserver pgpkeys.mit.edu --recv-key 123456
|
||||||
|
gpg -a --export 123456 | sudo apt-key add -
|
||||||
|
sudo apt update
|
||||||
|
```
|
69
signiertes-ssl-zertifikat.md
Normal file
69
signiertes-ssl-zertifikat.md
Normal file
@ -0,0 +1,69 @@
|
|||||||
|
## Signiertes SSL-Zertifikat installieren
|
||||||
|
**Backports zulassen**
|
||||||
|
|
||||||
|
```xml
|
||||||
|
sudo nano /etc/apt/sources.list
|
||||||
|
```
|
||||||
|
-> Einfügen: deb http://ftp.debian.org/debian jessie-backports main
|
||||||
|
|
||||||
|
**Quellen aktualisieren**
|
||||||
|
|
||||||
|
```xml
|
||||||
|
sudo apt update
|
||||||
|
```
|
||||||
|
|
||||||
|
**Schlüssel reparieren**
|
||||||
|
*Nur nötig, falls eine Fehlermeldung erscheint*
|
||||||
|
Siehe [Öffentliche Schlüssel von alten Paketen (Backports) importieren](https://cdng.ddns.net/gitea/julian/raspberry-pi/src/master/oeffentliche-schluessel-importieren.md)
|
||||||
|
|
||||||
|
**Certbot installieren**
|
||||||
|
|
||||||
|
```xml
|
||||||
|
sudo apt install certbot -t jessie-backports -y
|
||||||
|
```
|
||||||
|
|
||||||
|
**nginx beenden**
|
||||||
|
|
||||||
|
```xml
|
||||||
|
sudo /etc/init.d/nginx stop
|
||||||
|
```
|
||||||
|
|
||||||
|
**Certbot ausführen**
|
||||||
|
|
||||||
|
```xml
|
||||||
|
sudo certbot certonly
|
||||||
|
```
|
||||||
|
(Option 2: Automatically use a temporary webserver, Adresse der Dynamischen DNS eingeben)
|
||||||
|
|
||||||
|
**nginx wieder starten**
|
||||||
|
|
||||||
|
```xml
|
||||||
|
sudo /etc/init.d/nginx start
|
||||||
|
```
|
||||||
|
|
||||||
|
**nginx-config bearbeiten**
|
||||||
|
|
||||||
|
```xml
|
||||||
|
sudo nano /etc/nginx/sites-available/default
|
||||||
|
```
|
||||||
|
-> Ändern:
|
||||||
|
|
||||||
|
```xml
|
||||||
|
…
|
||||||
|
server {
|
||||||
|
listen 443 ssl;
|
||||||
|
ssl_certificate /etc/letsencrypt/live/domain.xx/fullchain.pem;
|
||||||
|
ssl_certificate_key /etc/letsencrypt/live/domain.xx/privkey.pem;
|
||||||
|
…
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
**Zertifikat erneuern**
|
||||||
|
*Zertifikate laufen alle 90 Tage ab*
|
||||||
|
|
||||||
|
```xml
|
||||||
|
sudo -s
|
||||||
|
/etc/init.d/nginx stop
|
||||||
|
certbot certonly -d DOMAINNAME
|
||||||
|
/etc/init.d/nginx start
|
||||||
|
```
|
37
ssh-login-nachricht.md
Normal file
37
ssh-login-nachricht.md
Normal file
@ -0,0 +1,37 @@
|
|||||||
|
## SSH Willkommens-Nachricht ändern
|
||||||
|
|
||||||
|
## Nachricht *vor* Login
|
||||||
|
|
||||||
|
```xml
|
||||||
|
sudo nano /etc/ssh/sshd_config
|
||||||
|
```
|
||||||
|
-> Suchen (Ctrl+W): Banner
|
||||||
|
Ändern: Banner /etc/banner
|
||||||
|
|
||||||
|
**Nachricht erstellen**
|
||||||
|
|
||||||
|
```xml
|
||||||
|
sudo nano /etc/banner
|
||||||
|
```
|
||||||
|
-> Dort beliebige Nachricht einfügen
|
||||||
|
|
||||||
|
**SSH-Dienst neu starten**
|
||||||
|
|
||||||
|
```xml
|
||||||
|
sudo /etc/init.d/ssh restart
|
||||||
|
```
|
||||||
|
|
||||||
|
## Nachricht *nach* Login
|
||||||
|
|
||||||
|
**"Message of the Day" (MOTD) bearbeiten**
|
||||||
|
|
||||||
|
```xml
|
||||||
|
sudo nano /etc/motd
|
||||||
|
```
|
||||||
|
-> Dort beliebige Nachricht einfügen
|
||||||
|
|
||||||
|
**SSH-Dienst neu starten**
|
||||||
|
|
||||||
|
```xml
|
||||||
|
sudo /etc/init.d/ssh restart
|
||||||
|
```
|
Reference in New Issue
Block a user