אבטחת הגישה ל-PhpMyAdmin באמצעות Apache Gateway

אבטחת הגישה ל-phpmyadmin

 

 

[important]

הערה : בכל המקומות שהם אני כותב htaccess, אני מתכוון שהנקודה נמצאת לפני שם הקובץ.

 

[/important]

 

אומנם ההתקנה היא ממש קלילה , אבל , עדין לא סיימנו, כיוון שהגישה הפשוטה ל-phpmyadmin יכולה לשמש יעד להתקפות של האקרים.

ולכן נחוץ לאבטח את הגישה.

 

דרך פשוטה לעשות זאת , היא באמצעות gateway לפני האפליקציה, עושים זאת עם הקובץ המובנה של apache שנקרא .htaccess.

 

מה זה gateway של apache ?

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

ראשית, נתחיל בכך שנאפשר htaccess overrive כלומר, קובץ ה-htaccaess "יוחלף" בקובץ שיהיה בתיקית ה-phpmyadmin , אל דאגה, אלו הגדרות רק עבור תיקיה זו, עבור שאר התיקיות, הקובץ המקורי ימצא בשימוש.

 

לשם כך נערוך את קובץ ההגדרות שמוכן מראש כבר, באמצעות עורך הטקסט nano

sudo nano /etc/apache2/conf-available/phpmyadmin.conf

 

כדי לאפשר htaccess override צריך להוסיף את השורה AllowOverride All בתוך הקטע שמתחיל ב

<Directory /usr/share/phpmyadmin>

 

זה נראה כך:

<Directory /usr/share/phpmyadmin>
Options FollowSymLinks
DirectoryIndex index.php
AllowOverride All

. . .

צא מהעורך באמצעות ctrl+x ןשמור בלחיצה על Y.

עכשיו נאתחל את שרת ה-apache כדי שההגדרה תיכנס לתוקף

sudo service apache2 restart

יצירת קובץ htaccess חדש

עכשיו אחרי ההגדרה, אם ניצור קובץ htaccess חדש בתיקיה של phpmyadmin , אז שרת ה-apache יתייחס אליו בתיקיה הספציפית הזו

בא ניצור קובץ כזה.

sudo nano /usr/share/phpmyadmin/.htaccess

 

בתוך הקובץ החדש, נקליד את ההגדרות הבאות:

AuthType Basic
AuthName "Restricted Files"
AuthUserFile /etc/phpmyadmin/.htpasswd
Require valid-user

נסביר את מה שכתבתנו

authName – ההגדרה הזו מקפיצה הודעה שזוהי תיקיה שדורשת הזדהות.

autoUserFile – זוהי פשוט הגדרה היכן נמצא הקובץ שמכיל את הסיסמא , הקובץ הזה צריך להיות קובץ שאין גישה אליו מהאינטרנט, כלומר לא מתחת לספריה /var/www .

require valid-user – ההגדרה הזו קובעת שרק יוזר מורשה יכול לגשת, ובעצם, ההגדרה הזו חוסמת יוזרים לא מוכרים מלהיכנס.

נשמור ונצא (Ctrl+X ואז Y ).

יצירת קובץ הסיסמא להזדהות – htpasswd

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

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

sudo apt-get install apache2-utils

עכשיו האפשרות של htpasswd מותקנת.

ניצור קובץ מתאים

sudo htpasswd -c /etc/phpmyadmin/.htpasswd username

 

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

אם אתה רוצה לתת גישה לעוד משתמש, תעשה זאת בלי  הדגל -c , כך:

sudo htpasswd /etc/phpmyadmin/.htpasswd additionaluser

 

מרגע זה, תוכנת phpmyadmin מוגנת סיסמא, וכל מי שיגלוש לכתובת שלה, יתבקש להקליד סיסמא נוספת, עוד לפני הסיסמא של phpmyadmin.

הערת אגב למי שעבד עם אחסון שיתופי עד עכשיו : בדרך כלל, גירסת ה-phpmyadmin שקיימת באחסון שיתופי, מוגבלת. עכשיו התקנתם גירסה, מלאה (המאפשרת נניח, גם להוסיף יוזרים ועוד…) תיהנו !

כתיבת תגובה

האימייל לא יוצג באתר. שדות החובה מסומנים *