POP3 மற்றும் IMAP4 சர்வரின் புதிய பதிப்பு Dovecot 2.3.21

SORT, THREAD மற்றும் IDLE போன்ற பிரபலமான நீட்டிப்புகளுடன் POP3 மற்றும் IMAP4rev2.3.21 நெறிமுறைகள் மற்றும் அங்கீகாரம் மற்றும் குறியாக்க வழிமுறைகள் (SASL, TLS, SASL, TLS, போன்ற உயர் செயல்திறன் கொண்ட POP3/IMAP4 சேவையக Dovecot 1 இன் புதிய பதிப்பு வெளியிடப்பட்டது. SCRAM). Dovecot கிளாசிக் mbox மற்றும் Maildir உடன் முழுமையாக இணக்கமாக உள்ளது, செயல்திறனை மேம்படுத்த வெளிப்புற குறியீடுகளைப் பயன்படுத்துகிறது. செயல்பாட்டை விரிவாக்க செருகுநிரல்களைப் பயன்படுத்தலாம் (உதாரணமாக, ஒதுக்கீடுகள் மற்றும் ACLகள் செருகுநிரல்கள் மூலம் செயல்படுத்தப்படுகின்றன). திட்டக் குறியீடு LGPL மற்றும் MIT உரிமங்களின் கீழ் விநியோகிக்கப்படுகிறது.

