תוכן עניינים:
2025 מְחַבֵּר: John Day | [email protected]. שונה לאחרונה: 2025-01-13 06:57
צור שרת ענן אמין משלך
שלב 1: חומרה
- השתמש בקופסת מתכת וצבע אותה בצבע האהוב עליך. (השתמשתי בבקר אחסון ישן)
- צלחת תחביבי צבע העמידה על 75 מעלות צלזיוס לפחות
- פטל פאי 3
- כרטיס מיקרו SD (השתמשתי ב -16 GB אבל אתה יכול להשתמש בכל גודל> = 4 GB)
- רכזת USB עם שקע חשמל חיצוני
- מתאמי USB ל- sata
- כונני דיסקים
- כבל רשת + שקע רשת לקיר
- חוטים + שקע כניסת חשמל
- ברגים התאוששו מיציאה טורית או של vga של המחשב הישן
- יציאות USB התאוששו מהמחשב הישן
פטל פאי מחובר לצלחת התחביב עם ברגים מיציאת vga.
דיסקים מחוברים עם ברגים רגילים על הגב.
שלב 2: חיווט
שקע כניסת חשמל מתחבר לשתי יציאות ה- USB ששוחזרו
ה- usb הראשון (מאחורי כל החוטים מלפנים משמאל) משמש כמקור מתח, רק חוטים אדומים ושחורים משמשים ומחוברים לשקע כניסת החשמל. כבל ה- USB הראשון ביציאה זו מספק כוח ל- pi, כבל ה- usb השני מספק מתח לרכזת ה- USB.
ל- usb השני (זה מאחור - שימושי לחיבור התקנים נוספים) יש אדום ושחור המחובר ישירות לקלט החשמל, בעוד הלבן והירוק של כל יציאה מחובר לכבל USB ששוחזר מכבר עכבר ישן (הלבן ישירות מחובר ל- pi)
כבל Lan מחבר את שקע הרשת החיצוני ליציאת ה- LAN פטל
דיסקים מחוברים באמצעות usb למתאמי sata לרכזת ה- USB החיצונית המופעלת (דיסקים בעלי קיבולת גדולה יותר דורשים יותר כוח ואיננו רוצים להפוך את pi ליציב), המחובר באחת מיציאות ה- pi
שלב 3: תוכנה
התקן את מערכת ההפעלה
השתמש ב- Centos 7 לזרוע לאבטחה גבוהה יותר. (https://mirror.centos.org/altarch/7/isos/armhfp/); נבדק: CentOS-Userland-7-armv7hl-Minimal-1611-RaspberryPi3.img.xz, הדרכה כאן:
שים את התמונה על כרטיס ה- micro sd ממחשב Linux שלך (עבור חלונות בדוק:
xzcat CentOS-Userland-7-armv7hl-Minimal-1611-RaspberryPi3.img.xz | sudo dd של = $/path/to/sd/card status = התקדמות bs = 4M
סיסמת שורש: centos
השתמש ב- nmtui כדי להגדיר את הרשת ולהגדיר כתובת IP סטטית
התקן את הדיסקים
צור מחיצה אחת על כל דיסק (עדיף שיהיה קצת יותר קטן מהדיסק כולו - נניח קטן יותר ב -1 ג'יגה -בייט - דיסקים שונים בעלי אותה קיבולת - למשל: wd לעומת טושיבה - בעלי גדלים שונים:)). כך תהיה בטוח אם תצטרך להחליף אחת מהדיסקים
צור מערכת קבצים btrfs raid 1 על הדיסקים שלך
mkfs.btrfs -d raid1 -m raid1 /dev /sda1 /dev /sdb1
תווית מערכת הקבצים btrfs /dev /sda1 rpi3
התקן את מערכת הקבצים באמצעות הגדרות אוטומטיות (מונע אי הפעלה של pi אם משהו משתבש בדיסקים)
yum להתקין -y autofs
צרף את הזרימה ל- /etc/auto.master:
/-/etc/auto.ext-usb-timeout = 300
צור /etc/auto.ext-usb עם התוכן:
/srv -fstype = auto, compress = lzo, noatime:/dev/disk/by -label/rpi3
הפעלה אוטומטית של שירות מחדש
ls /srv, df -h, אשר שהוא מותקן
התקן owncloud
תנאים מוקדמים (apache, php, mariadb):
יום ההתקנה -י httpd; יום ההתקנה -y mod_ssl; yum להתקין -y mariadb -server; yum להתקין -y php*
התקן owncloud 9 התואם ל- php54 שמגיע עם centos7, הדרכה טובה לכך:
download.owncloud.org/download/repositories…
לאחר ש- owncloud פועל, העבר את נתוני הנתונים ממיקום ברירת המחדל לכוננים החדשים (/srv)
שירות httpd stop
ערוך /var/www/html/owncloud/config/config.php ובצע את השינוי הבא:
'datadirectory' => '/srv/owncloud/data', mkdir /srv /owncloud; mv/var/www/html/owncloud/data/srv/owncloud && chown -R apache: apache/srv/owncloud/data/
שירות httpd התחלה
אתה יכול להתקין לקוח שולחן עבודה owncloud על לינוקס / חלונות ולטלפונים בהם אני משתמש ב- folderync
-
הפעל והגדר את SELinux
(גרסת העבודה היא: selinux-policy-3.13.1-166.el7.5.noarch, selinux-policy-targeted-3.13.1-166.el7.5.noarch)
וודא שאתה לא מעדכן את המדיניות הזו (ב- /etc/yum.conf append: exclude = selinux-policy*)
שחזור -Rv /
/boot/cmdline.txt צריך להכיל: selinux = 1 אבטחה = selinux אכיפה = 1
/etc/sysconfig/selinux צריך להכיל: SELINUX = אכיפה ו- SELINUXTYPE = ממוקד
לְאַתחֵל
בצע את ההגדרות הבאות לאחר אתחול מחדש:
יאם התקן -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
אם אתה נתקל בבעיות הכנס כרטיס SD למחשב אחר ושנה את cmdline.txt כך שיהיה: selinux = 0
אבטח את הקופסה שלך
שנה את סיסמת השורש
צור לעצמך משתמש (adduser -s /bin /bash "me") והגדר סיסמה חזקה (passwd "me")
הגדר את sshd להאזנה ביציאה אחרת ואל תאפשר כניסת שורש
ב/etc/ssh/sshd_config, הגדר Port
(נניח 2222), PermitRootLogin no
ספר ל- SELinux ול- firewalld על כוונותיך:
semanage port -a -t ssh_port_t -p tcp 2222
service firewalld start && systemctl אפשר firewalld.service
firewall-cmd-permanent-add-port 2222/tcp
firewall-cmd-טען מחדש
שירות sshd הפעלה מחדש
הפוך אותו לציבורי
בנתב האינטרנט שלך העבר יציאות אלה למערך ה- IP הסטטי שלך בשלב הראשון: 80, 443, 2222.
הגדר DDNS בנתב שלך כך שתוכל לגשת לקופסה שלך מכל מקום.
כוונון עדין
הגדר אפאצ'י ל -5 פעולות מכיוון שהזיכרון נמוך:
/etc/httpd/conf.modules.d/00-mpm.conf
LoadModule mpm_prefork_module modules/mod_mpm_prefork.so
שרתים Start 5
MinSpareServers 5
MaxSpareServers 5
ServerLimit 5
MaxClients 5
MaxRequestsPerChild 3000
שירות httpd הפעלה מחדש
הגדר את cron לשפשף מדי שבוע את הדיסקים ולצלם כל לילה (ב- /etc /crontab)
01 02 * * 6 root btrfs scrub start/srv01 01 * * * root/usr/sbin/btrfs תמונת מצב תת -נפח -r/srv/srv/@$ (printf "\%s" $ (/bin/date +\%d \%b \%Y-\%k-\%M))
בדוק מדי פעם את עוצמת הקול עם: btrfs dev stats /srv
השתמש בכלב השמירה לאיפוס אוטומטי אם הוא לא מגיב (לפטל pi3 יש חומרה):
yum להתקין -כלב שמירה
/etc/watchdog.conf
שמירה-מכשיר = /dev /watchdogwatchdog-timeout = 15
interval = 1logtick = log-dir =/var/log/כלב שמירה
בזמן אמת = yespriority = 1
start כלב השמירה && systemctl אפשר watchdog.service