การติดตั้ง pfSense บน Vultr Cloud Server
pfSense เป็นเครื่องมือที่เหมาะสำหรับผู้ดูแลระบบที่ต้องการเพิ่มคุณสมบัติที่หลากหลายในเครือข่ายของพวกเขา มันเป็นหลักที่มาเปิด
การใช้เซิร์ฟเวอร์อีเมลของคุณเองสามารถให้รางวัลได้ คุณเป็นผู้รับผิดชอบข้อมูลของคุณ นอกจากนี้ยังช่วยให้คุณมีความยืดหยุ่นมากขึ้นด้วยตัวเลือกการจัดส่งของคุณ อย่างไรก็ตามมีความท้าทายเล็กน้อย คุณเสี่ยงต่อการเปิดเซิร์ฟเวอร์ของคุณจนถึงช่องโหว่รวมถึงทำให้เซิร์ฟเวอร์ของคุณเป็นรีเลย์สำหรับผู้ส่งอีเมลขยะที่จะใช้
เราก็สามารถใช้งานเซิร์ฟเวอร์อีเมลของเราได้
มีซอฟต์แวร์ที่จำเป็นสามชิ้นในการติดตั้งที่ไม่รวมอยู่ในระบบพื้นฐาน FreeBSD:
OpenSMTPd เป็น mail transfer agent (MTA) และ mail delivery agent (MDA) ซึ่งหมายความว่าสามารถสื่อสารกับเซิร์ฟเวอร์จดหมายอื่น ๆ บนSMTP
โปรโตคอลและยังจัดการการส่งจดหมายไปยังกล่องจดหมายของผู้ใช้แต่ละคน เราจะตั้งค่า OpenSMTPd เพื่อให้สามารถสื่อสารกับเซิร์ฟเวอร์ภายนอก (กรองผ่าน spamd) และส่งจดหมายไปยังผู้ใช้ในท้องถิ่นรวมถึงการส่งจดหมายท้องถิ่นจากผู้ใช้ไปยังผู้ใช้
Dovecot เป็น MDA ที่อ่านกล่องจดหมายในเครื่องและให้บริการผ่าน IMAP หรือ POP3 แก่ผู้ใช้ มันจะใช้กล่องจดหมายของผู้ใช้ในท้องถิ่นเพื่อให้บริการเนื้อหานี้
Spamd เป็นบริการกรองจดหมาย เราสามารถส่งต่อจดหมายผ่าน spamd และมันจะกรองจดหมายตามความหลากหลายของบัญชีดำ, รายชื่อที่อนุญาตและ greylist
แนวคิดทั่วไปสำหรับเมลเซิร์ฟเวอร์นี้ต้องการเส้นทางที่แตกต่างกัน:
Outside world -> Firewall -> spamd -> OpenSMTPD -> User mail boxes
Outside world -> Firewall (spamd-whitelist) -> OpenSMTPD -> User mailboxes
Outside world -> Firewall (IMAP/POP3) -> Dovecot
Outside world -> Firewall (SMTPD submission)
สำหรับบทช่วยสอนนี้เราจะใช้ PF ของ OpenBSD รุ่น FreeBSD สำหรับไฟร์วอลล์ของเรา คุณยังสามารถใช้ipfw
โดยที่การกำหนดค่าคล้ายกันมาก
หมายเหตุ: Vultr โดยค่าเริ่มต้นบล็อกพอร์ต 25 ซึ่งเซิร์ฟเวอร์ SMTP ใช้ทุกที่ หากคุณต้องการเรียกใช้เซิร์ฟเวอร์อีเมลที่ทำงานได้อย่างสมบูรณ์คุณจะต้องเปิดพอร์ตนั้น
ก่อนอื่นเราต้องติดตั้งโปรแกรมที่จำเป็น
สมมติว่าคุณกำลังทำงานในฐานะผู้ใช้ที่มีการตั้งค่าการเข้าถึง sudo เราสามารถเรียกใช้คำสั่งต่อไปนี้ พวกเขาจะแตกต่างกันไปขึ้นอยู่กับว่าคุณกำลังใช้พอร์ตหรือแพคเกจ
หากคุณไม่ต้องการฟังก์ชั่นการใช้งานที่มีอยู่ในตัวเครื่องเราขอแนะนำให้ติดตั้งผ่านแพ็คเกจ มันง่ายกว่าใช้เวลาเซิร์ฟเวอร์และทรัพยากรน้อยลงและมอบอินเทอร์เฟซที่ใช้งานง่ายและใช้งานง่าย
sudo pkg install opensmtpd dovecot spamd
make
คำสั่งต่อไปนี้จะให้ตัวเลือกการรวบรวมจำนวนมากค่าเริ่มต้นจะใช้ได้ผล อย่าเปลี่ยนแปลงสิ่งเหล่านี้จนกว่าคุณจะรู้ว่าคุณกำลังทำอะไรอยู่
sudo portsnap fetch update # or run portsnap fetch extract if using ports for the first time
cd /usr/ports/mail/opensmtpd
make install # Installs openSMTPd
make clean
cd /usr/ports/mail/dovecot
make install # Installs dovecot
make clean
cd /usr/ports/mail/spamd
make install # Installs spamd
make clean
เราจะต้องเพิ่มบรรทัดต่อไปนี้เพื่อ/etc/rc.conf
:
pf_enable="YES"
pf_rules="/usr/local/etc/pf.conf"
pflog_enable="YES"
pflog_logfile="/var/log/pflog"
obspamd_enable="YES"
obspamd_flags="-v"
obspamlogd_enable="YES"
dovecot_enable="YES"
ในการกำหนดค่า PF เราสามารถสร้างของเรา/usr/local/etc/pf.conf
:
## Set public interface ##
ext_if="vtnet0"
## set and drop IP ranges on the public interface ##
martians = "{ 127.0.0.0/8, 192.168.0.0/16, 172.16.0.0/12, \
10.0.0.0/8, 169.254.0.0/16, 192.0.2.0/24, \
0.0.0.0/8, 240.0.0.0/4 }"
table <spamd> persist
table <spamd-white> persist
# Whitelisted webmail services
table <webmail> persist file "/usr/local/etc/pf.webmail.ip.conf"
## Skip loop back interface - Skip all PF processing on interface ##
set skip on lo
## Sets the interface for which PF should gather statistics such as bytes in/out and packets passed/blocked ##
set loginterface $ext_if
# Deal with attacks based on incorrect handling of packet fragments
scrub in all
# Pass spamd whitelist
pass quick log on $ext_if inet proto tcp from <spamd-white> to $ext_if port smtp \
-> 127.0.0.1 port 25
# Pass webmail servers
rdr pass quick log on $ext_if inet proto tcp from <gmail> to $ext_if port smtp \
-> 127.0.0.1 port 25
# pass submission messages.
pass quick log on $ext_if inet proto tcp from any to $ext_if port submission modulate state
# Pass unknown mail to spamd
rdr pass log on $ext_if inet proto tcp from {!<spamd-white> <spamd>} to $ext_if port smtp \
-> 127.0.0.1 port 8025
## Blocking spoofed packets
antispoof quick for $ext_if
## Set default policy ##
block return in log all
block out all
# Drop all Non-Routable Addresses
block drop in quick on $ext_if from $martians to any
block drop out quick on $ext_if from any to $martians
pass in inet proto tcp to $ext_if port ssh
# Allow Ping-Pong stuff. Be a good sysadmin
pass inet proto icmp icmp-type echoreq
# Open up imap/pop3 support
pass quick on $ext_if proto tcp from any to any port {imap, imaps, pop3, pop3s} modulate state
# Allow outgoing traffic
pass out on $ext_if proto tcp from any to any modulate state
pass out on $ext_if proto udp from any to any keep state
นี่เป็นการกำหนดค่า PF ที่ใช้งานได้ มันค่อนข้างง่าย แต่มีนิสัยใจคอเล็กน้อยที่จะอธิบายเช่นกัน
ประการแรกเรากำหนด$ext_if
ตัวแปรของเราสำหรับvtnet0
อุปกรณ์ของเราเพื่อใช้ในภายหลัง นอกจากนี้เรายังกำหนดที่อยู่ IP ที่ไม่ถูกต้องซึ่งควรถูกทิ้งไว้บนอินเทอร์เฟซภายนอก
นอกจากนี้เรายังกำหนดสองตารางspamd
และspamd-white
- สองตารางนี้ถูกสร้างโดย spamd ในการกำหนดค่าเริ่มต้น เช่นกันเรากำหนดตารางชื่อwebmail
ที่เราจะใช้เพื่ออนุญาตผู้ให้บริการเว็บเมลรายใหญ่ผ่าน
ในการดูตารางคุณสามารถใช้คำสั่งpfctl -t tablename -T show
เพื่อแสดงรายการองค์ประกอบในตาราง
เราตั้งค่ากฎ PF สองสามข้อ: ข้ามการประมวลผลบนโลคัลอินเตอร์เฟสเปิดใช้งานสถิติบนอินเตอร์เฟสภายนอกและขัดแพ็กเก็ตขาเข้า
ถัดไปเป็นหนึ่งในส่วนสำคัญที่เราจัดการส่งปริมาณข้อมูลของเราผ่านไปยัง spamd หรือ OpenSMTPd
ลำดับแรกคือกฎการเปลี่ยนเส้นทาง (สังเกตไวยากรณ์ที่นี่ FreeBSD 11 ใช้ไวยากรณ์ PF แบบเก่า (ก่อน OpenBSD 4.6) ดังนั้นไวยากรณ์อาจดูแปลกถ้าเราได้รับอะไรใน smtp จากโฮสต์ที่แสดงในspamd
ตารางหรือไม่อยู่ในรายการspamd-white
ตารางเราเปลี่ยนเส้นทางการเชื่อมต่อผ่านไปยังภูต spamd ซึ่งข้อเสนอที่มีการเชื่อมต่อเหล่านี้. สามกฎต่อไปนี้เป็นกฎ passthrough เพื่อให้เราจริงสามารถรับจดหมาย. เราผ่านข้อความจาก IP ที่ที่ระบุไว้ในspamd-white
และwebmail
ตารางตรงผ่านไป OpenSMTPd นอกจากนี้เรายังรั���ข้อความบนพอร์ตการส่ง ( 587
)
จากนั้นมีกฎการดูแลรักษาเล็กน้อยเพื่อตั้งค่านโยบายเริ่มต้นของเราและยอมรับข้อความ SSH และ ICMP
จากนั้นเราจะส่ง IMAP และ POP3 บนอินเทอร์เฟซภายนอกของเราเพื่อเข้าถึง Dovecot
สุดท้ายเราอนุญาตการรับส่งข้อมูลทั้งหมด หากคุณต้องการเพิ่มความปลอดภัยเป็นพิเศษคุณสามารถ จำกัด พอร์ตที่คุณผ่าน แต่สำหรับเซิร์ฟเวอร์แบบใช้ครั้งเดียวก็ไม่ใช่ปัญหาที่จะผ่านทุกอย่าง
เริ่ม PF:
sudo service pf start
ตอนนี้เรามีการตั้งค่าไฟร์วอลล์ของเราเราสามารถไปยังการกำหนดค่าเซิร์ฟเวอร์อีเมลของเรา
OpenSMTPd มีรูปแบบการกำหนดค่าที่ง่ายและอ่านง่าย การกำหนดค่าการทำงานทั้งหมดสามารถใส่ได้ 14 บรรทัดตามที่คุณเห็นด้านล่าง:
#This is the smtpd server system-wide configuration file.
# See smtpd.conf(5) for more information.
ext_if=vtnet0
# If you edit the file, you have to run "smtpctl update table aliases"
table aliases file:/etc/mail/aliases
table domains file:/etc/mail/domains
# Keys
pki mail.example.com key "/usr/local/etc/letsencrypt/live/mail.example.com/privkey.pem"
pki mail.example.com certificate "/usr/local/etc/letsencrypt/live/mail.example.com/fullchain.pem"
# If you want to listen on multiple subdomains (e.g. mail.davidlenfesty) you have to add more lines
# of keys, and more lines of listeners
# Listen for local SMTP connections
listen on localhost hostname mail.example.com
# listen for filtered spamd connections
listen on lo0 port 10026
# Listen for submissions
listen on $ext_if port 587 tls-require auth pki mail.example.com tag SUBMITTED
# Accept mail from external sources.
accept from any for domain <domains> alias <aliases> deliver to maildir "~/mail"
accept for local alias <aliases> deliver to maildir "~/mail"
accept from local for any relay tls
accept tagged SUBMITTED for any relay tls
ประการแรกเรากำหนดอินเทอร์เฟซภายนอกของเราอีกครั้งรวมถึงตารางนามแฝงและโดเมนบางรายการ จากนั้นเราไปยังคีย์ SSL และใบรับรองสำหรับโดเมนใด ๆ ที่เราต้องการจัดการกับเมล
ในส่วนถัดไปเรากำหนดอินเตอร์เฟสและพอร์ตที่เราต้องการฟัง ประการแรกเราฟัง localhost สำหรับmail.example.com
โดเมนของเราสำหรับการเชื่อมต่อท้องถิ่นใด ๆ จากนั้นเราจะฟังข้อความที่กรองโดย spamd ของเราและส่งข้อความบนอินเทอร์เฟซภายนอก สุดท้ายเรารับฟังการส่งสิ่งเหล่านี้เกิดขึ้นที่พอร์ต587
และเราต้องการให้พวกเขาตรวจสอบความถูกต้องด้วยเหตุผลด้านความปลอดภัย
สุดท้ายคือaccept
การตั้งค่าของเรา เรายอมรับข้อความใด ๆ สำหรับโดเมนใด ๆ ของเราที่กำหนดไว้ในdomains
ตารางของเราสำหรับนามแฝงในaliases
ตารางของเราเพื่อส่งไปยังไดเรกทอรีบ้านของพวกเขาในmaildir
รูปแบบ จากนั้นเรายอมรับการเชื่อมต่อในพื้นที่สำหรับกล่องจดหมายในพื้นที่และส่งต่อข้อความของเราดังนั้นเราจึงสามารถส่งอีเมลได้ สุดท้ายเราก็ยอมรับข้อความที่เราส่งไปเพื่อส่งต่อ หากเราไม่ต้องการการรับรองความถูกต้องสำหรับพอร์ตการส่งของเรานี่จะเป็นอันตรายด้านความปลอดภัยที่ยิ่งใหญ่ การทำเช่นนี้จะทำให้ทุกคนใช้เซิร์ฟเวอร์ของเราเป็นสแปม
FreeBSD มาพร้อมกับไฟล์นามแฝงเริ่มต้น/etc/mail/aliases
ในรูปแบบต่อไปนี้:
vuser1: user1
vuser2: user1
vuser3: user1
vuser4: user2
นี่เป็นการกำหนดกล่องจดหมายที่แตกต่างกันและที่ที่เราต้องการส่งต่อข้อความที่ส่งไปยังกล่องจดหมายที่กำหนดเหล่านี้ เราสามารถกำหนดผู้ใช้ของเราเป็นผู้ใช้ระบบท้องถิ่นหรือกล่องจดหมายภายนอกเพื่อส่งต่อไป ไฟล์ FreeBSD ที่เป็นค่าเริ่มต้นค่อนข้างมีคำอธิบายดังนั้นคุณสามารถอ้างอิงถึงไฟล์นั้นเพื่อใช้อ้างอิง
FreeBSD ไม่ได้จัดหาไฟล์โดเมนเริ่มต้น แต่สิ่งนี้ง่ายมาก:
# Domains
example.com
mail.example.com
smtp.example.com
นี่เป็นเพียงไฟล์ข้อความธรรมดาที่มีแต่ละโดเมนที่คุณต้องการฟังในบรรทัดใหม่ คุณสามารถแสดงความคิดเห็นโดยใช้#
สัญลักษณ์ ไฟล์นี้มีอยู่เพื่อให้คุณสามารถใช้สายการกำหนดค่าน้อยลง
มีสองวิธีในการรักษาความปลอดภัยการสื่อสารของคุณด้วยเมลเซิร์ฟเวอร์ของคุณใบรับรองที่ลงชื่อด้วยตนเองและใบรับรองที่ลงชื่อ เป็นไปได้แน่นอนที่จะลงนามใบรับรองของคุณเอง แต่บริการอย่าง Let's Encrypt นั้นให้การเซ็นชื่อฟรีและใช้งานง่ายอย่างเหลือเชื่อ
ก่อนอื่นเราต้องติดตั้งโปรแกรม certbot
sudo pkg install py-certbot
หรือสามารถติดตั้งกับพอร์ต:
cd /usr/ports/security/py-certbot
make install
make clean
จากนั้นเพื่อรับใบรับรองคุณต้องตรวจสอบให้แน่ใจว่าคุณได้เปิดพอร์ต80
บนอินเทอร์เฟซภายนอกของคุณแล้ว เพิ่มบรรทัดต่อไปนี้บางแห่งในกฎการกรองของคุณใน/usr/local/etc/pf.conf
:
pass quick on $ext_if from any to any port http
จากนั้นรันpfctl -f /usr/local/etc/pf.conf
เพื่อรีโหลดชุดกฎ
จากนั้นคุณสามารถเรียกใช้คำสั่งสำหรับโดเมนใด ๆ ที่คุณต้องการรับใบรับรองสำหรับ:
certbot certonly --standalone -d mail.example.com
ขอแนะนำให้ตั้งค่ารายการ crontab ให้ทำงานcertbot renew
ทุกๆ 6 เดือนเพื่อให้แน่ใจว่าใบรับรองของคุณจะไม่หมดอายุ
จากนั้นสำหรับทุกโดเมนที่เกี่ยวข้องคุณสามารถแก้ไขบรรทัดเพื่อชี้ไปยังไฟล์คีย์ที่ถูกต้อง:
pki mail.example.com key "/usr/local/etc/letsencrypt/live/mail.example.com/privkey.pem"
pki mail.example.com certificate "/usr/local/etc/letsencrypt/live/mail.example.com/fullchain.pem"
แก้ไขหลักทรัพย์:
sudo chmod 700 /usr/local/etc/letsencrypt/archive/mail.example.com/*
หมายเหตุ: คุณจะต้องทำสิ่งนี้กับ keyfile ดั้งเดิมแต่ละอันมิฉะนั้น OpenSMTPd จะไม่เปิดมัน
ตอนนี้เราสามารถเริ่มบริการ:
sudo service smtpd start
ที่นี่เราใช้ daemon spamd ของ OpenBSD เพื่อลดปริมาณของสแปมที่เราได้รับจากอินเทอร์เน็ต โดยพื้นฐานแล้วสิ่งนี้จะกรองข้อความจาก IP ที่ทราบว่าไม่ดีจากแหล่งสแปมต่างๆรวมถึงการเชื่อมต่อขาเข้า "greylisting" (โดยค่าเริ่มต้น) Spamd ยังพยายามที่จะทำให้เสียเวลาของนักสแปมด้วยการเชื่อมต่อ "บัญชีดำ" และบัญชีเทาซึ่งหมายความว่ามันแพร่กระจายการตอบสนองของมันในหลายวินาทีซึ่งบังคับให้ลูกค้าเปิดอยู่นานกว่าปกติ
Greylisting การเชื่อมต่อจะทำเมื่อมีการเชื่อมต่อที่อยู่ IP ใหม่ที่ไม่ได้อยู่ในบัญชีดำหรือรายการที่อนุญาต เมื่อที่อยู่ใหม่เชื่อมต่อ spamd จะลดข้อความลงด้วยข้อความแสดงข้อผิดพลาดที่ไม่เข้ากันแล้วจะเพิ่มไปยังรายการชั่วคราว เนื่องจากผู้ส่งสแปมได้รับเงินสำหรับข้อความที่ส่งพวกเขาจะไม่ลองผิดพลาดอีกครั้งในขณะที่บริการที่ถูกกฎหมายจะลองอีกครั้งในไม่ช้า
คุณจะต้องเรียกใช้สิ่งต่อไปนี้เพื่อติดตั้งfdescfs
:
mount -t fdescfs null /dev/fd
จากนั้นคุณจะต้องเพิ่มบรรทัดนี้ไปที่/etc/fstab
:
fdescfs /dev/fd fdescfs rw 0 0
ไฟล์กำหนดค่าเริ่มต้น (พบใน/usr/local/etc/spamd/spamd.conf.sample
) จะทำงานได้ดี คุณสามารถแก้ไขได้เพื่อเพิ่มแหล่งข้อมูลใหม่หรือเปลี่ยนแหล่งที่คุณใช้:
sudo cp /usr/local/etc/spamd/spamd.conf.sample /usr/local/etc/spamd/spamd.conf
เราสามารถเริ่มบริการด้วยสิ่งต่อไปนี้:
sudo service obspamd start
ณ จุดนี้ spamd ถูกตั้งค่า
ปัญหาอย่างหนึ่งของแนวทาง greylisting คือบริการอีเมลขนาดใหญ่มักจะส่งอีเมลออกผ่านสปูลที่แตกต่างกันจำนวนมากและคุณไม่รับประกันว่าจะได้รับเซิร์ฟเวอร์เดียวกันที่ส่งข้อความทุกครั้ง ทางออกหนึ่งในการทำเช่นนี้คือการอนุญาตช่วง IP ที่ใช้โดยบริการเว็บเมลที่หลากหลาย นี่คือสิ่งที่ตารางเว็บเมล์ใช้สำหรับในการกำหนดค่า PF กลยุทธ์นี้สามารถย้อนกลับมาได้หากคุณรวมที่อยู่ IP ที่ผู้ส่งสแปมใช้ แต่ตราบใดที่คุณระมัดระวังในช่วงที่คุณใส่ในตารางคุณจะไม่เป็นไร
ในการเพิ่มช่วงอีเมลลงในตาราง webmail คุณสามารถเรียกใช้คำสั่งต่อไปนี้:
pfctl -t webmail -T add 192.0.2.0/24
หากคุณต้องการให้ผู้ใช้เข้าถึงอีเมลโดยไม่ต้องลงชื่อเข้าใช้ผ่าน SSH คุณจะต้องมี MDA ที่รองรับ IMAP และ / หรือ POP3 โปรแกรมที่นิยมมากคือ Dovecot ด้วยการกำหนดค่าที่ค่อนข้างง่ายและคุณสมบัติที่ทรงพลัง
เราสามารถคัดลอกการกำหนดค่าเริ่มต้น:
cd /usr/local/etc/dovecot
cp -R example-config/* ./
การกำหนดค่าประกอบด้วยไฟล์ที่แตกต่างกันไม่กี่ไฟล์ หากต้องการดูความแตกต่างระหว่างการกำหนดค่าของคุณกับค่าเริ่มต้นของ dovecot ให้รันคำสั่งด้านล่าง:
sudo doveconf -n
ต่อไปนี้เป็นโครงร่างการทำงานที่เรียบง่าย:
# 2.3.2.1 (0719df592): /usr/local/etc/dovecot/dovecot.conf
# OS: FreeBSD 11.2-RELEASE amd64
# Hostname: mail.example.com
hostname = mail.example.com
mail_location = maildir:~/mail
namespace inbox {
inbox = yes
location =
mailbox Archive {
auto = create
special_use = \Archive
}
mailbox Archives {
auto = create
special_use = \Archive
}
mailbox Drafts {
auto = subscribe
special_use = \Drafts
}
mailbox Junk {
auto = create
autoexpunge = 60 days
special_use = \Junk
}
mailbox Sent {
auto = subscribe
special_use = \Sent
}
mailbox "Sent Mail" {
auto = no
special_use = \Sent
}
mailbox "Sent Messages" {
auto = no
special_use = \Sent
}
mailbox Spam {
auto = no
special_use = \Junk
}
mailbox Trash {
auto = no
autoexpunge = 90 days
special_use = \Trash
}
prefix =
separator = /
}
passdb {
args = imap
driver = pam
}
ssl = required
ssl_cert = </usr/local/etc/letsencrypt/live/mail.example.com/fullchain.pem
ssl_dh = </usr/local/etc/dovecot/dh.pem
ssl_key = </usr/local/etc/letsencrypt/live/mail.example.com/privkey.pem
userdb {
driver = passwd
}
ไฟล์กำหนดค่าส่วนใหญ่จะอยู่ใน conf.d
คนที่มีความสำคัญ10-auth.conf
, และ10-mail.conf
10-ssl.conf
15-mailboxes.conf
คุณสามารถกำหนดค่ากล่องจดหมายที่แตกต่างกันที่คุณใช้ใน สิ่งที่คุณเห็นด้านบนเป็นการกำหนดค่าที่ดีสำหรับหลาย ๆ ระบบ แต่ระยะทางของคุณอาจแตกต่างกันไป ขอแนะนำให้คุณเล่นกับสิ่งนี้กับลูกค้าที่แตกต่างกันให้มากที่สุดเท่าที่จะทำได้
การตั้งค่าเริ่มต้นส่วนใหญ่จะถูกต้อง 10-auth.conf
หากคุณต้องการที่จะใช้ผู้ใช้ระบบในการตรวจสอบคุณจะต้องมีการแก้ไข
ยกเลิกหมายเหตุบรรทัดต่อไปนี้:
! รวม auth-system.conf.ext
เราต้องสร้างพารามิเตอร์ Diffie-Hellman:
sudo nohup openssl dhparam -out /usr/local/etc/dovecot/dh.pem
หมายเหตุ: การดำเนินการ นี้จะใช้เวลานาน นานกว่าที่คุณคาดหวัง
ตอนนี้เราสามารถเริ่ม Dovecot:
sudo service dovecot start
ณ จุดนี้เรามีเซิร์ฟเวอร์อีเมลที่ใช้งานได้ปลอดภัยและค่อนข้างปราศจากสแปม
อีกหลายสิ่งที่จะมองจากที่นี่คือการใช้ SpamAssassin เพื่อกำจัดอีเมลขยะแบบฮิวริสติกรวมถึงการค้นหาบัญชีดำสแปมมากขึ้นโดยแหล่งที่คุณเชื่อถือ
pfSense เป็นเครื่องมือที่เหมาะสำหรับผู้ดูแลระบบที่ต้องการเพิ่มคุณสมบัติที่หลากหลายในเครือข่ายของพวกเขา มันเป็นหลักที่มาเปิด
ใช้ระบบที่แตกต่างกันอย่างไร LimeSurvey เป็นซอฟต์แวร์สำรวจโอเพ่นซอร์สที่เขียนด้วย PHP รหัสที่มา LimeSurvey โฮสต์บน GitHub คู่มือนี้จะแสดงให้คุณเห็น
ข้อกำหนดความรู้พื้นฐานของ UNIX FreeBSD x64 พร้อมติดตั้ง Nginx ติดตั้งเครื่องมือคุณจะต้องใช้หลายโปรแกรมที่ไม่ได้จัดส่งมาพร้อมกับ FreeBSD Ru
ใช้ระบบที่แตกต่างกันอย่างไร Automad เป็นระบบจัดการเนื้อหาแบบโอเพนซอร์ซ (CMS) และเทมเพลตเอนจินที่เขียนด้วย PHP รหัสที่มา Automad ฉัน
ใช้ระบบที่แตกต่างกันอย่างไร Redaxscript 3.2 CMS เป็นระบบจัดการเนื้อหา (CMS) ที่ทันสมัยและมีน้ำหนักเบาฟรีและโอเพนซอร์สที่มี rocket-fas
ใช้ระบบที่แตกต่างกันอย่างไร X-Cart เป็นแพลตฟอร์มอีคอมเมิร์ซแบบโอเพ่นซอร์สที่มีความยืดหยุ่นสูงพร้อมคุณสมบัติและการผสานรวมมากมาย ซอร์สโค้ด X-Cart เป็นโฮสต์
บทนำ WordPress เป็นระบบจัดการเนื้อหาที่โดดเด่นบนอินเทอร์เน็ต มันเพิ่มประสิทธิภาพทุกอย่างตั้งแต่บล็อกไปจนถึงเว็บไซต์ที่ซับซ้อนพร้อมเนื้อหาแบบไดนามิก
Murmur เป็นซอฟต์แวร์เซิร์ฟเวอร์อย่างเป็นทางการสำหรับโปรโตคอลการสื่อสารด้วยเสียง Mumble การดำเนินการอย่างเป็นทางการนี้มีเสถียรภาพและมีประสิทธิภาพ คู่มือนี้จะ
บทช่วยสอนนี้จะแสดงวิธีปกป้องเซิร์ฟเวอร์ FreeBSD ของคุณโดยใช้ไฟร์วอลล์ OpenBSD PF เราจะสมมติว่าคุณมีการติดตั้ง FreeBSD ที่สะอาดแล้ว
ใช้ระบบที่แตกต่างกันอย่างไร Cachet เป็นระบบหน้าสถานะโอเพนซอร์สที่เขียนด้วย PHP ซอร์สโค้ดสำหรับ Cachet นั้นโฮสต์บน GitHub ในคู่มือนี้คุณจะ
ใช้ระบบที่แตกต่างกันอย่างไร WonderCMS เป็นโอเพนซอร์ซ CMS แบบเร็วและเล็กเขียนด้วย PHP รหัสที่มาของ WonderCMS นั้นโฮสต์บน Github คู่มือนี้จะ
คำนำวัตถุประสงค์ของคู่มือนี้เพื่อแสดงให้คุณเห็นว่าการสร้างโฮมเพจสำหรับเว็บไซต์ของคุณบน Vultr ด้วย OpenBSD และ httpd นั้นง่ายเพียงใด กำลังสร้าง
วานิชเป็นแคชเซิร์ฟเวอร์โอเพ่นซอร์สที่เก็บเนื้อหาจากเว็บเซิร์ฟเวอร์ มันถูกติดตั้งที่ด้านหน้าของเว็บเซิร์ฟเวอร์เช่น Apache หรือ Nginx เรื่องของชินชิน
ใช้ระบบที่แตกต่างกันอย่างไร Dolibarr เป็นการวางแผนทรัพยากรขององค์กรโอเพ่นซอร์ส (ERP) และการจัดการลูกค้าสัมพันธ์ (CRM) สำหรับธุรกิจ Dolibarr
เซิร์ฟเวอร์ VPS มักถูกโจมตีโดยผู้บุกรุก การโจมตีประเภททั่วไปจะปรากฏในบันทึกของระบบเมื่อมีการพยายามล็อกอินหลายร้อยครั้งโดยไม่ได้รับอนุญาต การตั้งค่า
ใช้ระบบที่แตกต่างกันอย่างไร ProcessWire CMS 3.0 เป็นระบบจัดการเนื้อหา (CMS) ที่ง่ายยืดหยุ่นและมีประสิทธิภาพฟรีและโอเพนซอร์ส ProcessWire CMS 3
ใช้ระบบที่แตกต่างกันอย่างไร Matomo (ชื่อเดิม Piwik) เป็นแพลตฟอร์มการวิเคราะห์โอเพนซอร์ซซึ่งเป็นทางเลือกเปิดให้ Google Analytics แหล่งที่มาของ Matomo นั้นโฮสต์อยู่
ใช้ระบบที่แตกต่างกันอย่างไร TLS 1.3 เป็นเวอร์ชันของโปรโตคอล Transport Layer Security (TLS) ที่เผยแพร่ในปี 2018 ตามมาตรฐานที่เสนอใน RFC 8446
บทนำบทช่วยสอนนี้แสดงให้เห็นถึงเซิร์ฟเวอร์อีเมลแบบเต็มรูปแบบที่ทำงานบน OpenBSD โดยใช้ OpenSMTPD, Dovecot, Rspamd และ RainLoop OpenSMTPD คือ th
ใช้ระบบที่แตกต่างกันอย่างไร Mailtrain เป็นแอปรับจดหมายข่าวแบบโอเพ่นซอร���สที่สร้างขึ้นบน Node.js และ MySQL / MariaDB แหล่งที่มาของ Mailtrains อยู่บน GitHub Thi
เรียนรู้วิธีการติดตั้ง Directus 6.4 CMS บน CentOS 7; ระบบการจัดการเนื้อหา Headless ที่มีความยืดหยุ่นสูงและปลอดภัย
เรียนรู้วิธีการตั้งค่า Nginx บน Ubuntu สำหรับการสตรีมวิดีโอสด HLS ด้วยคำแนะนำที่ชัดเจนและเป็นประโยชน์
เรียนรู้การใช้ Percona XtraBackup สำหรับการสำรองข้อมูลด้วยวิธีที่เป็นระบบและง่ายดายบน WordPress ออนไลน์ของคุณ
ReactOS ซึ่งเป็นโอเพ่นซอร์สและระบบปฏิบัติการฟรีพร้อมเวอร์ชันล่าสุดแล้ว สามารถตอบสนองความต้องการของผู้ใช้ Windows ยุคใหม่และล้ม Microsoft ได้หรือไม่? มาหาข้อมูลเพิ่มเติมเกี่ยวกับรูปแบบเก่านี้ แต่เป็นประสบการณ์ OS ที่ใหม่กว่ากัน
การโจมตีของ Ransomware กำลังเพิ่มขึ้น แต่ AI สามารถช่วยจัดการกับไวรัสคอมพิวเตอร์ตัวล่าสุดได้หรือไม่? AI คือคำตอบ? อ่านที่นี่รู้ว่า AI boone หรือ bane
ในที่สุด Whatsapp ก็เปิดตัวแอพเดสก์ท็อปสำหรับผู้ใช้ Mac และ Windows ตอนนี้คุณสามารถเข้าถึง Whatsapp จาก Windows หรือ Mac ได้อย่างง่ายดาย ใช้ได้กับ Windows 8+ และ Mac OS 10.9+
อ่านข้อมูลนี้เพื่อทราบว่าปัญญาประดิษฐ์กำลังได้รับความนิยมในหมู่บริษัทขนาดเล็กอย่างไร และเพิ่มโอกาสในการทำให้พวกเขาเติบโตและทำให้คู่แข่งได้เปรียบ
เมื่อเร็ว ๆ นี้ Apple เปิดตัว macOS Catalina 10.15.4 การอัปเดตเสริมเพื่อแก้ไขปัญหา แต่ดูเหมือนว่าการอัปเดตทำให้เกิดปัญหามากขึ้นที่นำไปสู่การสร้างเครื่อง Mac อ่านบทความนี้เพื่อเรียนรู้เพิ่มเติม
13 เครื่องมือดึงข้อมูลเชิงพาณิชย์ของ Big Data
คอมพิวเตอร์ของเราจัดเก็บข้อมูลทั้งหมดในลักษณะที่เรียกว่าระบบไฟล์บันทึก เป็นวิธีการที่มีประสิทธิภาพที่ช่วยให้คอมพิวเตอร์สามารถค้นหาและแสดงไฟล์ได้ทันทีที่คุณกดค้นหาhttps://wethegeek.com/?p=94116&preview=true