Автоматизація налаштування поштової програми thunderbird

Досить давно планував написати статтю про автоматизацію налаштувань програм, але все ніяк. Можливо ця стаття стане стартом для подальшого розвитку.

У даній статті ви зрозумієте як по швидше налаштувати вашу офісну пошту у програму thunderbird, можливо даний підхід буде корисний і для інших поштових програм.

У кожного програміста лінь проявляється по своєму. Я розкажу як спросити собі життя і жмакати ще менше кнопок для налаштування того чи іншого ПЗ.

Базовий принцип налаштування

Поштова програма thunderbird використовується у нас на роботі. Так як я займаюсь налаштуванням чималої кількості комп'ютерів (20штк) я вирішив трохи автоматизувати цей процес.

Саме головне при додаванні нового облікового запису в thunderbird це необхідність пам'ятати всі налаштування, а саме:

  • назва електронної пошти
  • пароль
  • pop чи imap сервер
  • сервер вхідної пошти (порт і тип передачу паролю)
  • smtp сервер (так само порт і тип пошти

thunderbird-configuration

Ви можете сказати що там є автоналаштування. Тобто програмка сама визначає тип зєднання і інші штуки. Це так, але це все займає час і відповідно не завжди їй вдається все налаштувати.

Задаємо конфігурацію поштового сервер

Почитавши трохи документації я побачив що у thunderbird досить таки непогано замучена система налаштувань. Можливо не ідеально але нормуль)

Фішка у тому що б підсунути thunderbird конфігураційний файл свого поштового серверу. Давайте розглянемо приклад, так буде простіше.

Для прикладу ви хочете додати пошту xxx [ @ ] funivan.com

Ви створюєте файл  /usr/lib/thunderbird/isp/funivan.com.xml з наступним вмістом

<?xml version="1.0" encoding="UTF-8"?>
<clientConfig version="1.1">
  <emailProvider id="funivan.com">
    <domain>funivan.com</domain>
    <displayName>funivan.com Mail</displayName>
    <displayShortName>Autoline</displayShortName>
    <incomingServer type="pop3">
      <hostname>mail.funivan.com</hostname>
      <port>110</port>
      <socketType>STARTTLS</socketType>
      <authentication>password-cleartext</authentication>
      <username>%EMAILADDRESS%</username>
    </incomingServer>
     <outgoingServer type="smtp">
      <hostname>mail.funivan.com</hostname>
      <port>25</port>
      <socketType>STARTTLS</socketType>
      <authentication>password-cleartext</authentication>
      <username>%EMAILADDRESS%</username>
    </outgoingServer>
    <documentation url="http://funivan.com">
      <descr lang="en">Funivan Home page</descr>
    </documentation>
  </emailProvider>
</clientConfig>

Фішка у тому що при створенні поштового аккаунта у вас конфігурація автоматично підтягнеться і достатньо буде просто підтвердити налаштування. Описувати що значать поля я не буду тільки дам посилангя на ресурс https://wiki.mozilla.org/Thunderbird:Autoconfiguration:ConfigFileFormat Там ви знайдете детальний опис.

Залишилось реалізувати деякі фішки:

  1. автоматичне додавання користувачів на поштовий сервер
  2. зміна паролів для поточних юзерів
  3. автоматично створювати аккаунт на комп'ютерах юзерів

Декілька слів про puppet

Саме puppet я використовую для налаштування своїх комп'ютерів а також комп'ютерів менеджерів. Благо, всі вони на linux =)

Puppet це дуже і дуже кльова система для налаштування комп'ютерів. Принцип роботи дуже простий: написав які файли, програми і директорії мають бути на комп'ютері, які користувачі і запустив програмуліну. Всі решту фішки він бере на себе.

Дам посилання для затравки https://puppetlabs.com/ а наступного разу розкажу і покажу як ним користуватись