גיבוי והחזרה מגיבוי של בלוג וורדפרס

הסבר על עבודה עם תוסף גיבוי וכיצד להשתמש בקובץ שהוא שולח למייל כדי להחזיר את האתר לחיים לאחר פריצה.

לפני כשבוע, קצת לפני ריצת הבוקר שלי, בדקתי כרגיל את המייל שלי וראיתי פתאום מייל מברוך בורשטיין, אחד מקוראי האתר, שבו נכתב: "ראית שהאתר שלך נפרץ?". מיד אצתי רצתי לאתר וראיתי שאכן הוא נפרץ ועל הדף הראשי ראיתי תמונה יפה שקראה לאיטבח אל יהוד או משהו בסגנון.

אחד הדברים החשובים ביותר בהגנה מפני פריצות לאתר הוא מחשבה מה יקרה לאחר הפריצה. בדיוק בשביל זה חשוב שיהיה לנו גם גיבוי של הקבצים הפיזיים של אתר הוורדפרס וגם גיבוי של מסד הנתונים. למה? כיוון שאז אפשר להחזיר לחיים תוך מספר דקות את האתר הפרוץ, לוודא מהיכן הפריצה, להקשיח את ההגנה ולהמשיך בחיינו. שזה בדיוק מה שעשיתי. מטרת הפורץ (או במקרה הזה סקריפט הפריצה) להטיל אימה, להרגיז ולהציק באופן כללי – לא הושגה. תוך 15 דקות האתר הועלה בחזרה לאוויר ויכולתי להשקיע בשופי ובנחת את הזמן כדי להבין כיצד הפריצה התרחשה ולאטום את הפרצה.

במאמר הזה אני אסביר באופן לא טכני כיצד לגבות ולהחזיר מגיבוי מסד נתונים של בלוג וורדפרס.

ראשית, מה ההבדל בין קבצים פיזיים למסד נתונים? קבצים פיזיים הם קבצי התוכנה (במקרה שלנו וורדפרס) בעוד שמסד הנתונים הוא המידע שאצור בוורדפרס – כל הפוסטים, ההגדרות והתגובות. בקבצים הפיזיים יש את הקבצים שהעלינו ואת תבנית העיצוב שלנו וקל לגבות אותם. כל מה שצריך לעשות זה להכנס באמצעות תוכנת FTP פעם בכמה זמן ולהוריד את הקבצים למקום כלשהו במחשב שלנו.

אך מסדי נתונים זה יותר מסובך. אין קובץ שלהם שאנו יכולים להוריד באמצעות ה-FTP. הם נמצאים בתוך תוכנה אחרת שנקראת MySQL ונגישים רק לה. מסד הנתונים הוא החלק החשוב ביותר של האתר וכאמור מכיל את התוכן, שהוא החשוב ביותר. איך מגבים אותו?

רוב אתרי הוורדפרס (גם האתר הזה) לא מתעדכנים באופן תכוף ומספיק להם גיבוי כל 24 שעות. את הגיבוי אפשר לעשות באמצעות סקריפט או באמצעים אחרים. אבל אם יש לנו בלוג וורדפרס, הכי קל לעשות את זה באמצעות התוסף הותיק WordPress Database Backup. מדובר באחד התוספים האמינים והטובים ביותר. אנו יכולים להגדיר את התוסף הזה שיגבה אוטומטית את מסד הנתונים של האתר וישלח לנו קובץ שמכיל את הגיבוי כל 24 שעות.

איך עושים את זה? ראשית מתקינים את התוסף. אחרי כן ניגש בתפריט אל 'כלים' ואז אל Backup Options, נבחר את הגיבוי היומי ונבקש שישלח לכתובת המייל שלנו. תוך 24 שעות נתחיל לקבל מדי יום גיבוי. הנה למשל מייל גיבוי כזה:

מייל גיבוי
מייל גיבוי

המייל הזה מצרף קובץ. הקובץ הוא מכווץ, אבל אם יום אחד נפתח את הכיווץ ונציץ בו, אנו נראה שמדובר בקובץ עם סיומת SQL. אם נפתח את הקובץ בעורך טקסט כלשהו, אנו נראה שמה שיש בו בהחלט ניתן להבנה – מדובר בהוראות לתוכנת מסד הנתונים ליצירה ואכלוס של הטבלאות שיש באתר. למשל:
Create table comments (שזה יצירת טבלת תגובות)
ואז הכנסה של כל התגובות.
גם באתר גדול, גודל הקובץ לא עולה על כמה מגהבייטים בודדים.

כאשר אנו רוצים להחזיר את האתר מגיבוי, אין קל מזה! כל מה שעלינו לעשות זה לקחת נשימה ארוכה, ולהכנס לפאנל הניהול של מסד הנתונים. ברוב ספקי האחסון מדובר בפאנל ניהול מסוג PHPMyAdmin. הוא נראה ככה:

phpmyadmin
phpmyadmin

אנו נבחר מצד שמאל את מסד הנתונים שלנו (במקרה שלי, internet_israel) ואז, לאחר שנכנסנו אליו ואנו רואים את כל הטבלאות שלו, נלחץ על import:

ייבוא מסד נתונים
ייבוא מסד נתונים

נגיע אל מסך שבו כל מה שצריך לעשות זה לבחור את הקובץ שלנו ואז ללחוץ על Go.

מסך הייבוא
מסך הייבוא

המתנה של מספר דקות ואם הכל תקין – אנו נוכל לראות את האתר שלנו כשהוא משוחזר.

ועכשיו למספר הערות ודיסקליימרים כמיטב המסורת:

  • רוב הפריצות הן לא רק ברמת מסד הנתונים אלא ברמת הקבצים, לפיכך חשוב מאד לגבות את הקבצים הפיזיים ולא רק את מסד הנתונים. היגובי שלהם נעשה באמצעות ה-FTP. בפריצה ממשית כדאי למחוק את הקבצים הפיזיים ולהחזיר את הגיבוי שלהם בנוסף למסד הנתונים.
  • המדריך הקצרצר הזה מוגש As Is, אם אתם לא אנשים טכניים ופרצו לכם לבלוג, יכול להיות שהדבר הכי טוב שתוכלו לעשות זה לדבר עם ספק האחסון שלכם כדי שיסייע לכם ויחזיר את האתר מגיבוי.
  • בכל מקרה טוב להפעיל את תוסף הגיבוי, כיוון שגיבוי טוב לא רק כאמצעי הגנה אחרון נגד פריצות, אלא גם למקרים אחרים. הגנו על התוכן שלכם!
  • אל תשכחו להקשיח את ההגנות על הוורדפרס שלכם ולעדכן אותו באופן תכוף ככל האפשר

פוסטים נוספים שכדאי לקרוא

פתרונות ומאמרים על פיתוח אינטרנט

המנעו מהעלאת source control לשרת פומבי

לא תאמינו כמה אתרים מעלים את ה-source control שלהם לשרת. ככה תמצאו אותם וגם הסבר למה זה רעיון רע.

בינה מלאכותית

Safeguards על מודל שפה גדול (LLM)

פוסט בשילוב עם פודקאסט וסרטון על ההגנות שאפשר להציב על LLM בסביבת פרודקשן

רספברי פיי

הרצת גו על רספברי פיי

עולם הרספברי פיי והמייקרים ניתן לתפעול בכל שפה – לא רק פייתון או C – כאן אני מסביר על גו

גלילה לראש העמוד