Як адміністратори повинні читати кореневу пошту?


61

Який спосіб Ubuntu для системних адміністраторів отримувати системні сповіщення, які зазвичай мають форму електронної пошти, що надсилається на кореневий рахунок?

Прикладами таких сповіщень є вихід cron завдань або деградовані RAID-сповіщення .

За майже встановленої установки Ubuntu 10.04 за замовчуванням я не можу знайти жодного способу, щоб з кореневою поштою сталося щось інше, ніж депонування /var/mail/root. Як користувачі повинні 1. виявити його та 2. прочитати його під час надходження?

Я помічаю , що на бородавчастої, інсталятор доданий root: myusernameв /etc/aliases. Тоді тоді користувач, який встановив систему, якщо (и) він прочитав локальну пошту. Тож, здається, десь по дорозі відбувся регрес. Однак це не було повним рішенням, оскільки не можна очікувати, що користувачі Ubuntu знають, що вони мають локальну пошту, і повинні налаштувати свого поштового клієнта для його читання.

ДОБАВЕНО : надаючи поточні відповіді, користувач сервера повинен мати можливість впоратися, якщо він знає про проблему. Досить справедливо. Але розглянемо J. Random Desktop User, який не знає, як користуватися командним рядком і знає лише, як натиснути значок поштової скриньки, щоб прочитати його пошту. Як йому можна повідомити, що його система хоче сказати йому щось? (Дозвольте одноразове втручання більш компетентного користувача, якщо це неминуче.)


1
Мені вдалося змусити KMail прочитати мою локальну пошту, використовуючи дуже дивні хаки, які я знайшов, але оскільки оновлення до 11.10 я втрачено
Дірк Хартцер Вальдек

Нещодавно я зробив довгий підручник з цієї теми, хоча стосувався Thunderbird: див. Askubuntu.com/questions/192572/…

@Mik Це, трохи позначившись із встановленням постфікса у верхній частині, приємно відповість тут.
Жиль

@Gilles Дякую, хоча, мабуть, мені доведеться скоротити або видалити відповідь на інше питання, щоб не було дублювання.

@Mik Ні, було б непогано переповнити фактично таку ж відповідь (не зовсім так, оскільки тут вам потрібно буде почати, встановивши MTA). Питання не є повторюваними: тут є відповіді, які не спрацювали б на інше питання, і навпаки. Буває, що іноді 90% відповіді можна переробити на інше питання, це добре.
Жиль

Відповіді:


33

Заохочений у коментарях Жилла , я адаптував і розширив ще одну відповідь:

(Я запускаю Ubuntu 12.04.1 LTS, але загальний процес налаштування повинен застосовуватися до попереднього та майбутнього Ubuntus)


Перше, що потрібно зробити, - це встановити агент перенесення пошти (MTA), щоб пошта могла бути ретрансльована на поштовий агент користувача (MUA), такий як Thunderbird. Це необхідно лише тому, що ми маємо справу з місцевою поштою та хочемо мати можливість надсилати та отримувати її; у звичайних віддалених облікових записах типу gmail необхідний лише такий користувальницький агент Thunderbird.

Я використовую postfix, що саме по собі є альтернативою sendmail, серед яких є комерційні та відкриті версії. Більше інформації про можливості Postfix можна отримати на офіційному сайті, і користувачі можуть виявити, що списки розсилки містять корисну інформацію, якщо виникають якісь проблеми.

Отже, щоб встановити програму, запустіть

sudo apt-get install postfix

Ви можете або налаштувати його під час встановлення, або відхилити пропозицію та пізніше запустити

sudo dpkg-reconfigure postfix

створити важливий конфігураційний файл ( /etc/postfix/main.cfg). Якщо ви коли-небудь вручну редагуєте цей файл, що необов'язково рекомендується, потрібно запустити sudo newaliasesі sudo service postfix restartпотім застосувати зміни.

Postfixдосить просто в налаштуванні, хоча у вас можуть бути певні налаштування, які ви хочете застосувати. На першому екрані, який ви бачите нижче, потрібно вибрати локальний варіант для вашої пошти:

введіть тут опис зображення

Потім на наступному екрані виберіть "ім'я пошти"; зазвичай це те саме, що /etc/hostname. Ви можете прийняти значення за замовчуванням для більшості наступних екранів.

введіть тут опис зображення

Коли він згадує /etc/aliasesі одержувача Root та Postmaster (як зазначено вище), ви можете заповнити своє ім’я користувача, але переконайтесь, що ви перевіряєте файл псевдонімів, як має бути, прочитавши наступний розділ цього підручника.

По-перше, як це також рекомендується в цій дискусії , ви /etc/aliasesповинні бути таким, якщо він налаштований правильно:

postmaster:    root
root:   mike 

Якщо немає, то змінити його sudo nano /etc/aliases, а потім запустити sudo newaliasesі sudo service postfix restartтак , що конфігурація оновлюється. Postfix'sФункція псевдонімів дозволяє переадресовувати пошту, тому налаштування дуже важливо для решти цього підручника.

Як також зазначалося у вищенаведеному посиланні , вам потрібно створити .forwardфайл, що містить ваше ім'я користувача та localhost: наприклад, mike@localhostщоб коренева пошта буде переслана вам. Для цього введіть ці команди:

sudo touch /root/.forward

а потім біжи

sudo nano /root/.forward

розмістити свого користувача: наприклад, mike@localhostу файлі та зберегти його.

Крім того , я вважав, що потрібно додати свого користувача до групи пошти, щоб він Thunderbirdмав доступ до поштових файлів:

sudo adduser $USER mail

а потім вийти та увійти, щоб зміни набрали чинності. Там немає необхідності chownабо chmodбудь - яких файлів, так як деякі статті могли б запропонувати, і додавання вашого користувача в поштовій групу набагато краще , практика і уникає прямого зміни дозволів на кореневої файлової системи.


Тепер для Thunderbirdконфігурації. Перейдіть до редагування> налаштування облікового запису> дії з обліковим записом> додайте інший обліковий запис> виберіть Spoolmail Unix і на наступному екрані введіть своє ім’я користувача у перше поле та поставте yourusername@localhostу друге поле.

введіть тут опис зображення введіть тут опис зображення

Тепер перейдіть до свого нового облікового запису в налаштуваннях облікового запису та виберіть налаштування сервера та виберіть локальний каталог як /var/mailабо /var/mail/username(якщо налаштування), як на скріншоті нижче.

введіть тут опис зображення

Відповідно до інструкцій у цій статті, вам потрібно буде налаштувати smtp-сервер, якщо ви хочете перевірити обліковий запис, надіславши пошту, root@localhostа потім натиснувши отримати пошту в Thunderbird, щоб її отримати, оскільки коренева пошта перенаправляється на youruser@localhost.

Перейдіть до налаштувань облікового запису> вихідний сервер і виберіть додати новий. Налаштування повинні бути такими, як на скріншоті нижче:

введіть тут опис зображення

Тепер, нарешті, протестуйте свій обліковий запис, склавши пошту, root@localhostа потім через кілька секунд натиснувши отримати пошту на свій рахунок. Ви повинні побачити такий електронний лист:

введіть тут опис зображення

Деякі програми або журнали потрібно налаштувати так, щоб вони відправляли пошту в root, але це можна вирішити, як виявите необхідність. Ця стаття, сподіваємось, повинна бути корисною, оскільки не завжди просто налаштовувати Thunderbirdна отримання місцевої пошти.


Працює до 17.04, групи я не торкався.
Артем

21

Якщо це сервер, я настійно пропоную вам псевдонім root на справжню адресу електронної пошти, щоб ви отримали електронну пошту вашим адміністраторам. Це так само просто, як додавати

# Person who should get root's mail
root:   all_administrators@mydomain.com

до кінця / etc / псевдонімів

Крім того, ви можете налаштувати пошту для псевдоніму для вашого локального імені користувача, і тоді, коли ви ввійдете в систему, ви отримаєте повідомлення "Ви маєте пошту", яке ви можете перевірити за допомогою mailкоманди або встановивши сосна / mutt / alpine або щось подібне на цьому сервері ..


1
Дякую, це, мабуть, досить добре пояснення для адміністратора сервера. Але як мені пояснити це користувачеві Дж. Random на робочому столі, який точно не збирається використовувати командний рядок, але хотів би знати, чи не виходять з ладу його диски?
Жиль

1
Ви починаєте запитання: "Який спосіб Ubuntu для системних адміністраторів отримувати системні сповіщення ...". Але так чи інакше, для користувачів настільних комп'ютерів слідкувати за системними повідомленнями, вони могли б використовувати gnome-system-log для перегляду журналів (який уже встановлений на Ubuntu Desktop як частина пакету gnome-utils) або додати "root: username "до кінця / etc / псевдонімів. Я погоджуюся з цим слабким рішенням, і, можливо, помилка повинна бути піднята, щоб повернути цю функцію назад, оскільки немає способу графічного інтерфейсу зробити це при встановленні Ubuntu за замовчуванням.
Річард Холлоуей

Псевдонім для адміністраторів сервера найкращий. Ви також можете отримати sudo su - тоді використовуйте клієнт CLI. Але якщо ви серйозно управляєте коробкою, зробіть псевдонім. Звичайним користувачам не потрібно бачити цю пошту. У них є інші засоби для повідомлення повідомлень. Якщо вони хочуть, то вони можуть створити псевдонім. Це має ідеальний сенс, щоб це було вимкнено за замовчуванням.
coteyr

Після налаштування псевдоніма є спосіб переслати всю пошту, яка вже існує?
Джон

Здається, не існує /etc/aliasesфайлу. Чи потрібно для цього генерувати поштовий сервер?
Туфір

11

Я особисто використовую агент поштового зв’язку під назвою nullmailer. Він виконує функцію поштового проксі-сервера та передає всі повідомлення, надіслані кореневі, на електронну адресу на ваш вибір.

Потрібно встановити його параметри у конф-файлах під / etc / nullmailer. В основному: надайте йому свою адресу електронної пошти та облікові дані, а також адресу, на яку ви хочете отримувати кореневі електронні листи.

Ви можете встановити його за допомогою

sudo apt-get install nullmailer

Ви можете отримати більше інформації про його налаштування тут: http://jviz.research.iat.sfu.ca/wiki/index.php?title=HOWTO_Setup_Nullmailer


+1 спасибі за посилання (і
підліткову

2

Наразі користувачеві не повідомляється про те, що локальна поштова скринька навіть існує, тому що user! = rootЯкщо вам потрібно перевірити поштову скриньку, ви можете ввести наступне: sudo mailзапустити поштову програму під корінь.

Ви також можете увійти як root на цьому сервері. Для розблокування пароля root просто введіть: sudo passwdта введіть новий пароль для root.


1
З тестовим користувачем 10.04, що використовує інтерфейс на основі gnome за замовчуванням, або інтерфейс на основі kde, або інтерфейс на основі lxde, я не бачу сповіщень про те, що в чомусь є щось /var/mail/$USER.
Жиль

1

Альтернативно - я архівую всю кореневу пошту до деяких файлів, а потім видаляю оригінальну пошту.

Я крон сценарій (ось ключова частина) -

#!/bin/bash
if `/usr/bin/mail -e`; then
   /usr/bin/mail --print 2>&1 > /tmp/email_${date +"%Y-%m-%d_%H.%M").log
   echo ‘d *’ | /usr/bin/mail -N > /dev/null
fi
exit 0

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

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.