Πώς να δημιουργήσετε και να δημιουργήσετε ηλεκτρονικά στατιστικά στοιχεία ηλεκτρονικού υπολογιστή
Είναι σημαντικό να ελέγχετε καθημερινά τα διάφορα αρχεία καταγραφής και τα στατιστικά στοιχεία του διακομιστή σας, αλλά αυξάνεται και είναι κουραστικό. Δεν θα ήταν ωραίο να λαμβάνετε ένα μήνυμα ηλεκτρονικού ταχυδρομείου με όλα τα κυριώτερα σημεία κάθε μέρα, οπότε δεν χρειάζεται καν να μπείτε στο διακομιστή για να ελέγξετε τα προβλήματα; Αυτός ο οδηγός θα σας δείξει πώς να διαμορφώσετε τα αυτοματοποιημένα μηνύματα ηλεκτρονικού ταχυδρομείου σε Linux και Windows.
Θα το καλύψουμε ειδικά για το Ubuntu και τα Windows 8.1, με το Gmail να χρησιμοποιείται ως ο διακομιστής ηλεκτρονικού ταχυδρομείου από τον οποίο αποστέλλεται το μήνυμα. Αν έχετε άλλη έκδοση του Linux ή των Windows ή προτιμάτε να χρησιμοποιήσετε κάποια άλλη υπηρεσία ηλεκτρονικού ταχυδρομείου, οι οδηγίες θα πρέπει να είναι εύκολα προσαρμόσιμες.
Αυτοματοποιημένα μηνύματα ηλεκτρονικού ταχυδρομείου στο Linux
Θα χρησιμοποιήσουμε δύο διαφορετικά πακέτα για να το επιτύχουμε, ssmtp και mailutils, γι 'αυτό εγκαταστήστε και τα δύο με την ακόλουθη εντολή:
$ sudo apt-get να εγκαταστήσετε το ssmtp mailutils
Μόλις εγκατασταθούν, πρέπει να κάνουμε κάποιες αλλαγές στο αρχείο ρυθμίσεων SSMTP:
$ sudo vi /etc/ssmtp/ssmtp.conf
Επεξεργαστείτε το αρχείο με αυτές τις αλλαγές (είναι ασφαλές να διαγράψετε απλώς όλο το κείμενο του αρχείου και να αντιγράψετε / επικολλήσετε αυτές τις ρυθμίσεις αν θέλετε):
# Αυτή η διεύθυνση θα λάβει τα μηνύματα ηλεκτρονικού ταχυδρομείου, οπότε εισάγετε το δικό σας email εδώ αν θέλετε να τα λάβετε.
root@[email protected]
# Καθορίστε εδώ τον διακομιστή ηλεκτρονικού ταχυδρομείου (αφήστε όπως είναι αν χρησιμοποιείτε το Gmail).
mailhub = smtp.gmail.com: 587
# Το όνομα τομέα από το οποίο προέρχεται το μήνυμα.
rewriteDomain = gmail.com
# Η διεύθυνση ηλεκτρονικού ταχυδρομείου από την οποία θα πρέπει να προέρχονται αυτά τα μηνύματα ηλεκτρονικού ταχυδρομείου.
hostname = [email protected]
# Ρυθμίσεις SSL / TLS, που απαιτούνται για το Gmail και τους περισσότερους άλλους διακομιστές αλληλογραφίας.
UseTLS = Ναι
ΧρησιμοποιήστεSTARTTLS = Ναι
# Το όνομα χρήστη και ο κωδικός πρόσβασης στο λογαριασμό σας στο Gmail.
AuthUser = όνομα χρήστη
AuthPass = κωδικός πρόσβασης
# Να επιτρέπεται η δυνατότητα προσδιορισμού μιας διεύθυνσης διαφορετικής από την παραπάνω.
ΑπόLineOverride = ναι
Όταν τελειώσετε την επεξεργασία του αρχείου, θα θέλετε να αλλάξετε τα δικαιώματα, αφού ο κωδικός πρόσβασης του Gmail είναι αποθηκευμένος σε απλό κείμενο.
$ sudo chmod 640 /etc/ssmtp/ssmtp.conf
$ sudo chown username.username /etc/ssmtp/ssmtp.conf
Είναι πάντα πιο ασφαλές να καταστήσουμε ριζικά τον ιδιοκτήτη του αρχείου, αλλά τότε θα πρέπει να χρησιμοποιήσουμε την εντολή sudo στη δέσμη ενεργειών μας και θα μας προτρέψει για έναν κωδικό πρόσβασης, αποτρέποντας έτσι τον σκοπό της αυτοματοποίησης αυτής της όλης διαδικασίας.
Εάν χρησιμοποιείτε έναν κοινόχρηστο διακομιστή και ανησυχείτε για τον κωδικό πρόσβασης που έχετε αποθηκεύσει σε απλό και ευανάγνωστο από τον root, δημιουργήστε έναν απομακρυσμένο λογαριασμό Gmail ή χρησιμοποιήστε έναν εξυπηρετητή ηλεκτρονικού ταχυδρομείου που δεν απαιτεί κανενός είδους έλεγχο ταυτότητας στην πρώτη θέση.
Για να βεβαιωθείτε ότι όλα έχουν ρυθμιστεί σωστά, ας δοκιμάσετε ένα δοκιμαστικό μήνυμα ηλεκτρονικού ταχυδρομείου:
$ echo "Δοκιμές" | mail -s "Δοκιμή ρύθμισης αλληλογραφίας" [email protected]
Το "Δοκιμή" θα βρίσκεται στο σώμα του μηνύματος ηλεκτρονικού ταχυδρομείου και το θέμα θα είναι "Δοκιμή εγκατάστασης αλληλογραφίας". Ελέγξτε το email σας για να βεβαιωθείτε ότι το λάβατε.
Γράφοντας ένα σενάριο για τα μηνύματα ηλεκτρονικού ταχυδρομείου
Τώρα που μπορούμε να στείλουμε μηνύματα ηλεκτρονικού ταχυδρομείου από τη γραμμή εντολών, ας γράψουμε ένα σενάριο που θα μας στείλει κάποιες βασικές πληροφορίες για το σύστημά μας.
#! / bin / bash
# Ελέγξτε το χώρο στο σκληρό δίσκο
echo "Χώρος στον σκληρό δίσκο:"> /home/geek/email.txt
df -h >> /home/geek/email.txt
# Καταχωρίστε τους χρήστες που είναι συνδεδεμένοι
echo "Οι χρήστες που έχουν συνδεθεί αυτήν τη στιγμή:" >> /home/geek/email.txt
που >> /home/geek/email.txt
# Λίστα τρέχουσας διαδικασίας
echo "Διαδικασίες εκτέλεσης:" >> /home/geek/email.txt
ps -e >> /home/geek/email.txt
# Στείλτε το μήνυμα ηλεκτρονικού ταχυδρομείου
cat /home/geek/email.txt | mail -s "Καθημερινές πληροφορίες διακομιστή" [email protected]
# Διαγράψτε το αρχείο που δημιουργήσαμε
rm /home/geek/email.txt
Προφανώς, μπορείτε να πάρετε πολύ περισσότερο σε βάθος με το σενάριό σας και ακόμη και να κάνετε τη μορφοποίηση λίγο πιο όμορφη, αλλά αυτό είναι που η έξοδος μοιάζει με το email μας:
Τώρα που το σενάριο είναι γραμμένο και δοκιμασμένο, μπορούμε να χρησιμοποιήσουμε το cron για να το εκτελέσουμε αυτόματα την ίδια ώρα κάθε μέρα. Σε αυτό το παράδειγμα, θα ρυθμίσουμε το μήνυμα ηλεκτρονικού ταχυδρομείου που θα σταλεί στις 2:00 πμ κάθε πρωί, ώστε να μπορέσουμε να περάσουμε τα δεδομένα αργότερα εκείνη την ημέρα.
$ crontab -e
Για τα μηνύματα ηλεκτρονικού ταχυδρομείου 2:00 AM, προσθέστε:
0 2 * * * /home/geek/script.sh
Έχουμε γράψει ένα ολόκληρο άρθρο σχετικά με τα αρχεία crontab αν χρειάζεστε περισσότερη βοήθεια με αυτό το μέρος.
Αυτοματοποιημένα μηνύματα ηλεκτρονικού ταχυδρομείου στα Windows
Η αποστολή μηνυμάτων ηλεκτρονικού ταχυδρομείου στη γραμμή εντολών είναι δυνατή μέσω του PowerShell, αλλά διαπιστώσαμε ότι η εφαρμογή αυτής της λειτουργικότητας είναι πολύ πιο εύκολη με εφαρμογές τρίτων, ιδιαίτερα όταν χρησιμοποιείτε το Gmail. Το SendEmail είναι ένα δωρεάν πρόγραμμα που διατίθεται για Windows, το οποίο καθιστά την ενσωμάτωση με τον Windows Task Scheduler και το Gmail αύριο. Κάντε κλικ στον παραπάνω σύνδεσμο για να πραγματοποιήσετε λήψη του τελευταίου αντιγράφου και βεβαιωθείτε ότι έχετε τραβήξει την έκδοση που υποστηρίζεται από TLS.
Αφού κατεβάσετε το SendEmail, εξαγάγετε το αρχείο zip και τοποθετήστε τα περιεχόμενα κάπου που μπορείτε να τα αποθηκεύσετε για όσο διάστημα σκοπεύετε να στείλετε αυτοματοποιημένα μηνύματα ηλεκτρονικού ταχυδρομείου. Σε αυτό το παράδειγμα, πρόκειται απλά να αποθηκεύσουμε το πρόγραμμα στο C: \ SendEmail
Ας δοκιμάσουμε το SendEmail για να πάρετε μια γρήγορη αίσθηση για το πώς λειτουργεί. Ανοίξτε μια γραμμή εντολών πληκτρολογώντας το cmd στο μενού Έναρξη ή Εκτέλεση (Ctrl + R).
Με την γραμμή εντολών ανοικτή, χρησιμοποιήστε την εντολή αλλαγής καταλόγου για να μεταβείτε στο σημείο αποθήκευσης των αρχείων SendEmail.
cd C: \ ΑποστολήΕmail
Τώρα μπορούμε να προσπαθήσουμε να στείλουμε ένα δοκιμαστικό ηλεκτρονικό ταχυδρομείο με την ακόλουθη εντολή:
sendEmail -f [email protected] -t [email protected] -s smtp.gmail.com:587 -xu username -xp κωδικός -u "Δοκιμή θέμα ηλεκτρονικού ταχυδρομείου" -m "Αυτό είναι ένα δοκιμαστικό ηλεκτρονικό ταχυδρομείο."
Προφανώς, αντικαταστήστε το όνομα χρήστη και τον κωδικό πρόσβασης με τα διαπιστευτήρια του λογαριασμού σας πριν εκτελέσετε την εντολή.
Ακολουθεί η παραπάνω εντολή:
να στείλετε e-mail
εκτελεί το πρόγραμμα.
-φά
- από τη διεύθυνση
-t
- στη διεύθυνση
-μικρό
- Διακομιστή SMTP
-xu
- account username
-xp
- κωδικό πρόσβασης λογαριασμού
-u
- το θέμα του email
-m
- κείμενο κειμένου ηλεκτρονικού ταχυδρομείου
Ελέγξτε τα εισερχόμενά σας για να βεβαιωθείτε ότι λάβατε το μήνυμα δοκιμής και στη συνέχεια μπορούμε να προχωρήσουμε στη σύνταξη ενός σεναρίου που θα μας στείλει πληροφορίες διακομιστή.
Γράφοντας ένα σενάριο για τα μηνύματα ηλεκτρονικού ταχυδρομείου
Για να αξιοποιήσετε στο έπακρο το σενάριό μας, θα το γράψουμε για το PowerShell. Ανοίξτε το Windows PowerShell ISE πληκτρολογώντας powershell_ise.exe σε μια γραμμή εκτέλεσης (Ctrl + R).
Στη δεξιά πλευρά του παραθύρου PowerShell ISE, μπορείτε να απαριθμήσετε κάθε εντολή που μπορεί να εκτελέσει το PowerShell. Αυτό θα σας δώσει μια καλή αρχή για τη δημιουργία των τύπων πληροφοριών που χρειάζεστε. Στη δέσμη ενεργειών σας, μπορείτε επίσης να καλέσετε προγράμματα τρίτων μερών για την εξαγωγή πληροφοριών επίσης (δηλ. Το SendEmail είναι μια εφαρμογή τρίτου μέρους, αλλά το PowerShell και το cmd μπορούν να το χρησιμοποιήσουν για να ολοκληρώσουν εργασίες που κανονικά δεν μπορούν).
Για το παράδειγμα του σεναρίου μας, θα ελέγξουμε την τρέχουσα χρήση δίσκου της μονάδας C, θα δείξουμε τις τρέχουσες διεργασίες και θα δείξουμε όλα τα αρχεία που μοιράζονται επί του παρόντος στο δίκτυο.
# Ελέγξτε το χώρο στο σκληρό δίσκο
echo "C: Χρήση μονάδας δίσκου:"> C: \ SendEmail \ info.txt
Get-WmiObject win32_LogicalDisk -Filter "DeviceID = 'C:' '| Επιλέξτε-Μέγεθος αντικειμένου, FreeSpace >> C: \ SendEmail \ info.txt
# Λίστα τρέχουσας διαδικασίας
echo "Διαδικασίες εκτέλεσης:" >> C: \ SendEmail \ info.txt
get-process >> C: \ ΑποστολήΕmail \ info.txt
# Καταχωρίστε τα αρχεία / φακέλους που μοιράζονται αυτήν τη στιγμή
echo "Κοινότητες SMB:" >> C: \ SendEmail \ info.txt
get-smbshare >> C: \ ΑποστολήΕmail \ info.txt
# Στείλτε το μήνυμα ηλεκτρονικού ταχυδρομείου
πληκτρολογήστε C: \ SendEmail \ info.txt | C: \ ΑποστολήΕmail \ sendEmail -f [email protected] -t [email protected] -s smtp.gmail.com:587 -xu username -xp κωδικός -u "Ημερήσια πληροφορία διακομιστή"
# Διαγράψτε το αρχείο που δημιουργήσαμε
rm C: \ ΑποστολήΕmail \ info.txt
Σε αυτήν τη δέσμη ενεργειών, διάφορες πληροφορίες εξάγονται στο C: \ SendEmail \ info.txt και στη συνέχεια το κείμενο σε αυτό το έγγραφο μας αποστέλλεται με μήνυμα ηλεκτρονικού ταχυδρομείου πριν να διαγραφεί. Αποθηκεύστε τη δέσμη ενεργειών σας με επέκταση αρχείου ps1 (αρχείο PowerShell).
Με το σενάριό σας να τελειώσει, εκτελέστε μια γρήγορη δοκιμή από μια εντολή Εκτέλεση για να βεβαιωθείτε ότι λειτουργεί σωστά.
Απλά χρησιμοποιήστε το powerhell
εντολή με a -αρχείο
και καθορίστε τη διαδρομή προς το σενάριό σας.
powershell-αρχείο "c: \ SendEmail \ daily-email.ps1"
Ελέγξτε τα εισερχόμενά σας για να βεβαιωθείτε ότι έχετε λάβει το μήνυμα ηλεκτρονικού ταχυδρομείου - αν όχι, εξετάστε το σενάριο σας για σφάλματα σύνταξης. Ακολουθεί το παράθυρο που δημιουργείται από το παράδειγμα του σεναρίου μας:
Μπορείτε να παίξετε με τη μορφοποίηση (όπως η ανάδευση κενών γραμμών μεταξύ κειμένου) για να την εμφανίσετε πιο όμορφη στη συσκευή σας ή ακόμα καλύτερα να χρησιμοποιήσετε ένα πρόγραμμα τρίτου μέρους που θα εξάγει τις απαιτούμενες πληροφορίες σε μια πιο ευανάγνωστη μορφή από ότι τα Windows ( η διαδικασία δέσμης ενεργειών θα παραμείνει η ίδια).
Αφού επεξεργαστείτε τα σφάλματα στη δέσμη ενεργειών σας, μπορείτε να χρησιμοποιήσετε τον Χρονοπρογραμματιστή εργασιών των Windows για να την αυτοματοποιήσετε. Ανοίξτε τον Χρονοδιακόπτη εργασιών των Windows από το μενού Έναρξη.
Με τον Χρονοδιακόπτη εργασιών ανοιχτό, επιλέξτε Ενέργεια> Δημιουργία βασικής εργασίας.
Ονομάστε αυτήν την εργασία σαν "Καθημερινή δέσμη ενεργειών ηλεκτρονικού ταχυδρομείου" και κάντε κλικ στη συνέχεια. Στην επόμενη οθόνη, επιλέξτε τη συχνότητα με την οποία θέλετε να εκτελείται το σενάριο ηλεκτρονικού ταχυδρομείου σας, πιθανώς καθημερινά. Στη συνέχεια, επιλέξτε την ώρα που θα θέλατε να εκτελεστεί το σενάριο και πατήστε επόμενο.
Τώρα πρέπει να είστε στο τμήμα "Ενέργεια" του οδηγού, επιλέξτε "Έναρξη προγράμματος" και εισαγάγετε το ίδιο κείμενο που εισήγαμε στην προτροπή εκτέλεσης νωρίτερα για να δοκιμάσετε το σενάριό μας.
Πατήστε το πλήκτρο Next και, στη συνέχεια, πατήστε Ναι σε αυτό το παράθυρο:
Κάντε κλικ στο Τέλος στο τελευταίο μενού και ολοκληρώσατε τον προγραμματισμό των αυτόματων μηνυμάτων ηλεκτρονικού ταχυδρομείου.