![האפליקציות הטובות ביותר לשמירת מצב Whatsapp לאנדרואיד](/f/ae29e33dffd4a414e6cbbc111713a425.png?width=100&height=100)
בזה 3 מאמרים סדרה נדון כיצד להגדיר א תיקון פוסט שרת דואר עם אנטי וירוס והגנה מפני דואר זבל ב- CentOS 7 קופסא. שימו לב כי הוראות אלה פועלות גם בהפצות אחרות כגון RHEL/פדורה ו דביאן/אובונטו.
חלק 1: כיצד ליצור ולהגדיר מאגר נתונים של שרת דואר Postfix (MariaDB) בצורה מאובטחת
התוכנית שלנו מורכבת מאחסון חשבונות דוא"ל וכינויים ב- MariaDB מסד הנתונים לנוחותנו, ינוהל באמצעות phpMyAdmin.
אם תבחר לא להתקין phpMyAdmin, או שמדובר בשרת CLI בלבד, אנו נספק גם את הקוד המקביל ליצירת טבלאות מסד הנתונים שישמשו לאורך סדרה זו.
מכיוון ששמירה על שרת דואר פועל היא אחת המשימות המהותיות המוקצות בדרך כלל למערכת מנהלים ומהנדסים, אנו נספק גם כמה טיפים להפעלה יעילה של שירות קריטי זה בייצור סביבה.
לפני שתמשיך הלאה, יש לעמוד בתנאים מסוימים:
1. תזדקק לדומיין חוקי רשום באמצעות רשם דומיינים. בסדרה זו נשתמש www.linuxnewz.com
, שנרשמה באמצעות קדימה אבא.
2. תחום כזה חייב להיות מופנה אל ה- IP החיצוני של ספק ה- VPS או אירוח הענן שלך. אם אתה מארח את שרת הדואר שלך באופן עצמאי, תוכל להשתמש בשירות המוצע על ידי FreeDNS (דורש הרשמה).
בכל מקרה, עליך להגדיר א
ו MX
רשומות גם לדומיין שלך (תוכל ללמוד עוד על רשומות MX ב שאלות נפוצות אלה מאת גוגל).
לאחר הוספתם, תוכלו לחפש אותם באמצעות כלי מקוון כגון MxToolbox אוֹ ViewDNS כדי לוודא שהם מוגדרים כראוי.
חָשׁוּב: שים לב שזה עלול לקחת זמן (1-2 ימים) עד שרשומות ה- DNS יופצו והדומיין שלך יהיה זמין. בינתיים, תוכל לגשת ל- VPS שלך באמצעות כתובת ה- IP שלה כדי לבצע את המשימות המצוין להלן.
3. הגדר את FQDN (שם דומיין מלא) של ה- VPS שלך:
# hostnamectl set-hostname שם המארח שלך.
כדי להגדיר את שם מארח המערכת ולאחר מכן לערוך /etc/hosts כדלקמן (החלף AAA.BBB.CCC.DDD, שם המארח שלך, ו הדומיין שלך עם ה- IP הציבורי של השרת שלך, שם המארח שלך והדומיין הרשום שלך):
AAA.BBB.CCC.DDD שם המארח שלך.דומיין.com שם המארח שלך.
איפה שם המארח שלך הוא שם מארח המערכת שהוגדר בעבר באמצעות hostnamectl פקודה.
4. כדי להתקין חבילות תוכנה נדרשות כגון Apache, Postfix, Dovecot, MariaDB, PhpMyAdmin, SpamAssassin, ClamAV וכו ', עליך לאפשר את EPEL מאגר:
# yum התקן epel-release.
5. לאחר שתבצע את השלבים שלעיל, התקן את החבילות הדרושות:
# yum update && yum install httpd httpd-devel postfix dovecot dovecot-mysql spamassassin clamav clamav-scanner clamav-scanner-systemd clamav-data clamav-update mariadb mariadb-server php phpMyAdmin.
# aptitude update && aptitude install apache2 postfix dovecot-core dovecot-imapd dovecot-pop3d dovecot-lmtpd dovecot-mysql spamassassin clamav clamav-daemon clamav-base mariadb-client mariadb-server php5 phpMyAdmin.
6. הפעל והפעל את שרתי האינטרנט ומסדי הנתונים:
# systemctl אפשר httpd mariadb. # systemctl התחל httpd mariadb.
# systemctl אפשר apache2 mariadb. # systemctl התחל apache2 mariadb.
עם סיום ההתקנה והשירות לעיל מופעלים ופועלים, נתחיל בהקמת מסד הנתונים והטבלאות לאחסון מידע אודות חשבונות דואר של Postfix.
לשם הפשטות, נשתמש phpMyAdmin, כלי שנועד לטפל בניהול MySQL / MariaDB מסדי נתונים באמצעות ממשק אינטרנט, ליצירת וניהול מסד הנתונים של הדוא"ל.
עם זאת, על מנת להיכנס לכלי ולהשתמש בו, עלינו לבצע את השלבים הבאים:
7. אפשר את MariaDB חשבון (אתה יכול לעשות זאת על ידי הפעלת mysql_secure_installation
השירות משורת הפקודה, הקצאת סיסמה לשורש המשתמש והגדרת הגדרות ברירת המחדל המוצעות על ידי הכלי למעט "לאפשר כניסה לשורש מרחוק?“:
או צור בדרך אחרת משתמש מסד נתונים חדש:
MariaDB [(none)]> צור משתמש 'dba'@'localhost' המזוהה על ידי 'YourPasswordHere'; MariaDB [(אין)]> להעניק את כל ההוראות ב *. * ל- 'dba'@'localhost'; MariaDB [(none)]> PRUSILEGES FLUSH;
8. מכיוון שנשתמש ביישום אינטרנט לניהול מסד הנתונים של שרת הדוא"ל, עלינו לנקוט באמצעי הזהירות הדרושים כדי להגן על חיבורים לשרת. אחרת, שלנו phpMyAdmin אישורים ינועו בטקסט פשוט מעל החוט.
להגדיר אבטחת שכבות תחבורה (TLS) בשרת שלך, בצע את השלבים המפורטים ב חלק 8 מסדרת RHCE: הטמעת HTTPS באמצעות TLS באמצעות שירות אבטחת רשת (NSS) עבור Apache לפני שתמשיך הלאה.
הערה: אם אין לך גישה לקונסולת השרת, יהיה עליך למצוא דרך אחרת לייצר את האנטרופיה הדרושה במהלך יצירת המפתחות. במקרה כזה, כדאי לשקול להתקין rng-tools ורץ rngd -r /dev /urandom.
9. ב /etc/httpd/conf.d/phpMyAdmin.conf (CentOS) או /etc/phpmyadmin/apache.conf (דביאן ונגזרות), אתר את כל המופעים של השורות הבאות וודא שהם מצביעים על ה- IP הציבורי של השרת שלך:
דרוש ip AAA.BBB.CCC.DDD. אפשר מ- AAA.BBB.CCC.DDD.
בנוסף, השבת את כינויי ברירת המחדל וצור אחד חדש לגישה לדף ההתחברות שלך phpMyAdmin. זה יעזור לאבטח את האתר מפני בוטים ותוקפים חיצוניים שממקדים www.yourdomain.com/phpmyadmin אוֹ www.yourdomain.com/phpMyAdmin.
#Alias /phpMyAdmin /usr /share /phpMyAdmin. #Alias /phpmyadmin /usr /share /phpMyAdmin. כינוי /managedb /usr /share /phpMyAdmin.
כמו כן, הוסף את השורה הבאה בפנים :
לדרוש את כל המוענק.
10. ודא שהדומיין שלך נוסף לאתרים המופעלים. לִיצוֹר /etc/httpd/sites-available/linuxnewz.com.conf (CentOS) או /etc/apache2/sites-available/linuxnewz.com (דביאן) עם התוכן הבא (ודא ש DocumentRoot, זמין באתרים, ו מאופשר לאתרים קיימות ספריות):
ServerName www.linuxnewz.com ServerAlias linuxnewz.com DocumentRoot /var/www/linuxnewz.com/public_html ErrorLog /var/www/linuxnewz.com/error.log CustomLog /var/www/linuxnewz.com/requests.log אינדקס אפשרויות משולבות FollowSymLinks.
והקישור הסמלי:
# ln -s /etc/httpd/sites-available/linuxnewz.com.conf /etc/httpd/sites-enabled/linuxnewz.com.conf.
# a2ensite linuxnewz.com.
וסיימת.
11. עכשיו אתה יכול לפתוח את שלך phpMyAdmin ממשק ב https://www.yourdomain.com/managedb
(ציין זאת managedb הוא הכינוי שהגדרנו קודם לכן עבור ספריית הנתונים phpMyAdmin).
אם זה לא עובד (מה שעלול להיגרם עקב עיכוב בהתפשטות או היעדר תצורה של רשומות DNS) בינתיים תוכל לנסות להשתמש בכתובת ה- IP הציבורית של השרת שלך במקום www.yourdomain.com:
בכל מקרה, לאחר שתיכנס ל- phpMyAdmin תראה את הממשק הבא. נְקִישָׁה חָדָשׁ בחלק השמאלי:
הזן שם למסד הנתונים (EmailServer_db במקרה זה, אין צורך לבחור אוסף) ולחץ לִיצוֹר:
12. במסך הבא, בחר א שֵׁם לטבלה הראשונה (שבה נשמור את הדומיינים ששרת הדואר הזה ינהל.
שים לב שגם כאשר בסדרה זו ננהל רק דומיין אחד, תוכל להוסיף עוד מאוחר יותר) ואת מספר השדות שאתה רוצה בו, ולאחר מכן לחץ על ללכת. תתבקש לתת שם ולהגדיר את שני השדות שבהם תוכל להמשיך בבטחה כמצוין בתמונות הבאות:
כשאתה בוחר יְסוֹדִי תַחַת אינדקס ל DomainId, קבל את ערכי ברירת המחדל ולחץ על ללכת:
לחלופין, תוכל ללחוץ תצוגה מקדימה של SQL כדי לראות את הקוד מתחת למכסה המנוע:
צור טבלה `EmailServer_db`.`Domains_tbl` (` DomainId` INT NOT NULL AUTO_INCREMENT, `Domain Name` VARCHAR (50) NOT NULL, PRIMARY KEY (` DomainId`)) ENGINE = InnoDB;
כשתהיה מוכן, לחץ על להציל כדי לאשר שינויים. לאחר מכן תוכל ללחוץ חָדָשׁ תַחַת EmailServer_db להמשך יצירת טבלאות:
13. כעת בצע את השלבים הבאים ליצירת שאר הטבלאות. הקלק על ה SQL הכרטיסייה והזן את הקוד המצוין עבור כל אובייקט מסד נתונים.
שים לב שבמקרה זה בחרנו ליצור את הטבלה באמצעות שאילתת SQL בגלל הקשרים שיש ליצור בין טבלאות שונות:
צור טבלה `Users_tbl` (` UserId` INT NOT NULL AUTO_INCREMENT, `DomainId` INT NOT NULL,` password` VARCHAR (100) NOT NULL, `Email` VARCHAR (100) NOT NULL, PRIMARY KEY (`UserId`), UNIQUE KEY` Email` (`Email`), FOREIGN KEY (DomainId) References Domains_tbl (DomainId) ON DELETE CASCADE) ENGINE = InnoDB;
אתה אמור לקבל הודעת אישור (אם לא, phpMyAdmin יבקש שגיאות תחביר):
צור טבלה `Alias_tbl` (` AliasId` INT NOT NULL AUTO_INCREMENT, `DomainId` INT NOT NULL,` Source` varchar (100) NOT NULL, `Destination` varchar (100) NOT NULL, PRIMARY KEY (` AliasId`), FOREIGN KEY (DomainId) REFERENCES Domains_tbl (DomainId) למחיקה אֶשֶׁד. ) ENGINE = InnoDB;
(נְקִישָׁה ללכת בתחתית כדי להמשיך ביצירת הטבלה).
עד לנקודה זו, אמור להיות לך מבנה מסד הנתונים הבא:
מה שאומר שאתה מוכן להתחיל להוסיף כמה רשומות בחלק הבא.
14. כעת נכניס את הרשומות הבאות לשלוש הטבלאות. הסיסמאות עבור [מוגן בדוא"ל] ו [מוגן בדוא"ל] יהיה מוצפן ואת הכנס ל- Users_tbl הַצהָרָה.
כמו כן, שים לב כי הודעות הדוא"ל שנשלחו אל [מוגן בדוא"ל] ינותב אל [מוגן בדוא"ל]:
הכנס לתוך שדות Domain_tbl (שם דומיין) ('linuxnewz.com'); INSERT INTO Users_tbl (DomainId, password, Email) ערכים (1, ENCRYPT ('PasswordForFirstEmailAccount', CONCAT ('$ 6 $', SUBSTRING (SHA (RAND ())), -16))), '[מוגן בדוא"ל]'); INSERT INTO Users_tbl (DomainId, password, Email) ערכים (1, ENCRYPT ('PasswordForSecondEmailAccount', CONCAT ('$ 6 $', SUBSTRING (SHA (RAND ())), -16))), '[מוגן בדוא"ל]'); הכנס לתוך Alias_tbl (DomainId, Source, Destination) ערכים (1, '[מוגן בדוא"ל]',' לא[מוגן בדוא"ל]');
לאחר שהוספנו את הדומיין שלנו, שני חשבונות משתמשים וכינוי דוא"ל אנו מוכנים להמשיך ולהקים את שרת הדוא"ל שלנו במאמר הבא בסדרה זו, שם נגדיר את התצורה Dovecot ו תיקון פוסט.
במאמר זה רשמנו את החבילות הנדרשות להתקנת שרת דואר אלקטרוני Postfix ב- CentOS 7 VPS, והסברנו כיצד לנהל את מסד הנתונים הבסיסי באמצעות phpMyAdmin.
בשני המאמרים הבאים נסקור את התצורה של שתי התוכניות שידאגו להפצת הדוא"ל לדומיין שלנו (חלק 2) ולהראות לך כיצד להוסיף הגנה מפני דואר זבל ווירוסים (חלק 3) עבור השרת שלך.
עד אז, אל תהסס לפנות אלינו באמצעות הטופס שלהלן אם יש לך שאלות או הערות.