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

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

שרת המנהור יכול להיות כל מארח Unix או Linux ש:
- אפשר לגשת אליו מהאינטרנט באמצעות SSH
- יש גישה למסד הנתונים
שלב 2: יצירת רשימת כתובות IP שאושרו
השלב השני הוא לאפשר לתעבורת הרשת להגיע לשרת המנהור או למארח מסד הנתונים דרך SSH, בדרך כלל ביציאת TCP מספר 22.
צריך לאפשר תעבורת נתונים ברשת מכל אחת מכתובות ה-IP שמופיעות כאן לאזור שבו מתארח מופע Looker שלכם. כברירת מחדל, המדינה תהיה ארצות הברית.
מופעים שמתארחים ב- Google Cloud
מקרים שמארחים ב-Looker מאוחסנים ב- Google Cloud כברירת מחדל. במקרים שבהם מתארחת ב- Google Cloud, צריך להוסיף לרשימת ההיתרים את כתובות ה-IP שתואמות לאזור שלכם.
כאן אפשר לראות רשימה מלאה של כתובות IP למקרים שמתארחים ב- Google Cloud
מונקס קורנר, קרוליינה הדרומית, ארה"ב (us-east1)
34.23.50.13735.211.210.6435.211.95.5535.185.59.10034.111.239.10235.237.174.1734.73.200.23535.237.168.21634.75.58.12335.196.30.11035.243.254.166
אשבורן, צפון וירג'יניה, ארה"ב (us-east4)
34.150.212.934.150.174.5434.85.200.21735.221.30.17735.245.82.7334.86.214.22635.245.177.11235.245.211.10934.86.118.23934.86.136.19035.194.74.18534.86.52.18835.221.3.16335.221.62.21834.86.34.13535.236.240.16835.199.50.23734.145.252.25535.245.141.4235.245.20.1634.145.147.14634.145.139.2234.150.217.2035.199.35.17635.245.72.3534.85.187.17535.236.220.22534.150.180.944.85.195.16834.86.126.12434.145.200.834.85.142.9534.150.217.9635.245.140.3634.86.124.23435.194.69.23935.230.163.2635.186.187.4834.86.154.13434.85.128.25035.245.212.21235.245.74.7534.86.246.18734.86.241.21634.85.222.934.86.171.12734.145.204.10634.150.252.16935.245.9.213
קאונסיל בלאפס, איווה, ארה"ב (us-central1)
104.154.21.23135.192.130.12635.184.100.5134.70.128.7434.69.207.17635.239.118.19734.172.2.22734.71.191.21034.173.109.5035.225.65.334.170.192.19034.27.97.6735.184.118.15534.27.58.16034.136.4.15335.184.8.25535.222.218.14034.123.109.4934.67.240.23104.197.72.4034.72.128.3335.226.158.6634.134.4.9135.226.210.85
דה דיילס, אורגון, ארה"ב (us-west1)
34.127.41.19934.82.57.22535.197.66.24435.197.64.5734.82.193.21535.247.117.035.233.222.22634.82.120.2535.247.5.9935.247.61.15135.233.249.16035.233.172.2335.247.55.3334.83.138.10535.203.184.4834.83.94.15134.145.90.8334.127.116.8535.197.35.18834.105.127.12235.233.191.8434.145.93.13035.233.178.16634.105.18.120104.199.118.1435.185.228.21634.145.16.15134.82.91.7534.82.142.24534.105.35.1934.83.231.9634.168.230.4735.247.46.21434.105.44.2535.185.196.7534.145.39.11334.168.121.44
לוס אנג'לס, קליפורניה, ארה"ב (us-west2)
35.236.22.7735.235.83.17735.236.51.71
מונטריאול, קוויבק, קנדה (northamerica-northeast1)
35.234.253.10335.203.46.25534.152.60.21035.203.0.635.234.252.15035.203.96.23534.152.34.22934.118.131.3635.203.113.51
לונדון, אנגליה, בריטניה (europe-west2)
34.105.198.15135.246.117.5834.142.123.9634.89.124.13934.89.127.5134.105.209.4435.242.138.13335.197.222.22035.189.111.17334.105.219.15434.105.181.13334.89.25.535.246.10.20634.105.131.13334.142.77.1834.89.54.8435.189.94.10535.246.36.6735.234.140.7735.242.174.15835.197.199.2034.89.3.12034.105.156.10735.246.79.7234.105.139.3834.105.147.15734.105.195.12934.105.194.21034.142.79.12334.142.55.5834.142.85.24934.105.148.3835.246.100.6635.246.3.16534.105.176.20935.189.95.16734.89.55.2
פרנקפורט, גרמניה (europe-west3)
35.242.243.25534.159.247.21135.198.128.12634.159.10.5934.159.72.7734.159.224.18734.89.159.13834.159.253.10334.159.244.4335.246.162.18734.89.141.19034.159.65.10634.159.197.3134.89.194.13434.159.252.15534.141.65.21634.159.124.6235.246.130.21334.89.206.2134.89.185.20134.159.171.4635.246.217.22835.242.236.11534.159.148.253
מומבאי, הודו (asia-south1)
35.200.234.3434.100.205.3734.93.225.1234.93.221.13735.244.24.19835.244.52.179
אמסהפן, הולנד (europe-west4)
35.204.118.2835.204.216.734.90.52.19135.204.176.2934.90.199.9534.90.145.22634.141.162.735.204.56.18935.204.11.22934.34.66.13134.32.195.8934.32.173.138
מחוז צ'נגואה, טייוואן (asia-east1)
104.199.206.20934.80.173.21235.185.137.114
טוקיו, יפן (asia-northeast1)
34.85.3.19834.146.68.20334.84.4.218
ג'ורונג ווסט, סינגפור (asia-southeast1)
34.143.210.11634.143.132.20634.87.134.20234.101.158.8834.101.157.23834.101.184.52
ג'קרטה, אינדונזיה (asia-southeast2)
34.101.158.8834.101.157.23834.101.184.52
סידני, אוסטרליה (australia-southeast1)
34.87.195.3634.116.85.14034.151.78.4835.189.13.2935.189.9.8135.244.68.217
אוזאסקו (סאו פאולו), ברזיל (southamerica-east1)
34.151.199.20135.199.122.1934.95.180.12234.95.168.3834.151.235.24134.95.181.1935.199.91.12035.247.197.10935.199.86.4835.199.106.16635.198.1.19135.247.235.12835.247.211.235.247.200.24934.95.177.253
מופעים שמתארחים ב-Amazon Elastic Kubernetes Service (Amazon EKS)
במקרים שבהם מתארחים ב-Amazon EKS, צריך להוסיף לרשימת ההיתרים את כתובות ה-IP שתואמות לאזור שלכם.כאן מופיעה רשימה מלאה של כתובות IP למקרים שמתארחים ב-Amazon EKS
מזרח ארה"ב (צפון וירג'יניה) (us-east-1)
18.210.137.13054.204.171.25350.17.192.8754.92.246.22375.101.147.9718.235.225.16352.55.239.16652.86.109.6854.159.176.1993.230.52.22054.211.95.15052.55.10.236184.73.10.8552.203.92.11452.3.47.18952.7.255.5454.196.92.552.204.125.24434.200.64.24318.206.32.25454.157.231.7654.162.175.24454.80.5.1735.168.173.23852.44.187.2218.213.96.4023.22.133.20634.239.90.16934.236.92.873.220.81.24154.197.142.23834.200.121.563.83.72.4154.159.42.1443.229.81.10134.225.255.22054.162.193.16534.235.77.1173.233.169.6354.87.86.11318.208.86.2952.44.90.201
מזרח ארה"ב (אוהיו) (us-east-2)
3.135.171.2918.188.208.2313.143.85.223
US West (Oregon) (us-west-2)
44.237.129.3254.184.191.25035.81.99.30
קנדה (מרכז) (ca-central-1)
52.60.157.6135.182.169.2552.60.59.12835.182.207.12815.222.172.643.97.27.5135.183.191.13315.222.86.12352.60.52.14
אירופה (אירלנד) (eu-west-1)
54.74.243.24654.195.216.9554.170.208.6752.49.220.10352.31.69.11734.243.112.7652.210.85.11052.30.198.16334.249.159.11252.19.248.17654.220.245.17154.247.22.227176.34.116.19754.155.205.15952.16.81.13954.75.200.18834.248.52.454.228.110.3234.248.104.9854.216.117.22552.50.172.40
אירופה (פרנקפורט) (eu-central-1)
18.157.231.10818.157.207.3318.157.64.19818.198.116.1333.121.148.1783.126.54.154
אסיה-פסיפיק (טוקיו) (ap-northeast-1)
54.250.91.5713.112.30.11054.92.76.24152.68.245.253.114.138.054.249.39.36
אסיה-האוקיינוס השקט (סידני) (ap-southeast-2)
13.238.132.1743.105.238.713.105.113.36
דרום אמריקה (סאו פאולו) (sa-east-1)
54.232.58.18154.232.58.98177.71.134.208
מופעים שמתארחים ב-Microsoft Azure
במקרים שבהם המופעים מתארחים ב-Azure, צריך להוסיף לרשימת ההיתרים את כתובות ה-IP שתואמות לאזור שלכם.כאן אפשר לראות רשימה מלאה של כתובות IP למופעים שמארחים ב-Microsoft Azure
וירג'יניה, ארה"ב (eastus2)
52.147.190.201
דבלין, אירלנד (northeurope)
20.123.126.28
אירוח מדור קודם
צריך להשתמש בכתובות ה-IP האלה לכל המקרים שמתארחים ב-AWS ונוצרו לפני 7 ביולי 2020.כאן אפשר לראות רשימה מלאה של כתובות IP לאירוח מדור קודם
ארצות הברית (ברירת המחדל של AWS)
54.208.10.16754.209.116.19152.1.5.22852.1.157.15654.83.113.5
קנדה
99.79.117.12735.182.216.56
אסיה
52.68.85.4052.68.108.109
אירלנד
52.16.163.15152.16.174.170
גרמניה
18.196.243.9418.184.246.171
אוסטרליה
52.65.128.17052.65.124.87
דרום אמריקה
52.67.8.10354.233.74.59
שלב 3: מנהור SSH
אם הכרטיסייה SSH Servers מופעלת, צריך לפעול לפי ההוראות שבדף הזה כדי להוסיף את פרטי ההגדרה של שרת ה-SSH ל-Looker.
בדף Connections בקטע Admin ב-Looker, בוחרים בכרטיסייה SSH Server.

לאחר מכן לוחצים על הוספת שרת. מוצג הדף Add SSH Server (הוספת שרת SSH):

- מזינים שם להגדרת שרת ה-SSH.
- לוחצים על הורדת מפתח כדי להוריד את המפתח הציבורי לקובץ טקסט. חשוב לשמור את הקובץ הזה, כי בהמשך תצטרכו להוסיף את המפתח הציבורי לקובץ המפתחות המורשים של שרת ה-SSH.
- מזינים את שם המשתמש ש-Looker ישתמש בו כדי להתחבר לשרת ה-SSH.
- מזינים את כתובת ה-IP או את שם המארח של שרת ה-SSH.
- מזינים את מספר היציאה שמשמש לחיבור לשרת ה-SSH.
שלב 4: הכנת מארח המנהרה
הוספת המפתח הציבורי לקובץ authorized_keys
כדי לאמת את סשן מנהרת ה-SSH, Looker דורש מפתח ציבורי ייחודי (Looker לא תומך בכניסה באמצעות סיסמה). אם הכרטיסייה SSH Servers מופעלת במופע שלכם, תוכלו להוריד את המפתח הציבורי לקובץ טקסט על ידי לחיצה על הלחצן Download Key (הורדת מפתח) כשמזינים את פרטי ההגדרה של SSH. אם אתם מגדירים את מנהרת ה-SSH בעזרת אנליסט של Looker, האנליסט יספק לכם מפתח ציבורי ייחודי.
תצטרכו להכין את המארח (שרת מסד הנתונים או שרת המנהור) על ידי יצירת משתמש looker והוספת המפתח הציבורי של Looker לקובץ .ssh/authorized_keys של Looker. כך עושים זאת:
בשורה של הפקודה, יוצרים קבוצה בשם
looker:sudo groupadd lookerיוצרים את המשתמש
lookerואת ספריית הבית שלו:sudo useradd -m -g looker lookerמעבר למשתמש
looker:sudo su - lookerיוצרים את הספרייה
.ssh:mkdir ~/.sshהגדרת הרשאות:
chmod 700 ~/.sshעוברים לספרייה
.ssh:cd ~/.sshיוצרים את הקובץ
authorized_keys:touch authorized_keysהגדרת הרשאות:
chmod 600 authorized_keys
באמצעות כלי עריכת הטקסט המועדף עליכם, מוסיפים את מפתח ה-SSH שקיבלתם מהאנליסט של Looker לקובץ authorized_keys. המפתח חייב להיות בשורה אחת. במקרים מסוימים, כשמאחזרים את המפתח מהאימייל, תוכנת האימייל מוסיפה מעברי שורה. אם לא תסירו אותם, לא תוכלו ליצור את מנהרת ה-SSH.
הוספת ssh-rsa לקובץ sshd_config
ב-OpenSSH, ssh-rsa מושבת כברירת מחדל, מה שיכול לגרום לשגיאות בהגדרת מנהרת SSH. כדי לפתור את הבעיה, מוסיפים את ssh-rsa לרשימת האלגוריתמים המקובלים של השרת. כך עושים זאת:
- עורכים את קובץ
sshd_config. בדרך כלל אפשר למצוא את הכתובת הזו בנתיב~/etc/ssh/sshd_config. מוסיפים לקובץ
sshd_configאת הנתונים הבאים:HostKeyAlgorithms +ssh-rsa PubKeyAcceptedAlgorithms +ssh-rsa
הגדרת MTU ב-Redshift
משתמשי Amazon Redshift צריכים להגדיר את לקוח Redshift ואת שרת ה-SSH ל-MTU של 1500.
הערות בנושא אבטחת מנהרות
כשמנהרת SSH מסתיימת בשרת מסד הנתונים, החיבור מ-Looker נראה כמו חיבור מקומי בשרת מסד הנתונים. לכן, הוא מבטל את מנגנוני האבטחה שמבוססים על חיבורים, שמוטמעים בפלטפורמות של מסדי נתונים כמו MySQL. לדוגמה, נפוץ מאוד לתת גישה מקומית למשתמש root ללא סיסמה.
כברירת מחדל, פתיחת גישת SSH מאפשרת גם העברה של כל היציאות, ועוקפת את חומות האש שבין Looker לבין מארח מסד הנתונים שמסיים את מנהרת ה-SSH. יכול להיות שסיכון האבטחה הזה ייחשב כבלתי קביל. אפשר לשלוט בהעברת הפורטים הזו ובאפשרות להתחבר לשרת המנהור על ידי הגדרה נכונה של הרשומה .ssh/authorized_keys למפתח הציבורי של Looker.
לדוגמה, אפשר להוסיף את הטקסט הבא לפני מפתח ה-SSH של Looker בקובץ authorized_keys: חשוב לציין שהטקסט הזה חייב להיות מותאם לסביבה שלכם.
no-pty,no-X11-forwarding,permitopen="localhost:3306",permitopen="localhost:3307",
command="/bin/echo Login Not Permitted"
דוגמאות ופרטים מלאים מופיעים במאמרי העזרה של Linux בנושא man ssh ו-man authorized_keys.
השלבים הבאים
אם הכרטיסייה SSH Servers (שרתי SSH) מופעלת במופע שלכם, חוזרים אל הדף Add SSH Server (הוספת שרת SSH) ובוחרים באפשרות Test & Request Fingerprint (בדיקה ובקשת טביעת אצבע) כדי לאמת את החיבור לשרת ה-SSH. ב-Looker יוצג מסך עם הגדרת ה-SSH החדשה ואפשרויות להורדה או לצפייה במפתח הציבורי, ולצפייה בטביעת האצבע הייחודית של הגדרת שרת ה-SSH.
לאחר מכן, בדף הגדרות החיבור של מסד הנתונים:
- מפעילים את המתג SSH Server (שרת SSH) ובוחרים את הגדרת שרת ה-SSH מהרשימה הנפתחת.
- בשדות מארח מרוחק ויציאה, מזינים את כתובת ה-IP או שם המארח ואת מספר היציאה של מסד הנתונים.
אם אתם מגדירים את מנהרת ה-SSH בעזרת אנליסט של Looker, צריך להודיע לאנליסט שאתם מוכנים לבדוק את מנהרת ה-SSH. אחרי שהם יאשרו שהמנהרה נוצרה, הם יספקו לכם את מספר היציאה בצד של Looker במנהרת ה-SSH.
לאחר מכן, בדף הגדרות החיבור של מסד הנתונים:
- מזינים
localhostבשדה מארח מרוחק. - בשדה יציאה, מזינים את מספר היציאה בצד Looker של מנהרת ה-SSH שסופק על ידי אנליסט Looker.
משביתים את האפשרות Verify SSL Cert (אימות אישור SSL) בדף Connections (חיבורים) של מסד הנתונים.
אי אפשר להשתמש באישור SSL כשמגדירים מנהרת SSH למסד הנתונים מ-Looker. במקום זאת, מפתח ה-SSH שהוספתם בשלב 4 מספק את אבטחת הלחיצת יד בין Looker לבין מסד הנתונים שלכם.