צעדים לאבטחת ה- VPS שלנו

הדרכה זו מראה כיצד להכין ולאבטח שרת וירטואלי פרטי (VPS) באמצעות Debian GNU / Linux. לפני שמתחילים מניחים כמה דברים:

  1. יש לך היכרות בינונית עם GNU / Linux.
  2. יש VPS לשימוש אישי אליו יש לנו גישה באמצעות SSH.
  3. ל- VPS יש את ה- ipv4 החיצוני הייעודי 250.250.250.155 והספק שלנו הוא הבעלים של החסימה 250.250.0.0/16. (1)
  4. ב- VPS שלנו יהיו לנו שירותי http, https ו- ssh מופעלים רק לגישה מבחוץ.
  5. DNS חיצוני לא יופעל מכיוון שזה נעשה בדרך כלל בחלונית הספק שלנו. (2)
  6. זה יעבוד כמשתמש-על.

התקנה

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

# aptitude update & aptitude safe-upgrade # aptitude -RvW להתקין dropbear gesftpserver sslh iptables-persistent ulogd fail2ban nginx-light apache2-utils dnsutils telnet ghostscript poppler-utils zip zip unzip-free p7zip-full פחות multitail tee mc

תצורה

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

מפעיל adduser usermod -aG sudo operator

הפקודה הראשונה יוצרת את משתמש האופרטור, השנייה מוסיפה אותו לקבוצה sudo, שיאפשר לך להריץ יישומים כ- root.

התאם הרשאות למשתמשי-על

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

ויסודו

פקודה זו מאפשרת בעצם לשנות את הקובץ / etc / sudoers; בהם עלינו להכיל שורות אלה:

ברירות מחדל env_reset, timestamp_timeout = 0% sudo ALL = (ALL: ALL) ALL

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

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

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

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

% sudo ALL = (ALL: ALL) NOPASSWD: ALL

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

השבת הפעלה מחדש

מטעמי אבטחה, נשבית את ההפעלה מחדש באמצעות שילוב המקשים על Ctrl + Alt + Del, שעליו עלינו להוסיף שורה זו בקובץ / etc / inittab:

ca: 12345: ctrlaltdel: / bin / echo "Ctrl + Alt + Del הושבת."

החלף את OpenSSH ב- DropBear

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

כדי להגדיר את תצורת Dropbear, נשנה את הקובץ / etc / default / dropbear כך שהוא מכיל את שתי השורות הבאות:

NO_START = 0 DROPBEAR_EXTRA_ARGS = "- w -p 127.0.0.1:22 -I 1200 -m"

השורה הראשונה פשוט מאפשרת את השירות, והשנייה עושה כמה דברים:

  1. הימנע מגישה בסיסית.
  2. מכניס את השירות להאזנה ביציאה 22 של הממשק המקומי (נסביר מדוע בהמשך).
  3. מגדיר את זמן ההמתנה (20 דקות).

SSLH

יציאה 22 (SSH) ידועה והיא בדרך כלל אחת הראשונות שהאקרים מנסים לשבור, ולכן נשתמש ביציאה 443 (SSL) במקום זאת. קורה שיציאה זו משמשת לגלישה מאובטחת דרך HTTPS.

מסיבה זו נשתמש בחבילת sslh, שהיא לא יותר ממולבב שמנתח את החבילות שמגיעות ליציאה 443, ומנתב אותן באופן פנימי לשירות כזה או אחר, תלוי אם סוג התעבורה הוא SSH או SSL.

SSLH לא יכול להאזין בממשק שבו שירות אחר כבר מאזין, ולכן בעבר גרמנו ל- Dropbear להאזין בממשק המקומי.

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

DAEMON = / usr / sbin / sslh DAEMON_OPTS = "- משתמש sslh - להקשיב 250.250.250.155:443 --ssh 127.0.0.1:22 --ssl 127.0.0.1:443 - pidfile / var / run / sslh / sslh. pid "RUN = כן

לבסוף, אנו מפעילים מחדש את השירותים:

שירות ssh stop && שירות dropbear התחלה && שירות sslh הפעלה מחדש

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

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

sudo su - aptitude -r טיהור openssh-server

חומת אש

הדבר הבא שנעשה הוא להפריד את היומנים מחומת האש לקובץ הנפרד /var/log/firewall.log כדי להקל על ניתוח נוסף, ולכן התקנו את חבילת ulogd בעת ההפעלה. לשם כך נערוך את הקובץ /etc/logd.conf כדי להתאים את החלק הרלוונטי:

[LOGEMU] file = "/ var / log / firewall.log" sync = 1

לאחר מכן, נשנה את קובץ סיבוב הרשומות / etc / logrotate / ulogd כדי לשמור על סיבוב יומי (עם תאריך) ולשמור ספיחות דחוסות בספריה / var / log / ulog /:

/var/log/ulog/*.log /var/log/firewall.log {data datxtxt היומי חסר דחיסת דחיסה דחיסת sharpscripts ליצור 640 root ad postrotate /etc/init.d/ulogd reload mv /var/log/firewall.log-* .gz / var / log / ulog / endscript}

אז ניצור את כללי ה- netfilter על ידי ביצוע הפעולות הבאות:

IPT = $ (אילו iptables) IPEXT = 250.250.250.155 IPEXTBLK = 250.250.0.0 / 16 IPBCAST = 255.255.255.255 $ IPT -F $ IPT -X $ IPT -Z $ IPT -A INPUT -i lo -j קבל $ IPT - P INPUT DROP $ IPT -P FORWARD DROP $ IPT -P OUTPUT AcceptT $ IPT -A INPUT -m state - state INVALID -j ULOG --ulog-prefix IN_INVALID $ IPT -A INPUT -p igmp -j ULOG --ulog -קידומת IN_IGMP $ IPT -A INPUT -m pkttype - pkt-type transmission -j ULOG --ulog-prefix IN_BCAST $ IPT -A INPUT -m pkttype --pkt-type multicast -j ULOG --ulog-prefix IN_MCAST $ IPT -A FORWARD -j ULOG - קידומתulog FORWARD $ IPT -N ICMP_IN $ IPT -A קלט!  -i lo -p icmp -j ICMP_IN $ IPT -A ICMP_IN -p icmp -f -j ULOG - קידומתulog IN_ICMP_FRAGMENTED IPT -A ICMP_IN -p icmp -m icmp -m אורך!  --אורך 28: 1322 -j ULOG - קידומתulog IN_ICMP_INVALIDSIZE $ IPT -A ICMP_IN -p icmp -m icmp -m hashlimit --hashlimit מעל 4 / שניות - hashlimit-mode srcip - hashlimit-srcmask 24 - -השמיט-שם icmpflood -j ULOG - קידומתulog IN_ICMP_FLOOD $ IPT -A ICMP_IN -p icmp -m icmp -m hashlimit --ashlimit-upto 64kb / min --hashlimit-mode srcip --ashlimit-srcmask 24 -שם icmpattack -j ULOG - קידומתulog IN_ICMP_FLOOD $ IPT -A ICMP_IN -p icmp -m icmp -m u32!  --u32 "0x4 & 0x3fff = 0x0" -j ULOG - קידומתulog IN_ICMP_ATTACK $ IPT -A ICMP_IN -p icmp -m icmp!  - מצב בקשת הד-בקשה מסוג m - מצב חדש -j ULOG - קידומתulog IN_ICMP_INVALID $ IPT -A ICMP_IN -p icmp -m icmp - בקשת הד -icmp מסוג -j ULOG --ulog- קידומת IN_ICMP $ IPT -A ICMP_IN -p icmp -m icmp -icmp-type echo-request -m limit - limit 1 / sec - limit-burst 4 -j קבל $ IPT -A ICMP_IN -p icmp -m icmp - מגבלת סוג-הד-תשובה -m מגבלה - הגבלה 2 / שניה - הגבלת התפרצות 4 -j קבל $ IPT -A ICMP_IN -p icmp-m icmp - יעד יעד מסוג-בלתי ניתן להשגה-מגבלה - מגבלה 2 / sec - limit-burst 4 -j קבל $ IPT -A ICMP_IN -p icmp -m icmp - icmp סוג חורג זמן מגבול - limit 2 / sec - limit-burst 4 -j ACCEPT $ IPT -A ICMP_IN -p icmp -m icmp -icmp- סוג פרמטר-בעיה -m מגבלה - מגביל 2 / שנייה - limit-burst 4 -j קבל $ IPT -A ICMP_IN -j החזר $ IPT -N UDP_IN $ קלט IPT -A!  -i lo -p udp -j UDP_IN $ IPT -A UDP_IN!  -הנה!  -p udp -f -j ULOG --ulog-prefix IN_UDP_FRAGMENTED $ IPT -A UDP_IN -p udp -m udp - ספורט 53 מ 'אורך!  - אורך 28: 576 -j ULOG - קידומתulog IN_UDP_DNS_INVALIDSIZE $ IPT -A UDP_IN -p udp -m udp --port 53 -m -state - מדינה חדש -j ULOG - קידומתulog IN_UDP_DNSREQUEST IPT $ - UDP_IN -p udp -m udp --port 53 -m -state --state NEW -j REJECT - לדחות-עם icmp-port-unreachable $ IPT -A UDP_IN -p udp -m udp!  - ספורט 53!  -S $ IPEXTBLK!  -d $ IPBCAST -m מדינה - מדינה חדש -j ULOG החזר $ IPT -N TCP_IN $ IPT -A קלט!  -i lo -p tcp -j TCP_IN $ IPT -A TCP_IN!  -הנה!  -p tcp -f -j ULOG - קידומת ulog IN_TCP_FRAGMENTED $ IPT -A TCP_IN -p tcp -m tcp - ספורט 53-מ 'מדינה - מדינה הוקמה, אורכו קשור  - אורך 513: 1500 -j ULOG - קידומתulog IN_TCP_DNS_INVALIDSIZE $ IPT -A TCP_IN -p tcp -m tcp --port 53 -m מצב - מדינה חדש -j ULOG - קידומתulog IN_TCP_DNS $ IPT -A TCP_IN -p tcp -m tcp --dport 53 -m state - מדינה חדש -j REJECT - לדחות-עם icmp-port-unreachable $ IPT -A TCP_IN -p tcp -m tcp -m multiport!  - ספורט 80,443 -m מדינה - מדינה חדשה -j ULOG - קידומתulog IN_TCP $ IPT -A TCP_IN -p tcp -m tcp -m multiport - ספורט 80,443 -m מצב - מדינה חדש -m hashlimit - hashlimit - עד 4 / שניות - hashlimit-burst 16 - מצב shashlimit srcip - שם shashlimit navreq -j קבל $ IPT -A TCP_IN -p tcp -m tcp -m multiport - ספורט 80,443 -m מצב - מצב -אני מתחבר!  --connlimit-over 16 -j קבל $ IPT -A TCP_IN -p tcp -m tcp -m multiport! 

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

לא כל ה- VPS מאפשרים התקנה של מודולים נוספים עבור netfilter, אך הוא מאוד שימושי PSD, המאפשר לך להימנע מסריקות יציאה. למרבה הצער, מודול זה אינו משולב ב netfilter כברירת מחדל, לכן יש צורך להתקין חבילות מסוימות ואז לבנות את המודול:

aptitude -RvW להתקין iptables-dev xtables-addons-source module-assistant module-assistant --verbose - mode-mode auto-install xtables-addons-source

לאחר שהאמור לעיל נעשה, אנו יכולים להוסיף כלל כזה:

iptables -A INPUT -m psd - psd-weight -סף 15 --psd-delay -סף 2000 --psd-lo-port-weight 3 --psd-hi-ports-weight 1 -j ULOG --ulog- קידומת IN_PORTSCAN

הכלל הקודם אומר בעצם שניצור מונה שיוגדל ב- 3 בכל פעם שמנסים לגשת ליציאה נמוכה מ- 1024 וב- 1 בכל פעם שמנסים לגשת ליציאה גבוהה מ- 1023, וכאשר זה הדלפק מגיע ל 15 בפרק זמן של פחות מ 20 שניות, החבילות יירשמו על ידי אולוג כניסיון לפורט פורנס. ניתן עדיין להשליך את החבילות בבת אחת, אך במקרה זה אנו מתכוונים להשתמש בהן fail2ban, שאותם נגדיר בהמשך.

לאחר יצירת הכללים, עלינו לנקוט באמצעי זהירות מסוימים בכדי להפוך אותם להתמשכים, אחרת נאבד אותם כאשר יופעל מחדש השרת. ישנן מספר דרכים להשיג זאת; במדריך זה נשתמש בחבילת iptables-persistent שהתקנו בהתחלה, המאחסנת את הכללים /etc/iptables/rules.v4 y /etc/iptables/rules.v6 עבור ipv6.

iptables-save> /etc/iptables/rules.v4

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

IPT = $ (אילו ip6tables) $ IPT -P INPUT DROP $ IPT -P FORWARD DROP $ IPT -P OUTPUT ACCEPT $ IPT -A INPUT -i lo -j מקבלים $ IPT -A INPUT! -i lo -m state - state ESTABLISHED, RELATED -j מקבלים IPT לא מוגדר

ניתן גם להחזיק כללים אלה:

ip6tables-save> /etc/iptables/rules.v6

לבסוף ליתר ביטחון, אנו מנקים את הרישום של חומת האש ומפעילים מחדש את השירותים:

הד - n> /var/log/firewall.log שירות logrotate שירות הפעלה מחדש ulogd שירות הפעלה מחדש iptables-הפעלה מחדש מתמשכת

nginx

אנו נשתמש ב- Nginx כשרת אינטרנט, מכיוון ש- VPS נוטים לכמות RAM מופחתת בהשוואה לשרת אמיתי, כך שבדרך כלל זה רעיון טוב שיהיה משהו קל יותר מאפצ'י.

לפני קביעת התצורה של Nginx, ניצור אישור (ללא סיסמה) לשימוש ב- HTTPS:

cd / etc / nginx openssl genrsa -des3 -out cert.key 4096 cp -v cert.key cert.key.original openssl req -new-key cert.key -out cert.csr openssl rsa -in cert.key.original - מפתח cert.key נפתחsl x509 -req -days 365 -in cert.csr -signkey cert.key -out cert.crt

לאחר שהדבר נעשה, ניצור קובץ סיסמה עבור המשתמש "elusuario":

htpasswd -c .htpasswd המשתמש

לאחר מכן, נשנה את הקובץ / etc / nginx / sites-available / default להגדרת העדפות ברירת המחדל לאתר. זה יכול להיראות כך:

שרת {server_name localhost; אינדקס index.html index.htm default.html default.htm; שורש / var / www; מיקום / {# הגדר את סדר האימות והעמוד לטעינה, אם ה- URI לא נמצא try_files $ uri $ uri / /index.html; }} שרת {האזנה 127.0.0.1:443; server_name localhost; אינדקס index.html index.htm default.html default.htm; שורש / var / www; ssl על; ssl_certificate cert.crt; ssl_certificate_key cert.key; ssl_session_timeout 5 מ '; # אפשר HTTPS רק באמצעות TLS (מאובטח יותר מ- SSL) ssl_protocols TLSv1 TLSv1.1 TLSv1.2; # תן עדיפות לצפנים בעלי עוצמה גבוהה [HIGH], # העבר צופנים [MEDIUM] בעלי עוצמה בינונית לסוף הרשימה, # השבת צופנים בעלי חוזק נמוך [LOW] (40 ו- 56 ביט) # השבת צפנים באמצעות אלגוריתמי ייצוא [ EXP] השבת צופני אפס [eNULL] ללא אימות [aNULL], SSL (גרסאות 2 ו -3) ו- DSS (אפשר רק מקשים עד 1024 ביט) ssl_ciphers HIGH: + MEDIUM :! LOW :! EXP:! ANULL :! eNULL:! SSLv3:! SSLv2 :! DSS; # העדף את שיטות ההצפנה של השרת (כברירת מחדל נעשה שימוש בלקוח) ssl_prefer_server_ciphers on; מיקום / {# אפשר אימות auth_basic "כניסה"; auth_basic_user_file /etc/nginx/.htpasswd; # הגדר את סדר האימות ואת קוד העמוד לטעינה, אם URI try_files $ uri $ uri / = 404 לא נמצא; # אפשר יצירת אינדקס עבור אינדקס אוטומטי של משתמשים מאומתים; גודל אינדקס אוטומטי_מדויק כבוי; autoindex_localtime ב-; }}

אנו בודקים שהתצורה נכונה:

nginx -t

לבסוף, אנו מפעילים מחדש את השירות:

שירות nginx הפעלה מחדש - -

Fail2Ban

לפני שמתחילים להגדיר את Fail2Ban, ליתר ביטחון אנו מפסיקים את השירות ומנקים את הרישום:

fail2ban-client stop echo -n> /var/log/fail2ban.log

לאחר מכן, אנו יוצרים את קובץ התצורה /etc/fail2ban/jail.local עם התוכן המותאם אישית הבא:

# קובץ תצורה מותאם אישית /etc/fail2ban/jail.local # [DEFAULT] findtime = 43200; 12 שעות של זמן = 86400; יום אחד maxretry = 1; האיסור ייכנס לתוקף לאחר הניסיון הרביעי [ssh] מופעל = שקר [nginx-auth] מופעל = מסנן נכון = nginx-auth action = iptables-multiport [name = NoAuthFailures, port = "http, https"] logpath = / var / log / nginx * / * שגיאה * .log [nginx-badbots] מופעל = מסנן אמיתי = אפאצ'י-badbots פעולה = iptables-multiport [name = BadBots, port = "http, https"] logpath = / var / log / nginx * /*access*.log bantime = 3; שבוע maxretry = 4 [nginx-login] מופעל = מסנן אמיתי = nginx-login login = iptables-multiport [name = NoLoginFailures, port = "http, https"] logpath = / var / log / nginx * / * גישה *. יומן bantime = 604800; 1 דקות [nginx-noscript] מופעלת = פעולה אמיתית = iptables-multiport [name = NoScript, port = "http, https"] filter = nginx-noscript logpath = /var/log/nginx*/*access*.log maxretry = 0 [nginx-proxy] מופעל = פעולה אמיתית = iptables-multiport [name = NoProxy, port = "http, https"] filter = nginx-proxy logpath = /var/log/nginx*/*access*.log bantime = 1800 ; שבוע אחד maxretry = 30 [חומת אש] מופעלת = פעולה אמיתית = iptables-multiport [name = חומת האש] מסנן = יומן דרך חומת האש = /var/log/firewall.log maxretry = 0

ברגע שזה נעשה, אנו יוצרים בספריה /etc/fail2ban/filters.d/ את הקבצים הבאים:

# /etc/fail2ban/filter.d/nginx-auth.conf # מסנן אימות # חוסם כתובות IP שלא מצליחות לאמת באמצעות אימות בסיסי # [הגדרה] failregex = לא סופק משתמש / סיסמה לאימות בסיסי. * לקוח: משתמש. * לא נמצא ב. * לקוח: משתמש. * אי התאמה בסיסמא. * לקוח: ignoreregex =
# /etc/fail2ban/filter.d/nginx-login.conf # מסנן כניסה # חוסם כתובות IP שלא מצליחות לאמת באמצעות דף הכניסה של יישום האינטרנט # יומן הגישה לסריקה עבור HTTP 200 + POST / הפעלות => כניסה נכשלה # [הגדרה ] failregex = ^ -. * POST / הפעלות HTTP / 1 \ .. "200 ignoreregex =
# /etc/fail2ban/filter.d/nginx-noscript.conf # מסנן Noscript # חסום כתובות IP המנסות לבצע סקריפטים כגון .php, .pl, .exe ותסריטים מצחיקים אחרים. # התאמות למשל # 192.168.1.1 - - "GET /something.php # [הגדרה] failregex = ^ -. * GET. * (\. Php | \ .asp | \ .exe | \ .pl | \ .cgi | \ scgi) ignoreregex =
# /etc/fail2ban/filter.d/proxy.conf # מסנן פרוקסי # חסום כתובות IP המנסות להשתמש בשרת כ- proxy. # התאמות למשל # 192.168.1.1 - - "קבל http://www.something.com/ # [הגדרה] failregex = ^ -. * קבל http. * Ignoreregex =
# /etc/fail2ban/filter.d/firewall.conf # מסנן חומת האש # [הגדרה] failregex = ^. * IN_ (לא חוקי | PORTSCAN | UDP | TCP |). * SRC = . * $ ignoreregex =

לבסוף, אנו מתחילים את השירות וטוענים את התצורה:

fail2ban-service -b טעינה מחדש של fail2ban-client

אימות

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

במקרה שלא הוגדר חשבון דואר אלקטרוני ב- VPS, מומלץ להשבית הודעת אזהרה שתופיע בעת הפעלת ריבוי זנב, ועבורו נבצע את הפקודה הבאה:

הד "check_mail: 0"> ~ / .multitailrc

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

alias flog = 'multitail - עקוב אחר כל /var/log/firewall.log /var/log/fail2ban.log'

1) אלה ערכים פיקטיביים.
2) הפעלת שירותים אחרים היא קלה ברגע שאתה מבין איך זה עובד.
3) לפרטים נוספים, הפעל אנשי סודו.
4) ניתן להוסיף אופציונלי לקובץ ~ / .bash_aliases


השאירו את התגובה שלכם

כתובת הדוא"ל שלך לא תפורסם. שדות חובה מסומנים *

*

*

  1. אחראי לנתונים: מיגל אנחל גטון
  2. מטרת הנתונים: בקרת ספאם, ניהול תגובות.
  3. לגיטימציה: הסכמתך
  4. מסירת הנתונים: הנתונים לא יועברו לצדדים שלישיים אלא בהתחייבות חוקית.
  5. אחסון נתונים: מסד נתונים המתארח על ידי Occentus Networks (EU)
  6. זכויות: בכל עת תוכל להגביל, לשחזר ולמחוק את המידע שלך.

  1.   MSX דיג'ו

    יש כמה דברים מעניינים, +1

  2.   יוקיטרו דיג'ו

    @Hugo שורה זו בתצורה:

    ssl_protocols SSLv3 TLSv1;

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

    מידע על הנושא כאן:

    https://www.linode.com/docs/security/security-patches/disabling-sslv3-for-poodle
    http://disablessl3.com/

    1.    הוגו דיג'ו

      הרעיון לא היה באמת להציע את השירותים העיקריים באמצעות HTTPS, אלא להסביר כיצד להשתמש ביציאה 443 עבור SSH מבלי לאבד את האפשרות להשתמש בו ל- HTTPS במידת הצורך, אבל תודה על האזהרה.

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

  3.   דניאל PZ דיג'ו

    תודה רבה על ההדרכה הנהדרת הזו, עכשיו אני אקח אותה לפועל! :D, תמשיך כך DesdeLinux, הם תמיד מפתיעים אותי, ברכות מפרו.

  4.   Ñandekuera דיג'ו

    תודה רבה על השיתוף.

  5.   פרננדו דיג'ו

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