முக்கிய மாற்றங்கள்:

  • lib-oauth2: விடுபட்ட "typ" புலத்துடன் JWT டோக்கன்களின் சரிபார்ப்பை அனுமதிக்கவும். "typ" புலமானது இடத்தை சேமிக்க சில முக்கிய வழங்குநர்களால் பயன்படுத்தப்படுவதில்லை, குறிப்பாக kubernetes. இப்போது "டைப்" இல்லாதது ஏற்றுக்கொள்ளத்தக்கது, ஆனால் அது இருந்தால் அது "jwt" ஆக இருக்க வேண்டும்.
  • auth: passdb மற்றும் userdb இலிருந்து "Auth" பதில் "event_" மதிப்பைக் கொண்டிருக்கலாம் =மதிப்பு" இது முறையே உள்நுழைவு நிகழ்வு மற்றும் மின்னஞ்சல் பயனர் நிகழ்வில் சேர்க்கப்படும்.
  • lib-master: செயல்முறை எதற்காக காத்திருக்கிறது என்பதை தெளிவுபடுத்த, துவக்கத்தின் பல்வேறு நிலைகளில் செயல்முறை தலைப்பை அமைக்கிறது.
  • lib-storage: mail_temp_scan_interval ஆனது இப்போது 0...30% ஆல் அதிகரிக்கப்பட்டுள்ளது, இது பயனர்பெயர் ஹாஷின் அடிப்படையில் ஏற்றப்படும் ஸ்பைக்குகளின் வாய்ப்பைக் குறைக்கிறது.
  • lib-storage: பயனர்கள் அனுபவிக்கும் காலதாமதத்தைக் குறைக்க அஞ்சல் பெட்டி திறக்கப்பட்ட தருணத்திலிருந்து அது மூடப்பட்ட தருணத்திற்கு தற்காலிக கோப்பு ஸ்கேனிங் நகர்த்தப்பட்டது.
  • புள்ளிவிவரங்கள்: மெட்ரிக்கில் புலங்கள் குறிப்பிடப்பட்டிருந்தால், இந்த புலங்கள் அனைத்தும் எக்ஸ்போசிஷன் வடிவத்தில் ப்ரோமிதியஸுக்கு கவுண்டர்களாக ஏற்றுமதி செய்யப்படும்.
  • "*-உள்நுழைவு": SSL இணைப்பு கவனக்குறைவாக நிறுத்தப்பட்டால் செயல்முறைகள் செயலிழக்கக்கூடும். - acl: செருகுநிரலை ஏற்றும் போது, ​​\\HasChildren மற்றும் \\HasNoChildren கொடிகள் அவர்களின் பெயர்களில் '*' மற்றும் '%' உள்ள அஞ்சல் பெட்டிகளுக்கு தவறாக கணக்கிடப்பட்டது.
  • அங்கீகாரம்: தொடக்க தோல்வியின் போது PostgreSQL DBMS உடன் இணைக்கும் போது ஒரு செயலிழப்பு ஏற்பட்டது.
  • அங்கீகாரம்: தவறான கடவுச்சொற்களுடன் உள்நுழையும்போது (எடுத்துக்காட்டாக, அறியப்படாத திட்டத்துடன்), "உள் பிழை"க்குப் பதிலாக "கடவுச்சொல் பொருந்தாதது" என்ற பிழையை passdb வீசுகிறது.
  • அங்கீகாரம்: XOAUTH2 மற்றும் OAUTHBEARER வழிமுறைகள் எந்தப் பிழையிலும் நெறிமுறை சார்ந்த பிழைச் செய்தியை வெளியிடவில்லை. இது குறிப்பாக OIDC ஐக் கண்டறிவதில் தடையாக இருந்தது.
  • dbox: last_temp_file_scan தலைப்பு அமைக்கப்படவில்லை என்றால் (குறிப்பாக dsync இடம்பெயர்வுக்குப் பிறகு), அடுத்த முறை அஞ்சல் பெட்டி திறக்கப்படும்போது, ​​தற்காலிக கோப்புகளின் ஸ்கேன் எப்போதும் தொடங்கப்படும். இது இடம்பெயர்வுக்குப் பிறகு சுமை ஸ்பைக்கை ஏற்படுத்தலாம். தலைப்பு இல்லாத நேரத்தில் அஞ்சல் பெட்டி கோப்பகத்தைப் பயன்படுத்தி சரி செய்யப்பட்டது, இது பொதுவாக ஸ்கேன் நேரத்தை எதிர்காலத்திற்குத் தள்ளும்.
  • dict-redis: பரிவர்த்தனை திரும்பப்பெறுதல் தோல்வியடைந்தது.
  • dsync: தொலை முனையில் உள்ள அஞ்சல்பெட்டியை நீக்கும் போது, ​​படிநிலைப் பிரிப்பாளர்கள் பொருந்தாதபோது, ​​ஒரு எல்லையற்ற வளையம் ஏற்பட்டது, இதன் விளைவாக நினைவாற்றல் இல்லாத நிகழ்வு ஏற்பட்டது.
  • dsync: BROKENCHAR அமைக்கப்படாவிட்டால், '%' இல் முடிவடையும் கோப்புறை பெயர்களில் அதிகரிக்கும் dsync செய்யப்படாது. மேலும், மற்ற இடங்களில் '%' உள்ள கோப்புறை பெயர்கள் தேவையில்லாமல் ஒரு தற்காலிக பெயராக மறுபெயரிடப்பட்டு, ஒவ்வொரு அதிகரிக்கும் dsync உடன் மீண்டும் மீண்டும் பெயரிடப்பட்டது. பின்னடைவு v2.3.19.
  • imap-hibernate: IMAP கிளையன்ட் திறக்கும் போது "(பதிப்பு பெறப்பட்டது)" செய்தியுடன் காலாவதியானால், திறத்தல் பின்னர் வெற்றிகரமாக முடிந்து இயல்பான செயல்பாட்டை தொடரலாம். கிளையன்ட் துண்டிக்கப்பட்டதை imap-hibernate ஏற்கனவே கண்டறிந்ததால் இது குழப்பமாக இருந்தது. உறக்கநிலை காலக்கெடுவுடன் இணைப்பை கட்டாயப்படுத்துவதன் மூலம் இதைத் தவிர்க்கலாம்.
  • imapc: மெய்நிகர் செருகுநிரல் மூலம் காட்டப்படும் கோப்புறை சேமிப்பகத்திலிருந்து மறைந்துவிடும் போது செயலிழக்கிறது.
  • imapc: EXPUNGE, EXISTS, அல்லது FETCH பதில்கள் சர்வரில் இருந்து முன்பு தேர்ந்தெடுக்கப்பட்ட அஞ்சல் பெட்டிக்கு, அவை தற்போது தேர்ந்தெடுக்கப்பட்ட புதிய அஞ்சல்பெட்டியைச் சேர்ந்ததாகக் கருதப்படும். இது எச்சரிக்கைகளை ஏற்படுத்தலாம்.
  • lib-http: Dovecot HTTP சேவையகம் (doveadm, stats/openmetrics) பதிலை முழுமையாக அனுப்பும் முன் HTTP கிளையண்டுகளை துண்டிக்கலாம். கர்னல் சாக்கெட் பஃபர்கள் மிகவும் நிரம்பியிருக்கும் பிஸியான சர்வர்களில் மட்டுமே இது நடந்தது.
  • lib-http: கிளையன்ட் முன்கூட்டியே துண்டிக்கப்பட்டால், http சேவையகத்தின் சாத்தியமான செயலிழப்பு சரி செய்யப்பட்டது. 2.3.18 இல் பின்னடைவு.
  • lib-index: இண்டெக்ஸ் கோப்பின் சிதைவு ஒரு செயலிழப்பை ஏற்படுத்தலாம். தீர்க்கப்பட்டது: பீதி: கோப்பு mail-transaction-log-view.c: வரி 165 (mail_transaction_log_view_set): உறுதிப்படுத்தல் தோல்வியடைந்தது: (min_file_seq <= max_file_seq).
  • lib-index: ஏற்கனவே உள்ள கேச் கோப்பை 1 ஜிபிக்கு மேல் அழிப்பது செயலிழப்பை ஏற்படுத்தலாம். இப்போது, ​​​​அழித்த பிறகு, 1 ஜிபியை விட பெரிய கேச் கோப்புகள் நீக்கப்படும். சரி செய்யப்பட்டது: பீதி: கோப்பு mail-index-util.c: வரி 10 (mail_index_uint32_to_offset): வலியுறுத்தல் தோல்வியடைந்தது: (ஆஃப்செட் <0x40000000).
  • lib-lua: "dns-client" சாக்கெட் தற்போதைய கோப்பகத்தில் இருக்கும் என்று எதிர்பார்த்ததால், HTTP கிளையண்டால் அஞ்சல் செயல்முறைகளில் DNS பெயர்களைத் தீர்க்க முடியவில்லை.
  • lib-oauth2: Dovecot வாடிக்கையாளர்_id மற்றும் client_secret ஐ POST அளவுருக்களாக உள்நோக்கு சேவையகத்திற்கு அனுப்பியது. இருப்பினும், அடிப்படை அங்கீகாரத்துடன் அவற்றின் பயன்பாடு விருப்பமானது.
  • lib-oauth2: டோக்கனில் "aud" இல்லாவிட்டாலும், Dovecot இல் உள்ளமைக்கப்பட்டிருந்தால் JWT "aud" இன் சரிபார்ப்பு செய்யப்படாது.
  • lib-oauth2: JWT கீ வகை சரிபார்ப்பு மிகவும் கண்டிப்பானது.
  • lib-oauth2: JWT டோக்கன் பார்வையாளர்கள் க்ளையன்ட்_ஐடிக்கு எதிராக விவரக்குறிப்பின்படி சரிபார்க்கப்படவில்லை.
  • lib-ssl-iostream: ssl_require_crl=yes விருப்பத்தைப் பயன்படுத்துவது, வெளியேறும் SSL/TLS இணைப்புகளுக்கான CRL சரிபார்ப்பை தோல்வியடையச் செய்யலாம், இருப்பினும் இது கிளையன்ட் SSL சான்றிதழ்களுக்கான CRL சோதனையை மட்டுமே பாதிக்கும். v2.3.17 பின்னடைவு.
  • lib-sql: இணைக்கும் போது MySQL இயக்கி நினைவகம் கசிந்தது.
  • lib-storage: குறைந்த வட்டு இடத்திற்கான பல்வேறு திருத்தங்கள்.
  • முதன்மை: idle_kill சேவையை அமைப்பது பிஸியான சர்வர்களில் சரியாக வேலை செய்யவில்லை. எந்தவொரு செயல்முறையும் கொல்லப்படுவதற்கு நீண்ட நேரம் செயலற்றதாக இருந்தது என்பது மிகவும் சாத்தியமில்லை. கூடுதலாக, அதிக எண்ணிக்கையிலான செயல்முறைகளுடன் (உதாரணமாக, imap), idle_kill செயலாக்க குறியீடு முக்கிய செயல்பாட்டில் நிறைய CPU ஐப் பயன்படுத்துகிறது. இப்போது ஒவ்வொரு idle_kill நேர இடைவெளியும் மிகக் குறைந்த எண்ணிக்கையிலான செயலற்ற செயல்முறைகளைக் கண்காணித்து, அந்த எண்ணைக் கொல்லும்.
  • mdbox: எப்போதும் காலியாக உள்ள கோப்பகங்களுக்கு தற்காலிக கோப்புகளை சரிபார்த்தல்.
  • mdbox: மின்னஞ்சல்களை எழுதும் போது, ​​தவறான பெற்றோர் கோப்பகத்தில் fdatasync() அழைப்பு செயல்படுத்தப்பட்டது. மேலும், அது செயலிழக்கும்போது, ​​பதிவில் பிழை எழுதுவதற்குப் பதிலாக அது செயலிழந்தது.
  • notify_status: பயனர் துவக்கம் தோல்வியடையும் போது செருகுநிரல் செயலிழக்கிறது. - pop3: ':' உடன் ஒரு கட்டளையை அனுப்புவது ஒரு "உறுதி-விபத்து" க்கு வழிவகுத்தது. வெளியீட்டில் பின்னடைவு 2.3.18.
  • புள்ளிவிவரங்கள்: "doveadm stats add" கட்டளையைப் பயன்படுத்தி புதிய மெட்ரிக்கை மாறும் வகையில் சேர்க்கும் போது, ​​இல்லாத நிகழ்வு ஏற்றுமதியாளரை அணுகும் போது ஏற்பட்ட பீதி சரி செய்யப்பட்டது. இப்போது சரியான பிழை கொடுக்கப்பட்டுள்ளது.
  • புள்ளிவிவரங்கள்: ஒரு செயல்முறை பல நிகழ்வுகளை ஏற்றுமதி செய்து பின்னர் வெளியேறினால், சமீபத்திய நிகழ்வுகளில் சில தொலைந்து போயிருக்கலாம்.
  • புள்ளிவிவரங்கள்: தவறான ப்ரோமிதியஸ் லேபிள் பெயர்கள் சில ஹிஸ்டோகிராம் group_by உள்ளமைவுகளுடன் உருவாக்கப்பட்டன. இந்த குறிச்சொற்களை ப்ரோமிதியஸ் நிராகரித்தார்.
  • வரவேற்பு: INBOX உருவாக்கப்பட்டு திறக்கப்படாத சில சூழ்நிலைகளில் செருகுநிரல் தோல்வியடைந்தது, எடுத்துக்காட்டாக, INBOX ஐத் திறப்பதற்கு முன்பு GETMETADATA பயன்படுத்தப்பட்டிருந்தால்.

ஆதாரம்: opennet.ru

கருத்தைச் சேர்