Table des matières:

Boîte rouge : 3 étapes (avec photos)
Boîte rouge : 3 étapes (avec photos)

Vidéo: Boîte rouge : 3 étapes (avec photos)

Vidéo: Boîte rouge : 3 étapes (avec photos)
Vidéo: Boîte à explosion. Idée cadeau anniversaire, fête des mères, Noël. Tuto facile 2024, Juillet
Anonim
Boîte rouge
Boîte rouge

Créez votre propre serveur cloud fiable

Étape 1: Matériel

Matériel
Matériel
  • Utilisez une boîte en métal et peignez-la dans votre couleur préférée. (J'ai utilisé un ancien contrôleur de stockage)
  • Plaque Hobbycolor qui résiste à au moins 75 C
  • Framboise pi 3
  • Carte Micro SD (j'ai utilisé 16 Go mais vous pouvez utiliser n'importe quelle taille >= 4 Go)
  • Hub USB avec une prise d'alimentation externe
  • adaptateurs usb vers sata
  • Disques durs
  • Câble réseau + prise murale réseau
  • Fils + prise d'entrée d'alimentation
  • Boulons récupérés du port série ou vga de l'ancien ordinateur
  • Ports USB récupérés de l'ancien ordinateur

Raspberry pi est attaché à la plaque hobbycolor avec des boulons du port vga.

Les disques sont attachés avec des boulons réguliers à l'arrière.

Étape 2: Câblage

Câblage
Câblage

La prise d'entrée d'alimentation se connecte aux deux ports USB récupérés

Le premier usb (derrière tous les fils à l'avant gauche) est utilisé comme source d'alimentation, seuls les fils rouge et noir sont utilisés et connectés à la prise d'entrée d'alimentation. Le premier câble USB dans ce port alimente le pi, le deuxième câble USB alimente le concentrateur USB.

Le deuxième usb (celui à l'arrière - utile pour connecter des périphériques supplémentaires) a du rouge et du noir connectés directement à l'entrée d'alimentation, tandis que le blanc et le vert de chaque port sont connectés à un câble usb récupéré d'une vieille souris (les blancs directement connecté à pi)

Le câble LAN connecte la prise murale du réseau externe au port LAN raspberry pi

Les disques sont connectés via des adaptateurs USB vers SATA au concentrateur USB alimenté externe (les disques de plus grande capacité nécessitent plus de puissance et nous ne voulons pas rendre pi instable), qui est connecté à l'un des ports pi

Étape 3: Logiciel

Logiciel
Logiciel

Installer le système d'exploitation

Utilisez Centos 7 pour bras pour plus de sécurité. (https://mirror.centos.org/altarch/7/isos/armhfp/); testé: CentOS-Userland-7-armv7hl-Minimal-1611-RaspberryPi3.img.xz, tutoriel ici:

Mettez l'image sur la carte micro sd de votre ordinateur Linux (pour Windows, vérifiez:

xzcat CentOS-Userland-7-armv7hl-Minimal-1611-RaspberryPi3.img.xz | sudo dd of=$/path/to/sd/card status=progress bs=4M

mot de passe root: centos

utiliser nmtui pour configurer le réseau et définir une adresse IP statique

Configurer les disques

Créez une partition sur chaque disque (il vaut mieux être un peu plus petit que le disque entier - disons 1 Go plus petit - différents disques de même capacité - ex: wd vs toshiba - ont des tailles différentes:)). De cette façon, vous serez en sécurité si vous devez remplacer l'un des disques

Créez un système de fichiers btrfs raid 1 sur vos disques

mkfs.btrfs -d raid1 -m raid1 /dev/sda1 /dev/sdb1

étiquette du système de fichiers btrfs /dev/sda1 rpi3

Montez le système de fichiers en utilisant autofs (empêche le non démarrage de pi si quelque chose ne va pas avec les disques)

miam install -y autofs

ajoutez le suivant à /etc/auto.master:

/- /etc/auto.ext-usb --timeout=300

Créez /etc/auto.ext-usb avec le contenu:

/srv -fstype=auto, compress=lzo, noatime:/dev/disk/by-label/rpi3

service autofs redémarrer

ls /srv, df -h, confirme qu'il est monté

Installer owncloud

Prérequis (apache, php, mariadb):

miam install -y httpd; miam install -y mod_ssl; miam install -y mariadb-server; miam installer -y php*

Installez owncloud 9 qui est compatible avec php54 fourni avec centos7, un bon tutoriel pour ça:

download.owncloud.org/download/repositories…

Une fois owncloud opérationnel, déplacez le répertoire de données de l'emplacement par défaut vers les nouveaux lecteurs (/srv)

service httpd arrêter

éditez /var/www/html/owncloud/config/config.php et effectuez cette modification:

'datadirectory' => '/srv/owncloud/data', mkdir /srv/owncloud; mv /var/www/html/owncloud/data /srv/owncloud && chown -R apache:apache /srv/owncloud/data/

service httpd démarrer

Vous pouvez installer le client de bureau owncloud sur linux / windows et pour les téléphones, j'utilise foldersync

  • Activer et configurer SELinux

    (la version de travail est: selinux-policy-3.13.1-166.el7.5.noarch, selinux-policy-targeted-3.13.1-166.el7.5.noarch)

assurez-vous que vous ne mettez pas à jour cette politique (dans /etc/yum.conf, ajoutez: exclude = selinux-policy*)

restaurationcon -Rv /

/boot/cmdline.txt doit contenir: selinux=1 security=selinux enforcing=1

/etc/sysconfig/selinux doit contenir: SELINUX=enforcing et SELINUXTYPE=targeted

redémarrer

Effectuez les réglages suivants après le redémarrage:

miam install -y policycoreutils-python

semange fcontext -a -t httpd_sys_rw_content_t /srv/owncloud(/.*) ?

setsebool -P httpd_builtin_scripting=1; setsebool -P httpd_can_network_connect=1; setsebool -P httpd_enable_cgi=1; setsebool -P

si vous rencontrez des problèmes, insérez la carte SD dans un autre ordinateur et modifiez cmdline.txt pour avoir: selinux=0

Sécurisez votre box

Changer le mot de passe root

Créez-vous un utilisateur (adduser -s /bin/bash "me") et définissez un mot de passe fort (passwd "me")

configurer sshd pour écouter sur un autre port et ne PAS autoriser les connexions root

Dans /etc/ssh/sshd_config, définissez le port

(disons 2222), PermitRootLogin non

Informez SELinux et firewalld de vos intentions:

semanage port -a -t ssh_port_t -p tcp 2222

service firewalld start && systemctl activer firewalld.service

firewall-cmd --permanent --add-port 2222/tcp

pare-feu-cmd --reload

redémarrage du service sshd

Rendez-le public

Sur votre routeur Internet, transférez ces ports à votre ensemble d'adresses IP statiques dans la première étape: 80, 443, 2222.

Configurez le DDNS sur votre routeur pour pouvoir accéder à votre box de n'importe où.

Réglage fin

Définissez Apache sur 5 procs car la mémoire est faible:

/etc/httpd/conf.modules.d/00-mpm.conf

LoadModule mpm_prefork_module modules/mod_mpm_prefork.so

Serveurs de démarrage 5

MinSpareServers 5

MaxSpareServers 5

ServerLimit 5

MaxClients 5

MaxRequestsPerChild 3000

service httpd redémarrer

Configurez cron pour nettoyer les disques chaque semaine et faire un instantané chaque nuit (dans /etc/crontab)

01 02 * * 6 root btrfs scrub start /srv01 01 * * * root /usr/sbin/btrfs instantané de sous-volume -r /srv /srv/@$(printf "\%s" $(/bin/date +\%d \%b\%Y-\%k-\%M))

vérifier de temps en temps le volume avec: btrfs dev stats /srv

Utilisez watchdog pour réinitialiser automatiquement s'il ne répond plus (raspberry pi3 en a un matériel):

miam install -y chien de garde

/etc/chien de garde.conf

watchdog-device = /dev/watchdogwatchdog-timeout = 15

intervalle = 1logtick = 1 log-dir = /var/log/watchdog

temps réel = ouipriorité = 1

service watchdog start && systemctl enable watchdog.service

Conseillé: