Inhoudsopgave:

Rode doos: 3 stappen (met afbeeldingen)
Rode doos: 3 stappen (met afbeeldingen)

Video: Rode doos: 3 stappen (met afbeeldingen)

Video: Rode doos: 3 stappen (met afbeeldingen)
Video: Wacht tot je Ziet hoe de Mooiste Tweeling ter Wereld er NU Uitziet! 2024, November
Anonim
Rode Doos
Rode Doos

Creëer uw eigen betrouwbare cloudserver

Stap 1: Hardware

Hardware
Hardware
  • Gebruik een metalen doos en verf deze in je favoriete kleur. (Ik gebruikte een oude opslagcontroller)
  • Hobbycolor plaat die bestand is tegen minimaal 75 C
  • Frambozenpi 3
  • Micro SD-kaart (ik gebruikte 16 GB, maar je kunt elke grootte >= 4 GB gebruiken)
  • USB-hub met een externe voedingsaansluiting
  • Usb naar sata-adapters
  • Schijfstations
  • Netwerkkabel + netwerkwandcontactdoos
  • Draden + voedingsingang
  • Bouten hersteld van de seriële of vga-poort van de oude computer
  • Usb-poorten hersteld van oude computer

Raspberry pi is bevestigd aan de hobbycolor-plaat met bouten van de vga-poort.

Schijven worden aan de achterkant met gewone bouten bevestigd.

Stap 2: Bedrading

Bedrading
Bedrading

Voedingsingang kan worden aangesloten op beide herstelde USB-poorten

Eerste usb (achter alle draden linksvoor) wordt gebruikt als stroombron, alleen rode en zwarte draden worden gebruikt en aangesloten op de stroomingang. De eerste usb-kabel in deze poort levert stroom voor de pi, de tweede usb-kabel levert stroom aan de USB-hub.

Tweede usb (die aan de achterkant - handig voor het aansluiten van extra apparaten) heeft rood en zwart rechtstreeks aangesloten op de stroomingang, terwijl het wit en groen van elke poort is aangesloten op een usb-kabel die is hersteld van een oude muis (de witte direct aangesloten op pi)

Lan-kabel verbindt de externe netwerkwandcontactdoos met de Raspberry pi LAN-poort

Schijven worden via usb naar sata-adapters aangesloten op de extern gevoede USB-hub (schijven met grotere capaciteit hebben meer stroom nodig en we willen pi niet onstabiel maken), die is aangesloten op een van de pi-poorten

Stap 3: Software

Software
Software

Installeer het besturingssysteem

Gebruik Centos 7 voor arm voor meer veiligheid. (https://mirror.centos.org/altarch/7/isos/armhfp/); getest: CentOS-Userland-7-armv7hl-Minimal-1611-RaspberryPi3.img.xz, tutorial hier:

Zet de afbeelding op de micro sd kaart van je Linux computer (voor windows check:

xzcat CentOS-Userland-7-armv7hl-Minimal-1611-RaspberryPi3.img.xz | sudo dd van=$/pad/naar/sd/kaart status=voortgang bs=4M

root-wachtwoord: centos

gebruik nmtui om het netwerk te configureren en een statisch ip-adres in te stellen

De schijven instellen

Maak één partitie op elke schijf (het is beter om iets kleiner te zijn dan de hele schijf - laten we zeggen 1 GB kleiner - verschillende schijven met dezelfde capaciteit - bijvoorbeeld: wd vs toshiba - hebben verschillende groottes:)). Op deze manier ben je veilig als je een van de schijven moet vervangen

Maak een btrfs raid 1-bestandssysteem op uw schijven

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

btrfs bestandssysteem label /dev/sda1 rpi3

Mount het bestandssysteem met behulp van autofs (voorkomt niet-opstarten van pi als er iets misgaat met de schijven)

yum install -y autofs

voeg de stroom toe aan /etc/auto.master:

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

Maak /etc/auto.ext-usb aan met de inhoud:

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

service autofs herstart

ls /srv, df -h, bevestig dat het is gemount

Eigencloud installeren

Vereisten (apache, php, mariadb):

yum install -y httpd;yum install -y mod_ssl; yum install -y mariadb-server; yum install -y php*

Installeer owncloud 9 die compatibel is met php54 die bij centos7 wordt geleverd, een goede tutorial daarvoor:

download.owncloud.org/download/repositories…

Nadat owncloud actief is, verplaatst u de gegevensmap van de standaardlocatie naar de nieuwe schijven (/srv)

service httpd stop

bewerk /var/www/html/owncloud/config/config.php en breng deze wijziging aan:

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

dienst httpd start

U kunt owncloud desktop-client installeren op linux / windows en voor telefoons gebruik ik foldersync

  • Activeer en configureer SELinux

    (werkende versie is: selinux-policy-3.13.1-166.el7.5.noarch, selinux-policy-targeted-3.13.1-166.el7.5.noarch)

zorg ervoor dat je dat beleid niet bijwerkt (in /etc/yum.conf append:exclude = selinux-policy*)

herstelcon -Rv /

/boot/cmdline.txt zou moeten bevatten: selinux=1 security=selinux enforcing=1

/etc/sysconfig/selinux zou moeten bevatten: SELINUX=enforcing en SELINUXTYPE=targeted

opnieuw opstarten

Maak de volgende instellingen na het opnieuw opstarten:

yum 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

als u problemen ondervindt, plaatst u de sd-kaart in een andere computer en wijzigt u cmdline.txt om het volgende te hebben: selinux=0

Beveilig je box

Wijzig root-wachtwoord

Maak een gebruiker aan (adduser -s /bin/bash "me") en stel een sterk wachtwoord in (passwd "me")

configureer sshd om op een andere poort te luisteren en sta GEEN root-aanmeldingen toe

In /etc/ssh/sshd_config, stel Poort in

(laten we zeggen 2222), PermitRootLogin no

Vertel SELinux en firewalld over je bedoelingen:

semanage-poort -a -t ssh_port_t -p tcp 2222

service firewalld start && systemctl firewalld.service inschakelen

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

firewall-cmd --reload

service sshd opnieuw opstarten

Maak het openbaar

Stuur deze poorten op uw internetrouter door naar uw statische ip-set in de eerste stap: 80, 443, 2222.

Stel DDNS in op je router, zodat je overal toegang hebt tot je box.

Scherpstellen

Stel apache in op 5 processen omdat het geheugen laag is:

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

LoadModule mpm_prefork_module modules/mod_mpm_prefork.so

Start Servers 5

MinSpareServers 5

MaxSpareServers 5

Serverlimiet 5

MaxClients 5

MaxRequestsPer Kind 3000

service httpd herstart

Stel cron in om wekelijks de schijven te scrubben en elke nacht een momentopname te maken (in /etc/crontab)

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

controleer van tijd tot tijd het volume met: btrfs dev stats /srv

Gebruik watchdog om automatisch te resetten als deze niet meer reageert (raspberry pi3 heeft een hardwareversie):

yum install -y watchdog

/etc/watchdog.conf

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

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

realtime = japrioriteit = 1

service watchdog start && systemctl activeer watchdog.service

Aanbevolen: