כשבוחרים ספק לשרות VPS

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

יש עוד גורם מסוים שעסקים לא לוקחים בחשבון והוא: מה הפוקוס של אותו עסק? מה המיקוד שלו?

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

אני יכול לתת דוגמא מהעסק שלנו: אנחנו מתמקדים בשרתי VPS המיועדים לתחום ה-Prosumer  כלומר לשוק שמורכב גם ממקצוענים שמכירים היטב ולעומק מה זה VPS, מה זה שרת וירטואלי, מה ניתן ומה לא ניתן לעשות איתו, איך להגדיר אותו, איך לשנות אותו מכל צד אפשרי, לעשות לו אופטימיזציה ועוד, וגם לאנשים עצמם שמתכנתים, אנשי סיסטם (שיש להם בעבודה שרתים וירטואליים והם מנהלים אותם או שהם מנהלים של המחלקות הללו), אינטגרטורים, בוני אתרים מקצועיים, אנשי QA ועוד. גם האחסון המשותף שלנו שונה מאוד מאחסון אתרים שאחרים נותנים, כי אצלנו שמים דגש יותר על תמיכה של שפות נוספות, כלים (כמו GIT,SVN וכו') לניהול קוד, בקרה, והגבלת המשתמש כדי שלא יוכל "לחנוק" משתמש אחר (כן, גם באחסון משותף). אם מישהו שלא מבין כלל בתחום מגיע אלינו והוא רוצה לאחסן אתר, אנחנו נבקש לסגור את הפרטים הטכניים מול בונה האתרים שלו ולא איתו. אם אין לו בונה אתרים והוא לא מבין כלום בנושא ורוצה להרים בלוג משלו, נשמח להפנות אותו למתחרים, כי זה לא התחום שלנו. אנחנו לא נותנים שרות ל-End Users אבל רוב הספקים הישראלים שנותנים שרותי אחסון אתרים (אחסון משותף) נותנים בשמחה למשתמשי קצה, אז שירוויחו, בשמחה.

זה הפוקוס אצלנו.

ספקים אחרים לא יפרסמו את הפוקוס שלהם כי הפוקוס שלהם מסתכם ב"הכל". רוצה שרת משחקים? קח. רוצה חבילות מוכרנים (ריסלר)? קבל. רוצה לארח פורנו? אין בעיה. הונאת לייקים בפייסבוק? אוקיי. זו כמובן זכותם המלאה לקבל את כולם ולעשות את הפרנסה שלהם מזה.

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

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

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

בהצלחה

אחסון משותף וחשיבות תחזוקה שוטפת

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

לקוחות רבים משקיעים כספים רבים על מנת שיבנו להם אתרים. ברוב המקרים, האתר הוא ה"תצוגה" של אדם,עסק,עמותה,חברה וכו' והם מפרסמים את כתובת האתר בכל מקום אפשרי: אימיילים, מכתבים, פרסומות, אתרים אחרים (פייסבוק וכו') – הכל כדי שהגולשים יכנסו ובסופו של דבר יבצעו משהו, בין אם זה להשתתף במשהו, לרכוש מוצר, לתרום, ליצור קשר, לשכור בעל שרות ועוד ועוד.

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

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

וכאן הבעיה המרכזית שלקוחות אינם מודעים אליה.

