שאלה לגבי su_php בגרסאות 0.6.3 ומעלה

hetzbh

New member
שאלה לגבי su_php בגרסאות 0.6.3 ומעלה

בכל המכונות שיש לי (ושמריצות CentOS 6.5) אני משתמש ב-mod_suphp בלי שום בעיה. אני פותח משתמש, מוריד לו את ה-shell, מאפשר הרשאות 701 לתיקיית home, מגדיר public כ-documentRoot (לא בשם הזה כמובן), הרשאות 755 לתיקיות ו-644 לקבצים ומגדיר לו קובץ conf כששם מופיעים שם המשתמש והקבוצה (UID/GID) שהאתר יריץ תחתם את קבצי ה-PHP. עד כאן, הכל עובד טוב ויפה.

משום מה, כרגיל, ברד-האט החליטו לשבור את המצב הזה (אין לי מושג ירוק מדוע) וברגע שמכניסים שורה עם הפונקציה suPHP_UserGroup - האפאצ'י לא מוכן להתחיל לעבוד ומתלונן שזו שגיאה. בדיקה בקובץ ה-SPEC מראה שמי שכתב אותו הגדיר זאת לבנות את החבילה במצב רגיל ולא מצב paranoid (שמכריח שבקונפיגורציה יופיע suPHP_UserGroup).

מה שאני לא מוצא זה איך לכל הרוחות אני אמור להגדיר שירוצו קבצי PHP בעצם עם suPHP? לפי כל התיעוד שמצאתי, הם רצים לפי ה-owner, אבל כשהרמתי וורדפרס לנסיון וניסיתי ליצור קובץ הגדרות לדוגמא, הוא לא איפשר כתיבה (ולתיקיה כבר יש 755 תחת המשתמש שיצר אותה ושהיא שלו).

יש למישהו/י הסבר או דוגמא איך משתמשים במצב הזה ללא suPHP_UserGroup ? לצערי התיעוד בתחום מאוד לוקה בחסר.
 

Dניאל Mור

New member
אתה מתכוון שהמודול הודר למצב "owner"?

זכור לי דווקא שבגרסאות חדישות, מצב ה - paranoid הוא דווקא ברירת המחדל. אולי אני טועה.
&nbsp
כמה שאלות, אפילו עם בסיסיות:
&nbsp
1. איך התקנת את המודול? מאיפה החבילה? אולי קימפלת? ניסית גרסה אחרונה?
2. מה התיקיות שמולן אתה עובד? האם במקרה מדובר בתיקית הבית של המשתמש, דהיינו - UserDir?
3. כי אני חייב: האם SELinux עובד על השרת?
4. האם הלוגים של ה - Apache אומרים משהו?
&nbsp
בהצלחה לבנתיים.
&nbsp
+דניאל.
 

hetzbh

New member
אז ככה..

* דווקא בגרסאות החדשות הוא מקומפל ללא paranoid, בדקתי את זה מפדורה 18 ומעלה כולל rawhide.
&nbsp
* לגבי ההתקנה, התקנתי את ה-RPM הרשמי. לא רציתי לקמפל כי אני מעדיף לפתור את המצב עם החבילה הרשמית כדי שבעתיד אם אהיה אצל לקוח ואתקל באותו מצב, אוכל להתמודד עם הבעיה מבלי להחליף חבילות אצל לקוחות למשהו שאני בונה.
&nbsp
* התיקיות הם תיקיות של משתמש, כלומר יוזר רגיל שההבדל היחיד הוא הרשאת 701 לתת לאפאצ'י גישה ל-home directory.
&nbsp
* ביטלתי את ה-SELINUX
&nbsp
* לגבי הלוגים - הוא לא מוכן להפעיל את האפאצ'י אם מופעלת האופציה והוא טוען לשגיאת כתיב (למרות שאין שגיאת כתיב כמובן)
 

Dניאל Mור

New member
אז ככה - version 2


- יצא לי לסייע למישהו עם הסיפור הזה (בהקשר בסיסי יותר) על בסיס הידור מאפס, והנה, בדקתי, אם תסתכל ב - doc/INSTALL של הגרסה האחרונה תוכל לראות את הנתון הבא:
&nbsp
|הקוד|
--with-setid-mode=MODE:
MODE has to be one of:
"owner": Run scripts with owner UID/GID
"force": Run scripts with UID/GID specified in Apache
configuration
"paranoid": Run scripts with owner UID/GID but also check
if they match the UID/GID specified in the
Apache configuration
The default is "paranoid" mode.
You should *NEVER* use "force" mode as it is very
dangerous.
While "owner" mode is not as dangerous as "force" mode
its use is disadvised and "paranoid" mode should be
preferred.
|סקוד|
&nbsp
דהיינו, לפחות מבחינת "היצרן" ובגרסה האחרונה, ברירת המחדל היא אכן paranoid. לא יודע מה קורה בכל RPM ו - RPM כמובן.
&nbsp
- להשכלה כללית, שאתה אומר RPM רישמי, על מה מדובר בדיוק? על איזה Repo מדובר?
&nbsp
- לגבי הלוגים: התכוונתי ללוגים (דרך אגב, גם של ה - suPHP בעצמו, אם אכן קיים), שההגדרה של ה - usergroup לא מופעלת. כפי שציינת, בלי הגדרה זו, ה - apache עולה, אבל "משהו לא עובד כמו שצריך".
&nbsp
- תנסה לחפש מידע על suPHP בהקשר של UserDir. לא נתקלתי בבעיה באופן אישי, אבל עשיתי חיפוש קשר בהמשך לשאלתך, וראיתי פוסט פה ושם על עניין הזה, כאילו בקטע שאכן יכול להיות "שצריך להתאמץ" קצת יותר שזה יעבוד, ספציפית במקרה הזה.
&nbsp
מס' קישורים (ממגוון הפצות, פחות רלוונטי כרגע):
&nbsp
https://wiki.archlinux.org/index.php/Suphp
http://www.rickogden.com/2010/01/suphp-userdir-on-ubuntu (שים לב למשפט הפתיחה של הבחור, בדיוק בקטע שאמרתי ושעושה רושם שנתקלת בו - שכנראה משהו עם ה - suPHP וה - UserDir לא "מנגן" כמו שצריך).
&nbsp
בהצלחה רבה.
&nbsp
+דניאל.
 
למעלה