סקריפט בדיקת אתר ב-BASH

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

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

שימו לב למשל לסקריפט הבא שפיתחתי. מה שהסקריפט עושה הוא להכנס לדף כלשהו, להוריד אותו למחשב. אחרי ההורדה והשמירה, מתבצעת בדיקה על הדף. הבדיקה מחפשת טקסט מסוים – במידה והיא לא מוצאת את הטקסט – היא שולחת מייל התראה לכתובת כלשהי.

אני מצרף את הסקריפט כאן:


#!/bin/bash
pushd /YOUR_DIRECTORY_FULL_PATH
myfilename="FILE_NAME_$(date +"_%d_%H:%M").html"

wget -O $myfilename http://www.example.com

grep_output=`grep 'WELCOME' $myfilename`
if [ "$grep_output" == "" ]; then
   echo "test was OK. tested at $(date +"day: %d hour: %H:%M:%S"). file name created is $myfilename";
else
    echo "ALERT ALERT found at $myfilename. test conducted at $(date +"%d %H:%M:%S")" | mail -aFrom:[email protected] -s ALERT [email protected]
fi

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

לאחר השמירה, ניתן לקובץ הרשאות ריצה באמצעות:


chmod 775 check.sh

ניתן לבדוק את הקובץ באמצעות:


./check.sh

אם הכל תקין, הוא ישמור קובץ בתיקיה. אם אנו רוצים שהסקריפט ירוץ מדי פעם, אפשר להכניס אותו אל ה-Cron. למי שלא יודע, Cron זה Daemon קטן בלינוקס שמסוגל להריץ סקריפטים בזמן קצוב. על מנת להריץ את הסקריפט כל דקה, מה שעלינו לעשות זה לכתוב:


crontab -e

ייפתח לנו עורך טקסט דיפולטיבי (בדרך כלל nano) כזה:

Cron
Cron

אנו נוסיף את השורה הזו:


* * * * *       /YOUR_PATH/check.sh

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


* * * * *        /YOUR_PATH/check.sh  >>  /YOUR_PATH/check.log

לא לשכוח לבדוק שיש הרשאת כתיבה לקובץ הלוג.

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

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

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

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

DALL·E 2023-10-21 22.28.58 - Photo of a computer server room with red warning lights flashing, indicating a potential cyber threat. Multiple screens display graphs showing a sudde
יסודות בתכנות

מבוא לאבטחת מידע: IDOR

הסבר על התקפה אהובה ומוצלחת שבאמצעותה שואבים מידע מאתרים

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

יישום של nonce על מנת להגן מפני התקפות injection

בפוסט הקודם הסברתי על hash עם CSP על משאבי inline – שזה נחמד ומעולה אבל פחות ישים בעולם האמיתי שבו בדרך כלל התוכן ה-inline (בין

תמונה של עציץ, רספברי פיי ורמקול
רספברי פיי

לגרום לעציץ שלכם לדבר

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

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