כיום אתרים נבנים עם תוכנות המיועדות לכך (כמו WordPress, Joomla, Drupal), כאשר בונה האתרים מתקין את התוכנה, "מלביש" עליה עיצוב מוכן (חופשי או קנוי), משנה אותו מבחינה חזותית (בד"כ בוני אתרים עובדים מול גרפיקאי/ת), מוסיף תוספים כאלו ואחרים, כותב כמה חלקים (בהתאם למהות האתר והצורך בכך), ולבסוף מוסיף תכנים לאתר. יש עוד תוכנות המיועדות לסקטורים אחרים, כמו תוכנות להצגת/ניהול חנויות באינטרנט, צ'אטים, פורומים ועוד, כלומר בהרבה מקרים בונה האתר משתמש בתוכנה מסויימת (או תוכנות מסויימות) ומשם ממשיך.

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

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

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

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

לקוחות רבים "בונים" על כך שכל חברת אחסון אתרים רצינית יהיה לה גיבוי לאתר, ובמקרים רבים יש גיבוי, אבל שחזור גיבוי אינו פותר את הבעיה, הואיל ואותם "חורים" בתוכנה עדיין נמצאים ובדרך כלל תוך יום יומיים אותו פורץ יחזור ושוב יפרוץ את האתר. גרוע מכך, כיום ישנם תוכנות "רובוטיות" רבות שכל מטרתן הן לסרוק אתרים שונים ולבדוק אם החורים קיימים, ואם כן אז אותן תוכנות מדווחות חזרה למפעילי התוכנה ה"רובוטית" ואותם מפעילים כבר יפרצו ויעשו כרצונם באתרי הלקוחות. אגב, גניבה והשחתה הם לא רק הדברים שפורצים עושים באתרים. במקרים רבים מאוד הפורצים מעלים לאתר מעין "תת אתר" ואותו תת-אתר הוא זיוף של אתרים גדולים ומוכרים (כמו אתרי בנקים בחו"ל, Paypal ועוד) שכל מטרתן הם לגרום ללקוח להאמין שהוא נמצא באתר לגטימי ושיכניס את שם המשתמש והסיסמא שלו. כמובן שאותו לקוח לא יגיע לשום מקום, אבל הפורץ יקבל את שם המשתמש והסיסמא של אותו גולש תמים שגלש בתת-אתר – ומכאן הוא יוכל להשתמש בפרטי החשבון כדי לגנוב כספים וכו'. אישית זכור לי מקרה מסויים לפני מספר שנים שעבדתי כתומך ולקוח שסירב לעדכן את התוכנה ומצא את האתר שלו לא רק פרוץ, אלא עם 3 תתי-אתרים עם זיוף של בנקים שונים בארה"ב. נסיונות למחוק את החשבון ושחזור הגיבוי לא עזרו כי הרובוטים מצאו את הפרצות והפורצים האלו מחדש את האתר, ורק לאחר שאחד הבנקים איים בתביעה על אותו לקוח, הלקוח נאות לשכור מישהו לעדכן את האתר שלו.

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

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

מיתוס: מחשוב ענן בישראל

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

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

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

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

  • במחשוב ענן אמיתי אתה יכול להעלות ולהוריד את כמות הזכרון, המעבדים, כרטיסי רשת, גודל דיסק וכו' דרך סקריפט שאתה יכול לכתוב שמבצע זאת בצורה מיידית או מתוזמנת.
  • במחשוב ענן אמיתי אינך צריך לעבור אישורים מסויימים של מחלקות שונות.
  • במחשוב ענן אמיתי יש לך מהרגע הראשון API שמאפשר לך לבצע הכל.
  • במחשוב ענן אמיתי אתה יכול להוסיף שרת ו"להרוג" אותם כרצונך.
  • במחשוב ענן אמיתי אתה יכול להשתמש בשרותים כמו Load Balancer, CDN והרבה שרותים נוספים – שוב, דרך API פתוח שהמתכנת שלך יכול להשתמש.

כאשר ספק גדול לוקח מספר שרתים, מתקין עליהם vSphere ומוכר אותם כ"מחשוב ענן", כל עוד אין לך שום API ושום אפשרות ממה שהזכרתי לעיל, אין לך מחשוב ענן. יש לך שרת VPS במחיר יותר גבוה ממה שמציעים מתחרים, ובעברית פשוטה: מנצלים מושגי Buzz כדי להרוויח עליך יותר כאשר אתה מקבל שרת VPS רגיל.

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

היכן לאחסן ומה לבדוק

שנים רבות אני שומע את השאלה הבאה בגרסאות שונות "אני בונה אתר ואני רוצה לאחסן אותו. מכיר מישהו מומלץ?" או "יש לי אתר באחסון XYZ אבל אני לא מרוצה מהשרות. מכיר חברה אחרת מומלצת?"

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

מכיוון שכיום "חץ ביז" זה כבר עסק עם מספר עובדים (פרילנסרים), אינני יכול להמליץ על ספק זה או אחר. לנו יש את החבילות שלנו (שרתי VPS, אחסון משותף ועוד) ולספקים אחרים יש את החבילות שלהם. במקרים מסויימים אנו מתחרים ובמקרים מסויימים אנו לא מוצאים הגיון בהצעת חבילות מסויימות (SEO Hosting, אחסון במחירים של דולרים בודדים לחודש) מסיבות שונות ואין לנו בעיה להודיע כי איננו מציעים את אותן חבילות ולהציע לפונה לפנות למתחרה ממול.

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

  • אתר קטן או מספר אתרים קטנים: אם יש לך אתר קטן או מספר אתרים קטנים ואין חשיבות לזמן הטעינה שלהם, כמו בלוגים אישיים עם מספר מבקרים קטן, אתרים אישיים קטנים עם מספר נמוך של מבקרים ואתרים קטנים נוספים אשר אינם מקודמים (SEO) – אז אפשר לאחסן את האתר בארץ, בארה"ב או אירופה באחסון משותף.
  • בלוגים או אתרים קטנים עם מספר גולשים של מאות ביום או בלוגים מקודמים (SEO) עם קהל יעד ישראלי : בקידום אתרים יש חשיבות גדולה האם האתר נטען מהר או לא (לא רק ה-HTML של הדף הראשי אלא גם תמונות וכו') , ואתר קטן/בלוג עם כמות קוראים רבים צריך שהמידע יגיע כמה שיותר מהר לגולש – אתרים כאלו מומלץ לאחסן בארץ, ואם הפתרונות בארץ יקרים מדי לפונה, אחסון משותף באירופה יכול לתת תוצאות לא רעות (אם כי המהירות מאירופה וחו"ל אל ישראל יכולה להשתנות עקב האטת תקשורת מכוונת מצד ספקי התקשורת הישראליים).
  • אתרים בינוניים המיועדים לקהל הישראלי (מושכים כמות של אלפי גולשים ליום) – חד וחלק, חפשו אחסון משותף או שרת VPS (שרת וירטואלי) כאן בישראל. יכול להיות שהמחיר יהיה טיפה יותר יקר (על הבדלי המחירים אכתוב כאן בפוסט אחר), אך מצד שני הגולשים שלכם יקבלו את המידע בצורה מהירה וזורמת (תלוי כמובן בספק, רוחב הפס שלו, שרת VPS שלו וכו' – ואלו עניינים לפוסט אחר).
  • אתרים גדולים (עשרות אלפי גולשים, אלפי גולשים שמעלים תוכן ביום) המיועדים לקהל ישראלי – מומלץ לרכוש שרתים יעודיים מיבואני שרתים (DELL, HP, IBM וכו') ולארח אותם בחווה שהספק מארח. המחיר יצא זול בהרבה מאשר לקחת שרת וירטואלי מפלצתי שלא בטוח שיעמוד בעומסים ויהיה יקר בצורה משמעותית מאירוח שרת פיזי בחווה.
  • אתרים/שרותים בינוניים וגדלים המיועדים לקהל עולמי: כאן לצערי פתרון בישראל לא יסייע לך ("תודות" לספקי התקשורת הישראליים) אולם פתרון מקובל אחר שרבים משתמשים בו (השכרת שרתים/VPS בארה"ב) גם אינו הפתרון הכי יעיל. אם אתה מייעד את הפתרון שלך ככלל עולמי, עדיף לקחת פתרון באירופה (ישירות או דרך ספק ישראלי שיש לו שרתים באירופה). מדוע? כי רוחב הפס בין אירופה לשאר המקומות בעולם גדול משמעותית ממה שיש בין ארה"ב לשאר העולם.
  • פתרונות מורכבים (מספר שרתים וירטואליים ו/או יעודיים עם Load Balancer וכו') – רבים מעדיפים לקחת פתרונות כאלו מ-Amazon (כשמדובר בשרתים וירטואליים, אמזון אינה משכירה שרתים יעודיים ואינה נותנת שרותי Colo), אולם מומלץ לחשוב גם על פתרונות מספקים אחרים ולשקול אותם בגלל סיבה פשוטה: הפתרון של Amazon (ו-Amazon היא רק דוגמא אחת) הוא פתרון "נעול", כלומר אם מחר בבוקר לא תהיה מרוצה מהשרות שלהם/שרתים שלהם, אינך יכול לקום ולעבור ספק תוך יום יומיים, תצטרך לשנות מהקצה אל הקצה את כל התשתית שלך, דבר שיעלה לך לא מעט, ולכן לפעמים דווקא כדאי לקחת פתרונות סטנדרטיים (לדוגמא: מספר שרתים וירטואליים ו-Load Balancer בחומרה או תוכנה) כשהאיש הטכני שלך מגדיר אותם, ואם תרצה לעבור, כל מה שיהיה צריך לעשות זה לשכור חבילות זהות, וכל מה שנותר לאיש הטכני שלך יהיה להעתיק את התוכן מהשרתים הישנים לחדשים, לשנות כתובות, ולהגדיר את ה-LB מחדש, וזה לוקח רק חלקיק מהזמן שלוקח לעבור מ-Amazon.
  • לא להיות "יד רביעית": ישנם ספקים גדולים בעולם (המקרה הכי ידוע: חברת OVH) שמעדיפים לא לעבוד עם מדינות שונות (ובכללן ישראל) מסיבותיהן הפרטיות. מה קורה אז? מישהו באותה מדינה שוכר שרת/ים, משכיר אותם למישהו אחר (נניח בישראל) ואותו ישראלי משכיר לך את השרת, כלומר אתה בעצם "יד רביעית" (הספק עצמו, האזרח הזר, המשכיר הישראלי, ואתה) וכולם מרוויחים עליך לא רע. במקרה ויש לך תקלה או בקשת שדרוג והמשכיר הישראלי לא יודע או לא יכול  לפתור אותה, התקלה צריכה "להשתרשר למעלה" בכל המסלול, לכן מומלץ מאוד לשכור דרך נציג ישראלי שיש לו שרתים משלו (או שהוא שוכר שרתים) אצל הספק עצמו ולא דרך צד שלישי. זכור כי במידה והספק מצא לדוגמא שאתה ישראלי והוא אינו מעוניין לעשות עסקים עם ישראליים, הוא יכול פשוט לקום ולנתק את השרת, ולך תריב עם המוכר הישראלי או הבחור במדינה זרה שמכר לישראלי.
  • לא לשכור שרת VPS על סמך אתר בלבד: באתרים של ספקים הכל כתוב בצורה יפה ומושכת. המפרט הטכני מדבר על מעבדים חזקים, רוחב פס נדיב וכו'. אם אתה מעוניין בחבילה, בקש אותה ליום יומיים נסיון ותנסה "להתיש" את השרת VPS (לדוגמא) בסימולציות של מבקרים רבים, (בכמות שאתה מתכנן) ותוודא כי השרת עומד ביעדים שהגדרת. רק לאחר מכן כדאי שתסגור את העיסקה ותוודא שהשרת שקיבלת לניסוי – הוא זה שתקבל ולא אחר (טריק שיווקי ידוע).
  • חשוב לוודא שהספק נותן לך דברים מסויימים שאותם תצטרך בהמשך הדרך:
    • רוחב פס המוקצה לשרת שלך בכל הזמן (לא "מתפרץ"). מומלץ שתבדוק מדי פעם אם יש ברשותך את הרוחב הפס הנ"ל.
    • גישה לקונסולה ו/או KVM באופן מיידי (במקרה ואינך מצליח לגשת לשרת מרחוק אם בטעות נעלת את עצמך מרחוק). ספקים מסויימים לא נותנים זאת ובמקום זה מבקשים ממך סיסמת root על מנת לבצע מה שאתה רוצה – אל תיתן סיסמת root. אינך יודע מי הולך לטפל בשרת, מה הידע שלו ומה באמת הוא עושה.
    • הצמד שרות ניטור משלך לשרת הוירטואלי/יעודי שלך, לא תמיד תקבל התראה אם השרת שלך נפל.
    • ודא כי אם מדובר בשרת VPS, שהוירטואליזציה היא מלאה ואתה יכול לשדרג כל חלק במערכת עצמה ולא רק חלקים מסויימים, וכדאי שתבדוק באיזו וירטואליזציה מדובר.
    • החלף סיסמת root לאחר שקיבלת את המכונה וודא כי איש אינו נמצא במכונה זולתך.
    • ודא כי ישנה אפשרות התקנת כל העדכונים במערכת וודא כי האיש הטכני שלך מריץ עדכונים לפחות אחת לשבוע.

התחשבות בנקודות הנ"ל יכולה לסייע לך לא ליפול על ספקים שהשרות והחבילות המוצעות על ידיהן – מפוקפקות.

בהצלחה

נקודות למחשבה לסטארטאפיסט

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

רוב הסטארט-אפים צריכים להקים תשתית כדי למכור את המוצר/שרותים. חלק יקימו תשתית בארץ (אם זה מוצר ללקוחות ישראלים) וחלק יקימו בארה"ב (לדעתי שגיאה קלאסית שתיכף אסביר מדוע). מכיוון שרוב הסטארט-אפים צריכים לעבור מסלול זה או אחר להקים תשתית של שרתים, אפליקציות וכו', החלטתי לתת מספר טיפים מתוך נסיון עשיר (15 שנה, המונה דופק) בנושא. הפוסט עצמו הוא פוסט גנרי. זה נחמד אם היית לוקח מאיתנו שרת VPS (כזה, או כזה או כזה), אבל זו לא המטרה של הפוסט ואפשר לעשות את הדברים שאכתוב עליהם אצל כל ספק רציני (רציני – לא אחד שמוכר וירטואליזציה של Virtuozzo כ"מחשוב ענן"!).

הפוסט מיועד לאנשים טכנולוגיים ולאנשי IT שמקימים את התשתית, ולא כל כך מתאים לאנשים שלא מכירים את המושגים.

נתחיל במשהו פשוט: כל סטארט-אפ רוצה להיות הפייסבוק הבא (אלוהים ישמור מה הסרט הזה עשה לנציגי מכירות שהיו צריכים לענות לכל מיני אנשים על "תן לי מחיר ל-2 שרתים להקים מתחרה לפייסבוק") ואישית אני מאחל לכל סטארט-אפ רווח והצלחה.

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

אז מכיוון שבהתחלה (הווה אומר: חודשים ראשונים) מי שמשלם על התשתית זה אתה ו/או שותף שלך ואין לך דוד/מכר מיליונר עם סיגר עבה בפה / קרנות כלשהן שמוכנות לשפוך עליך כספים רבים שתשיג אנשי מכירות, פרסום מאסיבי ועוד, תצטרך להתחיל במשהו קטן ורק לאחר שתהיה המאסה תוכל לתכנן מחדש ממש בגדול. במילים אחרות: את התכנון של 3 שרתי אפאצ'י בפרונט, 3 שרתי אפליקציה, 2 שרתי SQL, ו-Load Balancer עם ראוטר וחומת אש עצבנית – כדאי להשאיר לזמן שתהיה לך מאסה גדולה וקבועה.

לכן, כשמתחילים צריך לקחת שרת וירטואלי (עדיין לא יעודי, המחיר של יעודי יקפיץ בעוד כמה מאות דולרים לחודש) טוב עם ליבה אחת (מומלץ 2 אם אפשרי מבחינת תקציב) וזכרון של לפחות 1-2 ג'יגה (אם מדובר בשרת Linux) או 2-3 ג'יגה (אם מדובר בשרת Windows. מה לעשות, Windows שותה זכרון עם צינור). מבחינת רוחב פס, ודא כי הספק נותן לך לפחות 5-10 מגהביט סימטרי (לא "מתפרץ", שזה בעצם טריק שיווקי למכור שליש מוצר במחיר של מוצר) ומתחייב על כך בחוזה. מבחינת דיסק, כדאי שיהיו כמה עשרות ג'יגהבייט בתור התחלה. ודא שיש לך אפשרות לקבל קונסולה אם במקרה נעלת את עצמך בטעות (כמו במקרה של טעות בהגדרות SSH או חוק שגוי בחומת האש הפנימית) מבלי להתחנן לתמיכה שיפתחו לך.

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

אז, איך בעצם עם שרת כזה נותנים שרות למאות ואלפים? נלך לפי מספר נקודות:

  • Cache חובה: לא חשוב כמה האתרים שלכם דינמי, חלקים רבים בתוכו הם סטטיים – תמונות, סקריפטים, תכנים, דף פתיחה ועוד, וכל החלקים האלו אפשר ליצור להם קבצים סטטיים שיוגשו לגולש ואפליקציית Cache תייצר אותן תוך מעקב מה בתוקף ומה לא. אם אתם משתמשים באפליקציות CMS, אז ברוב המקרים זה רק עניין של התקנת תוסף פשוט שיתן לכם את זה. שימוש חכם ב-Cache יכול לחסוך את רוב העבודה שהשרת צריך לעשות כדי לתת תכנים מותאמים לגולש.
  • אופטימיזציית SQL – זה משהו אחד שיש לך 2 שרתי SQL מאסיביים שרצים עם סינכרון/רפליקציות עם תקציב שנתי רצינית, וזה משהו אחר שאתה סטארט אפ ויש לך תקציב ששווה לתקציב הקופה-הקטנה של גוגל. שרת ה-SQL שלך צריך לעבוד בצורה אופטימלית וחזקה. אם אתה משתמש לדוגמא ב-MySQL, אז יש כאן לדוגמא מדריך איך לעשות זאת, וכל שרת SQL מכובד כולל אתר שלם איך לעשות אופטימיזציות, החל בבחירת מנוע נכון (InnoDB, MyISAM וכו'), הגדרת כמות חיבורים בהתאם לכמות הזכרון והצורך, ועד ל-Queries בלתי אופטימליים (דבר שגורם "מריבות" בין מפתחים שונים, גם את זה ראיתי).
  • שרת WEB טוב: הנה עובדה – שרת Apache על VPS כמו שפירטתי מקודם שמוגדר טוב (עם כל ה-MPM, מודולים וכו') יכול לשרת כמה אלפי אנשים סימולטנית מבלי לחנוק את הליבה של ה-VPS ומבלי לגרום ל-Load היסטרי. גם שרת NGINX יכול לבצע את העבודה הזו מבלי לחנוק משאבים, כל מה שצריך זה תכנון ובדיקה (לא חסרים כלים להעמיס שרתים). אם פעם אחת יושבים ומגדירים את זה בצורה טובה, אז יהיו לכם לילות ללא יקיצה בגלל שרת קורס. חשוב להגדיר בשרת Cache לדברים שלא הולכים להשתנות כל דקה (לדוגמא: קבצי Header ו-Footer).
  • אבטחה: יודעים מי ינסה לבדוק כמה האתר שלכם מאובטח? המתחרים שלכם, ובמקרים רבים המתחרים שלכם מכאן בארץ. חושבים שלא ינסו לבדוק SQL Injection וכל חור אפשרי? הם בהחלט ינסו, כי זו השיטה הכי טובה לגלות סודות מסחריים שלכם (במיוחד דפים וקבצים נסתרים שמיועדים ללקוחות Beta סגור). לכן כדאי לבדוק את כל הרכיבים כולל אלו שלא תהיה להם גישה מבחוץ. נסו לסרוק את השרת שלכם עם nmap, או SNORT (לא, הוא עוד לא מת) וכלים אחרים, חפשו כלים אחרים, בדקו XSS, נסו לבצע SQL Injection ותקנו את כל החורים.
  • עבדו עם גירסאות יציבות של מערכות הפעלה. ב-Windows זה Non issue, משתמשים ב-2008 R2, בלינוקס לעומת זאת מומלץ שלא להשתמש בגרסאות שמשתנות כל הזמן כמו Ubuntu הרגיל (קח את Ubuntu LTS) או Fedora (קחו CentOS 6 או Scientific Linux 6.1) והקפידו להריץ עדכון לפחות אחת לשבוע.
  • צרו גיבוי מרוחק – כל ספק יכול להבטיח שהגיבוי שלו סוף הדרך, שזה נחמד, אבל עדיף שיהיה לכם לפחות אחת לחודש גיבוי של האתר וה-DB אצלכם בידיים או בשרת מרוחק אחר (זה לא מסובך: mysqldump לבסיס הנתונים, rsync לשאר, להריץ הכל ב-cron ונגמר העניין).

אלו בעקרון הסעיפים הכלליים שצריך לתת עליהם את הדעת בזמן שמקימים את האתר/שרות של הסטארט-אפ שלכם. ברור שיש שינויים מהותיים בין סטארט-אפ אחד לאחר, אך הסעיפים הנ"ל מספיק כלליים כדי להתאים לרוב הצרכים.

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

רק הצלחה!

בעקבות גניבות כרטיסי אשראי – שאלות ותשובות

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

במאמר זה ננסה לענות על שאלות שעולות אצל בעלי אתרים.

האם המידע שמסרו בעלי חברת דובל נכון והפורץ חדר מתוך אתר בלתי מוגן אל אתרים מוגנים?

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

יש לי אתר שאני מוכר בו מוצרים, האם גם האתר שלי חשוף לפריצות?

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

באתר שלי אני סולק כרטיסי אשראי ישראליים. האם יש המלצות כלשהן?

ישנן מספר המלצות עיקריות:

  • להעביר את האתר בדחיפות סריקה של איש אבטחת מידע לגבי הצפנת הנתונים, מחיקת נתונים שאין צורך בהם ושאסור שישמרו אצלך (לדוגמא: 3 הספרות בגב כרטיסי האשראי, מה שנקרא CVV או CVV2) ובדיקת עדכונים לגבי התוכנה שאתה משתמש בה לניהול האתר/חנות.
  • מעבר לאחסון לשרת וירטואלי (שרת VPS) – ראה הסבר בהמשך המאמר מדוע.
  • חתימת חוזה מתמשך עם בונה האתרים שלך (או בונה אחר) להטמעת עדכוני תוכנה ואבטחה באחסון שלך לפחות אחת לחודש.
  • מעבר לסליקה דרך אתר חיצוני (כמו טרנזילה ואחרים) שלהם יש מומחיות בסליקה, הצפנה ועוד.

אם אני מוכר מוצרים אבל אני לוקח פרטי אשראי בטלפון, אני צריך לדאוג?

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

למה אני צריך שרת וירטואלי? מה רע במה שיש לי היום? הספק אומר שהאחסון מאובטח

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

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

שרת וירטואלי עולה יותר מאחסון משותף ואין חולק על כך, אבל שרת וירטואלי גם נותן לך עצמאות באבטחה, אתר מהיר ללקוחותיך (מבלי להיות מואט על ידי לקוחות אחרים כמו באחסון שיתופי), אפשרויות גדילה מורחבות ועוד. לגבי המחיר: תלוי בספק והצעות המחיר שלו, ההבדל עצמו אינו כה גדול והוא נע בין 800 ל-1600 שקל לשנה. אצלנו לדוגמא ניתן לקבל שרת VPS כזה במחיר של 1800 שקל לשנה (פלוס מע"מ).

מה אם אני מעוניין לשמור פרטי אשראי למקרה והלקוח ירצה לרכוש פריטים/מוצרים נוספים?

לשם כך אני ממליץ לך להיוועץ במחלקת האבטחה של חברת האשראי איתה אתה סולק כרטיסים.

סולק צד שלישי יקר לי/לא מתאים לי ואני לא רוצה להיכנס להוצאות נוספות. אי אפשר להוזיל עלויות?

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

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

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

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

אם יש לכם עוד שאלות, אתם מוזמנים לכתוב אותם כאן בטוקבקים  ונשמח לענות לכם.