Menyediakan Perkhidmatan E -mel (SMTP, IMAP dan IMAP) dan menyekat akses ke SMTP - Bahagian 7
- 2322
- 502
- Clay Weber
A Lfce (Jurutera Bersertifikat Yayasan Linux ) adalah profesional terlatih yang mempunyai kemahiran untuk memasang, mengurus, dan menyelesaikan masalah rangkaian dalam sistem Linux, dan bertanggungjawab terhadap reka bentuk, pelaksanaan dan penyelenggaraan berterusan sistem seni bina dan pentadbiran pengguna.
Jurutera Bersertifikat Yayasan Linux - Bahagian 7Memperkenalkan Program Persijilan Yayasan Linux.
Dalam tutorial sebelumnya, kami membincangkan cara memasang komponen perkhidmatan mel yang diperlukan. Sekiranya anda belum memasang Postfix dan Dovecot Namun, sila rujuk bahagian 1 siri ini untuk arahan untuk melakukannya sebelum meneruskan.
Keperluan
- Pasang Pelayan Mel Postfix dan Dovecot - Bahagian 1
Dalam siaran ini, saya akan menunjukkan kepada anda cara mengkonfigurasi pelayan mel anda dan bagaimana melaksanakan tugas berikut:
- Konfigurasikan alias e -mel
- Konfigurasikan perkhidmatan IMAP dan IMAP
- Konfigurasikan perkhidmatan SMTP
- Hadkan akses ke pelayan SMTP
Catatan: Bahawa persediaan kami hanya akan meliputi pelayan mel untuk rangkaian kawasan tempatan di mana mesin tergolong dalam domain yang sama. Menghantar mesej e -mel ke domain lain memerlukan persediaan yang lebih kompleks, termasuk keupayaan resolusi nama domain, yang keluar dari skop pensijilan LFCE.
Tetapi pertama, mari kita mulakan dengan beberapa definisi.
Komponen proses penghantaran, pengangkutan dan penghantaran mel
Imej berikut menggambarkan proses pengangkutan e -mel bermula dengan pengirim sehingga mesej mencapai peti masuk penerima:
Proses pengangkutan e -melUntuk membuat ini mungkin, beberapa perkara berlaku di belakang tabir. Agar mesej e -mel dihantar dari aplikasi klien (seperti Thunderbird, Outlook, atau perkhidmatan webmail seperti gmail atau yahoo! Mel) ke pelayan melnya dan dari sana ke pelayan destinasi dan akhirnya kepada penerima yang dimaksudkan, perkhidmatan SMTP (protokol pemindahan mel mudah) mesti disediakan di setiap pelayan.
Semasa bercakap mengenai perkhidmatan e -mel, anda akan mendapati istilah berikut yang disebutkan dengan kerap:
Ejen Pengangkutan Mesej - MTA
MTA (ringkasan untuk Mel atau Ejen Pengangkutan Mesej), aka mel relay, adalah perisian yang bertanggungjawab memindahkan mesej e -mel dari pelayan ke klien (dan sebaliknya juga). Dalam siri ini, Postfix bertindak sebagai MTA kami.
Ejen Pengguna Mel - MUA
Mua, atau Ejen pengguna mel, adalah program komputer yang digunakan untuk mengakses dan menguruskan peti masuk e -mel pengguna. Contoh MUA termasuk, tetapi tidak terhad kepada antara muka Thunderbird, Outlook, dan webmail seperti Gmail, Outlook.com, untuk menamakan beberapa. Dalam siri ini, kami akan menggunakan Thunderbird dalam contoh kami.
Ejen penghantaran mel
MDA (ringkasan untuk Mesej atau Ejen penghantaran mel) adalah bahagian perisian yang sebenarnya menyampaikan mesej e -mel ke peti masuk pengguna. Dalam tutorial ini, kami akan menggunakan Dovecot sebagai MDA kami. Dovecot juga akan mengendalikan pengesahan pengguna.
Protokol Pemindahan Mail Mudah - SMTP
Agar komponen ini dapat "bercakap"Antara satu sama lain, mereka mesti"bercakap" sama "bahasa"(Atau protokol), iaitu SMTP (Protokol pemindahan mel mudah) seperti yang ditakrifkan dalam RFC 2821. Kemungkinan besar, anda perlu merujuk kepada RFC semasa menyediakan persekitaran pelayan mel anda.
Protokol lain yang perlu kita ambil kira adalah IMAP4 (Protokol Akses Mesej Internet), yang membolehkan menguruskan mesej e -mel secara langsung di pelayan tanpa memuat turunnya ke cakera keras pelanggan kami, dan POP3 (Protokol Pejabat Pos), yang membolehkan memuat turun mesej dan folder ke komputer pengguna.
Persekitaran ujian kami
Persekitaran ujian kami adalah seperti berikut:
Persediaan pelayan mel
OS Pelayan Mel: Debian Wheezy 7.5 Alamat IP: 192.168.0.15 Domain Tempatan: Contoh.com.AR Pengguna alias: [dilindungi e -mel] alias ke [dilindungi e -mel] dan [dilindungi e -mel]
Persediaan Mesin Pelanggan
Klien mel OS: Ubuntu 12.04 Alamat IP: 192.168.0.103
Pada kami pelanggan, Kami telah menyediakan resolusi DNS asas sambil menambahkan baris berikut ke /etc/hos fail.
192.168.0.15 Contoh.com.AR MailServer
Menambah alias e -mel
Secara lalai, mesej yang dihantar kepada pengguna tertentu hendaklah dihantar kepada pengguna itu sahaja. Walau bagaimanapun, jika anda juga ingin menyampaikannya kepada sekumpulan pengguna, atau kepada pengguna yang lain, anda boleh membuat alias mel atau menggunakan salah satu yang ada di /etc/postfix/alias, Mengikuti sintaks ini:
user1: user1, user2
Oleh itu, e -mel dihantar ke USER1 akan juga dihantar ke USER2. Perhatikan bahawa jika anda menghilangkan perkataan USER1 selepas kolon, seperti dalam
USER1: USER2
mesej yang dihantar ke USER1 hanya akan dihantar ke USER2, dan tidak USER1.
Dalam contoh di atas, USER1 dan USER2 sepatutnya ada pada sistem. Anda mungkin mahu merujuk Bahagian 8 dari siri LFCS jika anda perlu menyegarkan memori anda sebelum menambah pengguna baru.
- Cara Menambah dan Mengurus Pengguna/Kumpulan di Linux
- 15 Perintah untuk menambah pengguna di Linux
Dalam kes khusus kami, kami akan menggunakan alias berikut seperti yang dijelaskan sebelumnya (tambahkan baris berikut /etc/alias).
Sysadmin: Gacanepa, Jdoe
Dan jalankan arahan berikut untuk membuat atau menyegarkan jadual pencarian alias.
postali/etc/postfix/alias
Jadi mesej yang dihantar ke [dilindungi e -mel] akan dihantar ke peti masuk pengguna yang disenaraikan di atas.
Mengkonfigurasi Postfix - Perkhidmatan SMTP
Fail konfigurasi utama untuk Postfix adalah /etc/postfix/utama.cf. Anda hanya perlu menyediakan beberapa parameter sebelum dapat menggunakan perkhidmatan mel. Walau bagaimanapun, anda harus mengenali parameter konfigurasi penuh (yang boleh disenaraikan dengan Man 5 Postconf) untuk menyediakan pelayan mel yang selamat dan sepenuhnya.
Catatan: Bahawa tutorial ini hanya sepatutnya membuat anda bermula dalam proses itu dan tidak mewakili panduan komprehensif mengenai perkhidmatan e -mel dengan Linux.
Buka /etc/postfix/utama.cf fail dengan pilihan editor anda dan lakukan perubahan berikut seperti yang dijelaskan.
# vi/etc/postfix/utama.cf
1. myorigin Menentukan domain yang muncul dalam mesej yang dihantar dari pelayan. Anda mungkin melihat /etc/nama surat fail yang digunakan dengan parameter ini. Jangan ragu untuk mengeditnya jika diperlukan.
myorigin = /etc /mailNameKonfigurasikan myorigin
Sekiranya nilai di atas digunakan, surat akan dihantar sebagai [dilindungi e -mel], di mana pengguna adalah pengguna yang menghantar mesej.
2. mydestination Senarai Domain Apa yang akan menyampaikan mesej e -mel secara tempatan, bukannya penghantaran ke mesin lain (bertindak sebagai sistem geganti). Tetapan lalai cukup dalam kes kami (pastikan untuk mengedit fail yang sesuai dengan persekitaran anda).
Konfigurasikan mydestinationDimanakah /etc/postfix/pengangkutan Fail mentakrifkan hubungan antara domain dan pelayan seterusnya yang mana mesej mel. Dalam kes kami, kerana kami akan menyampaikan mesej ke rangkaian kawasan tempatan kami sahaja (dengan itu melangkaui sebarang resolusi DNS luaran), konfigurasi berikut akan mencukupi.
Contoh.com.ar tempatan: .Contoh.com.ar tempatan:
Seterusnya, kita perlu menukar fail teks biasa ini ke .db format, yang mewujudkan jadual carian yang sebenarnya akan digunakan oleh Postfix untuk mengetahui apa yang perlu dilakukan dengan mel masuk dan keluar.
# postmap/etc/postfix/pengangkutan
Anda perlu ingat untuk mencipta jadual ini jika anda menambah lebih banyak entri ke fail teks yang sepadan.
3. mynetworks mentakrifkan rangkaian yang diberi kuasa postfix akan menghantar mesej dari. Nilai lalai, Subnet, memberitahu Postfix untuk menghantar mel dari pelanggan SMTP dalam subnetworks IP yang sama dengan mesin tempatan sahaja.
myNetWorks = subnetKonfigurasikan MyNetWorks
4. relay_domains Menentukan destinasi yang mana e -mel harus dihantar ke. Kami akan meninggalkan nilai lalai yang tidak disentuh, yang menunjuk kepada mydestination. Ingat bahawa kami menyediakan pelayan mel untuk LAN kami.
relay_domains = $ mydestination
Perhatikan bahawa anda boleh menggunakan $ mydestination bukannya menyenaraikan kandungan sebenar.
Konfigurasikan domain relay5. inet_interfaces mentakrifkan rangkaian mana yang harus didengar oleh perkhidmatan mel. Lalai, semua, memberitahu Postfix untuk menggunakan semua antara muka rangkaian.
inet_interfaces = semuaKonfigurasikan antara muka rangkaian
6. Akhirnya, mailbox_size_limit dan Mesej_size_limit akan digunakan untuk menetapkan saiz peti mel setiap pengguna dan saiz maksimum yang dibenarkan dari mesej individu, masing -masing, dalam bait.
mailbox_size_limit = 51200000 message_size_limit = 5120000
Mengehadkan akses ke pelayan SMTP
The Postfix SMTP Pelayan boleh menggunakan sekatan tertentu untuk setiap permintaan sambungan pelanggan. Tidak semua pelanggan harus dibenarkan untuk mengenal pasti diri mereka ke pelayan mel menggunakan SMTP Helo perintah, dan tentunya tidak semuanya harus diberikan akses untuk menghantar atau menerima mesej.
Untuk melaksanakan sekatan ini, kami akan menggunakan arahan berikut di utama.cf fail. Walaupun mereka jelas, komen telah ditambah untuk tujuan penjelasan.
# Memerlukan pelanggan SMTP jauh memperkenalkan dirinya dengan perintah Helo atau Ehlo sebelum menghantar arahan mel atau arahan lain yang memerlukan rundingan Ehlo. SMTPD_HELO_REQUIRED = YA # Membenarkan permintaan apabila alamat IP pelanggan sepadan dengan mana -mana alamat rangkaian atau rangkaian yang disenaraikan dalam $ mynetworks # menolak permintaan apabila pelanggan Helo dan Ehlo Command mempunyai sintaks nama host yang buruk SMTPD_HELO_RESTRICTIONS = permit_mynetworks, reject_invalid_helo_hostname # Menolak permintaan apabila postfix tidak mewakili destinasi akhir untuk alamat penghantar SMTPD_SENDER_RESTRICTIONS = membenarkan_mynetworks, menolak_unknown_sender_domain # Menolak permintaan melainkan 1) Postfix bertindak sebagai penyerang mel atau 2) adalah destinasi akhir SMTPD_RECIPIENT_RESTRICTIONS = permit_mynetworks, reject_unauth_destination
Parameter Konfigurasi Postfix Halaman postconf boleh berguna untuk meneroka pilihan yang ada.
Mengkonfigurasi dovecot
Sebaik sahaja memasang dovecot, ia menyokong kotak keluar untuk POP3 dan Imap protokol, bersama dengan versi selamat mereka, POP3S dan Imap, masing -masing.
Tambahkan baris berikut /etc/dovecot/conf.D/10-mel.Conf fail.
# %u mewakili akaun pengguna yang log masuk ke # peti mel berada dalam format mbox mail_location = mbox: ~/mail: inbox =/var/mail/%u # Direktori yang dimiliki oleh kumpulan mel dan direktori yang ditetapkan ke kumpulan-tulisan (mod = 0770, kumpulan = mel) # Anda mungkin perlu menukar tetapan ini jika Postfix menjalankan pengguna / kumpulan lain pada sistem anda mail_priviled_group = mel
Sekiranya anda menyemak direktori rumah anda, anda akan melihat terdapat subdirektori mel dengan kandungan berikut.
Konfigurasikan dovecotJuga, sila ambil perhatian bahawa /var/mel/%u Fail adalah di mana surat pengguna disimpan di kebanyakan sistem.
Tambahkan arahan berikut ke /etc/dovecot/dovecot.Conf (Perhatikan bahawa IMAP dan POP3 menyiratkan IMAP dan POP3s juga).
protokol = IMAP POP3
Dan pastikan /etc/conf.D/10-SSL.Conf termasuk baris berikut (jika tidak, tambahkannya).
ssl_cert =Sekarang mari mulakan semula Dovecot dan sahkan bahawa ia mendengar di pelabuhan yang berkaitan dengan IMAP, IMAP, POP3, dan POP3S.
# netstat -npltu | Grep DovecotPeriksa port mendengarMenyiapkan Pelanggan Mel dan menghantar/melayari surat
Di komputer pelanggan kami, kami akan membuka Thunderbird dan klik pada Fail → Baru → Akaun mel yang ada. Kami akan diminta memasukkan nama akaun dan alamat e -mel yang berkaitan, bersama dengan kata laluannya. Apabila kita mengklik Teruskan, Thunderbird kemudian akan cuba menyambung ke pelayan mel untuk mengesahkan tetapan.
Konfigurasikan klien melUlangi proses di atas untuk akaun seterusnya ([dilindungi e -mel]) dan dua peti masuk berikut harus muncul di panel kiri Thunderbird.
Peti Masuk Mail PenggunaDi pelayan kami, kami akan menulis mesej e -mel ke Sysadmin, yang alias untuk Jdoe dan Gacanepa.
Hantar Mel dari CommandLineLog mel (/var/log/mel.log) nampaknya menunjukkan bahawa e -mel yang dihantar ke Sysadmin disampaikan kepada [dilindungi e -mel] dan [dilindungi e -mel], Seperti yang dapat dilihat dalam gambar berikut.
Semak Penghantaran Status MelKami dapat mengesahkan sama ada mel itu sebenarnya dihantar kepada pelanggan kami, di mana akaun IMAP dikonfigurasi di Thunderbird.
Sahkan mesej e -melAkhirnya, mari kita cuba menghantar mesej dari [dilindungi e -mel] ke [dilindungi e -mel].
Hantar mesej kepada penggunaDalam peperiksaan, anda akan diminta untuk bekerja secara eksklusif dengan utiliti baris arahan. Ini bermakna anda tidak akan dapat memasang aplikasi klien desktop seperti Thunderbird, tetapi dikehendaki menggunakan mel. Kami telah menggunakan Thunderbird dalam bab ini untuk tujuan ilustrasi sahaja.
Kesimpulan
Dalam siaran ini, kami telah menerangkan bagaimana untuk menubuhkan Imap pelayan mel untuk rangkaian kawasan tempatan anda dan bagaimana untuk menyekat akses ke SMTP pelayan. Sekiranya anda menghadapi masalah semasa melaksanakan persediaan yang sama dalam persekitaran ujian anda, anda akan ingin menyemak dokumentasi dalam talian Postfix dan Dovecot (khususnya halaman mengenai fail konfigurasi utama,/etc/postfix/utama.cf dan/etc/dovecot/dovecot.conf, masing -masing), tetapi dalam apa jua keadaan jangan ragu untuk menghubungi saya menggunakan borang komen di bawah. Saya akan lebih senang membantu anda.
Menjadi Jurutera Bersertifikat Linux
- « Panduan Terbaik untuk Menyiapkan Pelayan FTP untuk Membenarkan Log Masuk Tanpa Nama
- Melaksanakan kawalan akses wajib dengan selinux atau apparmor di linux »