Índice:

Caixa Vermelha: 3 etapas (com imagens)
Caixa Vermelha: 3 etapas (com imagens)

Vídeo: Caixa Vermelha: 3 etapas (com imagens)

Vídeo: Caixa Vermelha: 3 etapas (com imagens)
Vídeo: O POLICIAL 😱😰 2024, Novembro
Anonim
Caixa Vermelha
Caixa Vermelha

Crie seu próprio servidor de nuvem confiável

Etapa 1: Hardware

Hardware
Hardware
  • Use uma caixa de metal e pinte em sua cor favorita. (Eu usei um controlador de armazenamento antigo)
  • Placa Hobbycolor que resiste a pelo menos 75 C
  • Framboesa pi 3
  • Cartão Micro SD (usei 16 GB, mas você pode usar qualquer tamanho> = 4 GB)
  • Hub USB com entrada de alimentação externa
  • Adaptadores USB para SATA
  • Unidades de disco
  • Cabo de rede + tomada de rede
  • Fios + conector de entrada de energia
  • Parafusos recuperados da porta serial ou vga do computador antigo
  • Portas USB recuperadas do computador antigo

Raspberry pi é preso à placa do hobbycolor com parafusos da porta vga.

Os discos são presos com parafusos regulares na parte traseira.

Etapa 2: Fiação

Fiação
Fiação

O conector de entrada de energia se conecta a ambas as portas usb recuperadas

Primeiro usb (atrás de todos os fios na frente esquerda) é usado como fonte de alimentação, apenas os fios vermelho e preto são usados e conectados ao conector de entrada de energia. O primeiro cabo usb nesta porta fornece energia para o pi, o segundo cabo usb fornece energia para o hub USB.

O segundo usb (o da parte de trás - útil para conectar dispositivos adicionais) tem vermelho e preto conectado diretamente à entrada de alimentação, enquanto o branco e o verde de cada porta são conectados a um cabo USB recuperado de algum mouse antigo (os brancos diretamente conectado ao pi)

O cabo LAN conecta a tomada de parede da rede externa à porta LAN do raspberry pi

Os discos são conectados via USB a adaptadores sata ao hub USB com alimentação externa (discos de maior capacidade requerem mais energia e não queremos tornar o pi instável), que é conectado em uma das portas pi

Etapa 3: Software

Programas
Programas

Instale o sistema operacional

Use Centos 7 para armar para maior segurança. (https://mirror.centos.org/altarch/7/isos/armhfp/); testado: CentOS-Userland-7-armv7hl-Minimal-1611-RaspberryPi3.img.xz, tutorial aqui:

Coloque a imagem no cartão micro SD do seu computador Linux (para Windows, verifique:

xzcat CentOS-Userland-7-armv7hl-Minimal-1611-RaspberryPi3.img.xz | sudo dd de = $ / caminho / para / sd / status do cartão = progresso bs = 4M

senha de root: centos

use nmtui para configurar a rede e definir um endereço IP estático

Configure os discos

Crie uma partição em cada disco (é melhor ser um pouco menor que o disco inteiro - digamos 1 GB menor - discos diferentes com a mesma capacidade - ex: wd vs toshiba - têm tamanhos diferentes:)). Desta forma, você estará seguro se precisar substituir um dos discos

Crie um sistema de arquivos btrfs raid 1 em seus discos

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

rótulo do sistema de arquivos btrfs / dev / sda1 rpi3

Monte o sistema de arquivos usando autofs (evita a não inicialização do pi se algo der errado com os discos)

yum install -y autofs

anexe o fluxo a /etc/auto.master:

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

Crie /etc/auto.ext-usb com o conteúdo:

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

reiniciar autofs de serviço

ls / srv, df -h, confirme se está montado

Instale o owncloud

Pré-requisitos (apache, php, mariadb):

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

Instale o owncloud 9 que é compatível com php54 que vem com centos7, um bom tutorial para isso:

download.owncloud.org/download/repositories…

Depois que o owncloud estiver instalado e funcionando, mova o diretório de dados do local padrão para as novas unidades (/ srv)

serviço httpd parar

edite /var/www/html/owncloud/config/config.php e faça esta alteração:

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

serviço httpd start

Você pode instalar o cliente de desktop owncloud em linux / windows e para telefones eu uso o foldersync

  • Habilite e configure o SELinux

    (a versão de trabalho é: selinux-policy-3.13.1-166.el7.5.noarch, selinux-policy-oriented-3.13.1-166.el7.5.noarch)

certifique-se de não estar atualizando essa política (em /etc/yum.conf append: exclude = selinux-policy *)

restorecon -Rv /

/boot/cmdline.txt deve conter: selinux = 1 security = selinux enforcing = 1

/ etc / sysconfig / selinux deve conter: SELINUX = enforcing e SELINUXTYPE = target

reinício

Faça as seguintes configurações após a reinicialização:

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 httpd_graceful_shutdown = 1

se você encontrar qualquer problema, coloque o cartão SD em outro computador e modifique o cmdline.txt para ter: selinux = 0

Proteja sua caixa

Alterar senha de root

Crie um usuário (adduser -s / bin / bash "me") e defina uma senha forte (passwd "me")

configure o sshd para escutar em outra porta e NÃO permita logins de root

Em / etc / ssh / sshd_config, defina a porta

(digamos 2222), PermitRootLogin no

Conte ao SELinux e ao firewalld sobre suas intenções:

semanage port -a -t ssh_port_t -p tcp 2222

service firewalld start && systemctl enable firewalld.service

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

firewall-cmd --reload

reiniciar serviço sshd

Torne-o público

Em seu roteador de Internet, encaminhe essas portas para seu ip estático definido na primeira etapa: 80, 443, 2222.

Configure o DDNS em seu roteador para que você possa acessar sua caixa de qualquer lugar.

Afinação

Defina o apache para 5 procs, pois a memória está baixa:

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

LoadModule mpm_prefork_module modules / mod_mpm_prefork.so

StartServers 5

MinSpareServers 5

MaxSpareServers 5

ServerLimit 5

MaxClients 5

MaxRequestsPerChild 3000

reinicialização de httpd de serviço

Configure o cron para limpar semanalmente os discos e fazer um instantâneo todas as noites (em / etc / crontab)

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

verifique de vez em quando o volume com: btrfs dev stats / srv

Use watchdog para redefinir automaticamente se ele deixar de responder (o raspberry pi3 tem um hardware):

yum install -y watchdog

/etc/watchdog.conf

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

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

tempo real = simprioridade = 1

service watchdog start && systemctl enable watchdog.service

Recomendado: