היום, אנחנו נדבר על איך לסנכרן קבצים באמצעות rsync עם יציאת SSH בלתי רגילה. אתם עשויים לתהות למה אנחנו צריכים להשתמש ביציאת SSH בלתי רגילה? זה בגלל סיבות הבטחון. כולם יודעים ש-22 היא יציאת SSH המוגדרת כברירת מחדל.

לכן, חובה לשנות את מספר יציאת ה-SSH המוגדרת כברירת מחדל שלכם למספר שונה שקשה מאוד לנחש. במקרים כאלה, איך תסנכרן את הקבצים/תיקיות שלך עם השרת המרוחק שלך? אל דאגה, זה לא כל כך מסובך. כאן נראה איך לסנכרן קבצים ותיקיות באמצעות rsync עם יציאת SSH בלתי רגילה.
כפי שאתם יודעים, rsync, הידוע גם בשם Remote Sync, הוא כלי מהיר, גמיש ועוצמתי שיכול לשמש להעתיק ולסנכרן קבצים/תיקיות ממחשב מקומי למחשב מקומי, או ממחשב מקומי לשרתים מרוחקים. לפרטים נוספים על rsync, ראו עמודי הרשומות:
# man rsync
או התייחסו למדריך הקודם שלנו מהקישור למטה.
שינוי יציאת SSH ליציאה בלתי רגילה
כמו שכולנו יודעים, כברירת מחדל rsync משתמש ביציאת SSH המוגדרת כברירת מחדל 22 כדי לסנכרן קבצים ממחשב מקומי לשרתים מרוחקים ולהיפך. עלינו לשנות את יציאת ה-SSH של השרת המרוחק שלנו כדי לחזק את האבטחה.
כדי לעשות זאת, פתחו וערכו את קובץ התצורה של SSH /etc/ssh/sshd_config:
# vi /etc/ssh/sshd_config
מצאו את השורה הבאה. בטלו את הסימון ושנו את מספר היציאה למספר שתבחרו. אני ממליץ לבחור מספר שקשה מאוד לנחש.
וודא שאתה משתמש במספר ייחודי שאינו בשימוש בשירותים קיימים. בדוק את מאמר ה-netstat כדי לדעת אילו שירותים פועלים על אילו יציאות TCP/UDP.
לדוגמה, כאן אני משתמש במספר יציאה 1431.
[...] Port 1431 [...]
שמור וסגור את הקובץ.
במערכות המבוססות על RPM כמו RHEL, CentOS, ו-Scientific Linux 7, עליך לאפשר את היציאה החדשה דרך הגנת האש או הנתב שלך.
# firewall-cmd --add-port 1431/tcp # firewall-cmd --add-port 1431/tcp --permanent
ב-RHEL/CentOS/Scientific Linux 6 ומעלה, עליך גם לעדכן את ההרשאות של selinux כדי לאפשר את היציאה.
# iptables -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 1431 -j ACCEPT # semanage port -a -t ssh_port_t -p tcp 1431
לבסוף, אתחל את שירות SSH כדי שהשינויים ייכנסו לתוקף.
# systemctl restart sshd [On SystemD] OR # service sshd restart [On SysVinit]
עכשיו נראה איך לסנכרן קבצים באמצעות rsync עם יציאה לא סטנדרטית.
איך לסנכרן עם יציאת SSH לא סטנדרטית
הרץ את הפקודה הבאה מהטרמינל כדי לסנכרן קבצים/תיקיות באמצעות rsync עם יציאת ssh לא סטנדרטית.
תחביר:
# rsync -arvz -e 'ssh -p <port-number>' --progress --delete user@remote-server:/path/to/remote/folder /path/to/local/folder
לצורך המדריך הזה, אני אשתמש בשני מערכות.
פרטי המערכת המרוחקת:
IP Address: 192.168.1.103 User name: tecmint Sync folder: /backup1
פרטי המערכת המקומית:
Operating System: Ubuntu 14.04 Desktop IP Address: 192.168.1.100 Sync folder: /home/sk/backup2
נסנכרן את תוכן התיקייה /backup1
של השרת המרוחק לתיקיית המערכת המקומית שלי /home/sk/backup2/
.
$ sudo rsync -arvz -e 'ssh -p 1431' --progress --delete [email protected]:/backup1 /home/sk/backup2
פלט דוגמה
[email protected]'s password: receiving incremental file list backup1/ backup1/linux-headers-4.3.0-040300-generic_4.3.0-040300.201511020949_amd64.deb 752,876 100% 13.30MB/s 0:00:00 (xfr#1, to-chk=2/4) backup1/linux-headers-4.3.0-040300_4.3.0-040300.201511020949_all.deb 9,676,510 100% 12.50MB/s 0:00:00 (xfr#2, to-chk=1/4) backup1/linux-image-4.3.0-040300-generic_4.3.0-040300.201511020949_amd64.deb 56,563,302 100% 11.26MB/s 0:00:04 (xfr#3, to-chk=0/4) sent 85 bytes received 66,979,455 bytes 7,050,477.89 bytes/sec total size is 66,992,688 speedup is 1.00.
נבדוק את תוכן התיקייה /backup1/
בשרת המרוחק.
$ sudo ls -l /backup1/
פלט דוגמה
total 65428 -rw-r--r-- 1 root root 9676510 Dec 9 13:44 linux-headers-4.3.0-040300_4.3.0-040300.201511020949_all.deb -rw-r--r-- 1 root root 752876 Dec 9 13:44 linux-headers-4.3.0-040300-generic_4.3.0-040300.201511020949_amd64.deb -rw-r--r-- 1 root root 56563302 Dec 9 13:44 linux-image-4.3.0-040300-generic_4.3.0-040300.201511020949_amd64.deb
עכשיו, נבדוק את תוכן התיקייה /backup2/
של המערכת המקומית.
$ ls /home/sk/backup2/
backup1
כפי שאתם רואים בתוצאה העליונה, התוכן של /backup1/
נקרע בהצלחה לתוך התיקייה /home/sk/backup2/
של המערכת המקומית שלי.
בדיקת /backup1/
אוסף התוכניות:
$ ls /home/sk/backup2/backup1/
תוצאה דוגמה
linux-headers-4.3.0-040300_4.3.0-040300.201511020949_all.deb linux-image-4.3.0-040300-generic_4.3.0-040300.201511020949_amd64.deb linux-headers-4.3.0-040300-generic_4.3.0-040300.201511020949_amd64.deb
רואים, של התיקייה הרחוקה והמקומית יש את אותם הקבצים.
הסיכוי
הסדרת קבצים/תיקים באמצעות Rsync עם SSH היא לא רק שיטה קלה, אלא גם מהירה ובטוחה. אם אתם מאחורי מחסום שמגביל את פורט 22, אין דאגה. פשוט שנה את הפורט המקובל וסינק קבצים כמו מקצועי.
Source:
https://www.tecmint.com/sync-files-using-rsync-with-non-standard-ssh-port/