Talaan ng mga Nilalaman:
2025 May -akda: John Day | [email protected]. Huling binago: 2025-01-13 06:58
Lumikha ng iyong sariling maaasahang cloud server
Hakbang 1: Hardware
- Gumamit ng isang metal box at pinturahan ito sa iyong paboritong kulay. (Gumamit ako ng isang lumang storage controller)
- Hobbycolor plate na lumalaban sa hindi bababa sa 75 C
- Raspberry pi 3
- Micro SD card (Gumamit ako ng 16GB ngunit maaari mong gamitin ang anumang laki> = 4GB)
- USB hub na may isang panlabas na power jack
- Usb sa mga adapter ng sata
- Mga disk drive
- Network cable + network wall socket
- Mga wire + power input jack
- Narekober ang mga bolt mula sa serial o vga port ng lumang computer
- Ang mga port ng usb ay nakuhang muli mula sa lumang computer
Ang Raspberry pi ay nakakabit sa hobbycolor plate na may bolts mula sa vga port.
Ang mga disk ay nakakabit na may regular na bolts sa likuran.
Hakbang 2: Mga kable
Kumokonekta ang power input jack sa parehong nakuhang mga usb port
Ang unang usb (sa likod ng lahat ng mga wire sa harap na kaliwa) ay ginagamit bilang isang mapagkukunan ng kuryente, ang pula at itim na mga wire lamang ang ginagamit at konektado sa power input jack. Ang unang usb cable sa port na ito ay nagbibigay ng lakas para sa pi, ang pangalawang usb cable ay nagbibigay ng lakas sa USB hub.
Ang pangalawang usb (ang nasa likuran - kapaki-pakinabang para sa pagkonekta ng karagdagang mga aparato) ay may pula at itim na konektado nang direkta sa pag-input ng kuryente, habang ang puti at berde ng bawat port ay konektado sa isang usb cable na nakuha mula sa ilang mga lumang mouse (direkta ang mga puti konektado sa pi)
Kinokonekta ng Lan cable ang panlabas na socket ng pader ng network sa raspberry pi LAN port
Ang mga disk ay konektado sa pamamagitan ng usb sa mga adaptor ng sata sa panlabas na pinagagana ng USB hub (ang mga mas malaking kapasidad na disk ay nangangailangan ng mas maraming lakas at hindi namin nais na gawing hindi matatag ang pi), na konektado sa isa sa mga port ng pi
Hakbang 3: Software
I-install ang Operating System
Gumamit ng Centos 7 para sa braso para sa mas mataas na seguridad. (https://mirror.centos.org/altarch/7/isos/armhfp/); nasubukan: CentOS-Userland-7-armv7hl-Minimal-1611-RaspberryPi3.img.xz, tutorial dito:
Ilagay ang imahe sa micro sd card mula sa iyong Linux computer (para sa windows check:
xzcat CentOS-Userland-7-armv7hl-Minimal-1611-RaspberryPi3.img.xz | sudo dd ng = $ / path / to / sd / card status = pagsulong bs = 4M
root password: centos
gumamit ng nmtui upang i-configure ang network at magtakda ng isang static ip address
I-setup ang mga disk
Lumikha ng isang pagkahati sa bawat disk (mas mahusay na maging isang maliit na mas maliit kaysa sa buong disk - sabihin nating mas maliit ang 1GB - iba't ibang mga disk ng parehong kapasidad - hal: wd vs toshiba - may iba't ibang laki:)). Sa ganitong paraan magiging ligtas ka kung kailangan mong palitan ang isa sa mga disk
Lumikha ng isang btrfs na pagsalakay ng 1 filesystem sa iyong mga disk
mkfs.btrfs -d raid1 -m raid1 / dev / sda1 / dev / sdb1
btrfs filesystem label / dev / sda1 rpi3
I-mount ang filesystem gamit ang mga autof (pinipigilan ang hindi pag-boot ng pi kung may mali sa mga disk)
yum install -y mga autofs
idagdag ang fllowing sa /etc/auto.master:
/ - /etc/auto.ext-usb --timeout = 300
Lumikha /etc/auto.ext-usb kasama ang nilalaman:
/ srv -fstype = auto, compress = lzo, noatime: / dev / disk / by-label / rpi3
i-restart ang mga autof ng serbisyo
ls / srv, df -h, kumpirmahing naka-mount ito
I-install ang sarilingcloud
Mga Pangangailangan (apache, php, mariadb):
yum install -y httpd; yum install -y mod_ssl; yum install -y mariadb-server; yum install -y php *
I-install ang sarilingcloud 9 na katugma sa php54 na kasama ng centos7, isang mahusay na tutorial para doon:
download.owncloud.org/download/repositories…
Matapos ang sarilingcloud ay nakabukas at tumatakbo, ilipat ang data dir mula sa default na lokasyon sa mga bagong drive (/ srv)
ihinto ang serbisyo
i-edit /var/www/html/owncloud/config/config.php at gawin ang pagbabagong ito:
'datadirectory' => '/ srv / owncloud / data', mkdir / srv / sarilingcloud; mv / var / www / html / owncloud / data / srv / owncloud && chown -R apache: apache / srv / owncloud / data /
serbisyo httpd magsimula
Maaari kang mag-install ng sarilingcloud desktop client sa linux / windows at para sa mga telepono na ginagamit ko ang folder
-
Paganahin at i-configure ang SELinux
(nagtatrabaho bersyon ay: selinux-patakaran-3.13.1-166.el7.5.noarch, selinux-patakaran-target-3.13.1-166.el7.5.noarch)
tiyaking hindi mo nai-update ang patakarang iyon (sa /etc/yum.conf idagdag: ibukod = selinux-patakaran *)
restorecon -Rv /
/boot/cmdline.txt dapat maglaman ng: selinux = 1 security = pagpapatupad ng selinux = 1
/ etc / sysconfig / selinux dapat maglaman: SELINUX = pagpapatupad at SELINUXTYPE = naka-target
i-reboot
Gawin ang mga sumusunod na setting pagkatapos ng pag-reboot:
yum install -yung policycoreutils-python
semange fcontext -a -t httpd_sys_rw_content_t /srv/owncloud(/.*)?
setebool -P httpd_builtin_scripting = 1; setebool -P httpd_can_network_connect = 1; setebool -P httpd_enable_cgi = 1; setebool -P httpd_graceful_shutdown = 1
kung nakatagpo ka ng anumang mga isyu ilagay ang sd card sa ibang computer at baguhin ang cmdline.txt na magkaroon ng: selinux = 0
I-secure ang iyong kahon
Baguhin ang root password
Lumikha ng iyong sarili ng isang gumagamit (adduser -s / bin / bash "ako") at magtakda ng isang malakas na password (passwd "ako")
i-configure ang sshd upang makinig sa ibang port at HUWAG payagan ang mga root login
Sa / etc / ssh / sshd_config, itakda ang Port
(sabihin nating 2222), PermitRootLogin no
Sabihin sa SELinux at firewalld tungkol sa mga hangarin mong wala:
port ng semanage -a -t ssh_port_t -p tcp 2222
service firewalld start && systemctl paganahin ang firewalld.service
firewall-cmd --permanent --add-port 2222 / tcp
firewall-cmd - muling i-load
serbisyo sshd restart
Gawing pampubliko
Sa iyong internet router ipasa ang mga port na ito sa iyong static ip na nakatakda sa unang hakbang: 80, 443, 2222.
I-setup ang DDNS sa iyong router upang ma-access mo ang iyong kahon mula sa kahit saan.
Fine tuning
Itakda ang apache sa 5 procs dahil mababa ang memorya:
/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
serbisyo httpd restart
I-setup ang cron sa lingguhang pag-scrub ng mga disk at gumawa ng snapshot bawat gabi (sa / 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))
suriin mula sa oras-oras ang lakas ng tunog na may: btrfs dev stats / srv
Gumamit ng watchdog upang awtomatikong i-reset kung ito ay naging hindi tumutugon (ang raspberry pi3 ay mayroong isang hardware):
yum install -yung watchdog
/etc/watchdog.conf
watchdog-aparato = / dev / watchdogwatchdog-timeout = 15
agwat = 1logtick = 1 log-dir = / var / log / watchdog
realtime = yespriority = 1
pagsisimula ng service watchdog && systemctl paganahin ang watchdog.service