Tisti, ki skrbimo nad strežniki, moramo obdržati čim strožji nadzor nad vsem, kar se dogaja na strežniku, ena od stvari, ki jo moramo pogosto vedeti, je, ko se uporabnik poveže prek SSH (vključen root), za to s paketom in vrstica prispela do naših e-poštnih obvestil.
Si predstavljate, da vsakič, ko se nekdo poveže prek SSH s root, dobi e-poštno sporočilo z napisom?
Z drugimi besedami, prejeli bi e-poštno sporočilo, ki bi pisalo nekaj takega:
[miserver] Opozorilo: Dostop do koreninskega terminala dne: 2014 (01)
To je:
[$ VPS_NAME] Opozorilo: Dostop do korenskega terminala dne: $ DATE ($ IP_DE_WHO_S_CONNECT)
Da bi to dosegli, morajo najprej namestiti paket z imenom mailx.
Ob predpostavki, da vaš strežnik uporablja Debian ali kakšen distro, ki temelji na njem (za strežnike priporočam samo Debian, ne pa tudi Ubuntu ali podobno), bi bilo:
apt-get install mailx
Nato moramo v koren .bashrc vstaviti naslednjo vrstico:
echo 'ALERTA - Acceso a Terminal de Root en:' `hostname` 'el:' `date +'%Y/%m/%d'` `who | grep -v localhost` | mail -s "[ `hostname` ] Alerta: Acceso a Terminal de Root el: `date +'%Y/%m/%d'` `who | grep -v localhost | awk {'print $5'}`" mi@email.com
Za urejanje /root/.bashrc uporabite urejevalnik terminalov, kot je nano:
nano /root/.bashrc
Ko vstavimo (kamor koli v datoteko) vrstico, ki sem jo postavil prej, datoteko shranimo z Ctrl + O (Ali medved) in smo mu pustili Ctrl + X
Pripravljen, vsakič, ko nekdo vstopi v korenski terminal, bo datoteka .bashrc naložena, kar je vedno privzeto, in ko se datoteka naloži, se izvede vrstica, ki pošlje e-pošto, nekaj pa ostane v našem nabiralniku. kot:
Razlaga vrstice je nekaj zelo preprostega:
- Skozi mailx pošiljam pošto, s parametrom -s «_____» določim zadevo in jo pošljem z odmevom «____» in cevjo vsebino telesa.
- `ime gostitelja` s tem dobim ime gostitelja ali ime gostitelja, to je ime VPS.
- `date + '% Y /% m /% d'` ukaz date mi prikaže sistemski datum, ostale črke preprosto označujejo, kako želim, da se prikaže datum.
- kdo | grep -v localhost` Če v računalniku zaženete, kdo vam bo pokazal aktivne uporabnike, z grep -v localhost poskrbim, da prikaže samo tiste, ki so se s strežnika povezali z druge lokacije, to je v bistvu SSH
- `kdo | grep -v localhost | awk {'print $ 5'} `To, kar razlikuje to vrstico od prejšnje, je awk, skozi awk in tiskanje 5. stolpca je, da dobim IP od tam, kjer so se povezali s SSH
Kakorkoli že, vrstica je nekoliko dolga in se morda zdi zapletena za razumevanje, vendar je veliko čudnih likov, vendar je vse povsem preprosto 🙂
Kot vedno upam, da se vam je zdelo zanimivo.
pozdrav
Vprašanje, s katerim poštnim strežnikom je poslan? Ali morate konfigurirati poštni račun?
Paket mailx mora biti nameščen 😉
Ko je to storjeno, se pošlje, ne da bi bilo treba kaj drugega konfigurirati na strežniku.
Poskusil bom, vendar mislim, da moj e-poštni naslov ne bo sprejemal prejemanja e-pošte iz neavtorificiranega vira ...
Za pošiljanje e-pošte uporabljam exim4 z računom gmail in deluje v redu
- Razen naslovov FROM TO in REPLY TO, ki gmail postavi, kar hoče, vendar dobro prispejo -.
Če želite gmail konfigurirati z exim4, uporabite te informacije:
http://dajul.com/2009/06/08/configurar-exim4-con-gmail-o-google-apps/
Zanimivo, najlepša hvala 🙂
Prijatelj @ KZKG ^ Gaara Paket sem namestil in pripravil priročnik korak za korakom, edino, ko ga pošljem, imam lokalno pošto, nisem nikoli prišel ven, mi lahko pomagaš pri tem ?? ... dobro Resnično moram to temo konfigurirati na svojih strežnikih, salu2s.
Glede na vaš IP predvidevam, da ste iz iste države 😉
"Težava" z našimi omrežji ima le redke prave IP-je kot take, to pomeni, da smo podomrežni v omrežju proxy ministrstva ali kaj podobnega. Z drugimi besedami, morda je težava v tem, da sam spletni strežnik ne more dobiti e-pošte iz omrežja ali česa podobnega, morda potrebujete to: https://blog.desdelinux.net/enviar-emails-por-consola-con-sendmail/
zanimivo in če bo postavljeno v «/ etc / profile», bo opozorilo, ko se kateri koli uporabnik poveže?
Treba bi bilo poskusiti, še na misel mi ni prišlo 😀
Pokličite me paranoičnega, toda skript, ki mi ga predlaga neznanec, vstavite v pomemben del mojega sistema, kjer hranim gesla za račun, podatke, kot so rojstni listi, osebni dokumenti in delovni dokumenti (s čimer razkrijem tudi svoje stranke) itd itd, in da pomeni tudi razkritje mojega e-poštnega računa (!!!)… no, mislim, da je to nekaj nevarnega.
Nevarnost predstavljenega scenarija je obratno sorazmerna njegovemu razumevanju.
Za paranojo nehajte nameščati BREZPLAČNE repozitorije, ker je možno, da nekdo vnese zlonamerno kodo, ki vam ukrade nakupovalni voziček.
Pojasnil sem, kaj počne vsak del ukazne vrstice, če pa mislite, da nekoga zavajam, je skript ali ukazi tam na delovnem mestu, nima nobene skrite ali skrivne kode, dobrodošli ste, da temeljito pregledate ukaze če želite, da teče, če najdete nekaj sumljivega, ga komentirajte tukaj 😉
Cenjeno je.
Zelo zanimivo.
Datoteke ~ / .bashrc ali / etc / profile morda niso najprimernejše v primeru, da prek SSH dostopamo z običajnim uporabnikom in izvedemo določen ukaz kot root. Ali če izvozimo X11 iz oddaljenega VPS-ja, imamo vsakič, ko odpremo xterm, novo e-poštno sporočilo.
Za kramp mailx mislim, da bi morali uporabiti datoteke ~ / .ssh / rc (posamezne za vsakega uporabnika) ali / etc / ssh / sshrc
PostData: _NIKOLI_ dostop SSH kot korenski uporabnik. _NIKOLI_ dostop prek SSH z geslom. _ALWAYS_ uporablja zasebne ključe.
zanimivo → ~ / .ssh / rc Najdem več informacij o tem, hvala 😀
Pozdravljeni, zelo dober učitelj!
Bi lahko naredili eno za vstop prek ssh s katerega koli ip zunaj lokalnega omrežja?
hvala !!
Ta skript deluje, če poštni strežnik, na katerega pošiljamo, ne preveri, ali izvorna pošta izvira iz verodostojnega strežnika; v tem primeru bi bil iz korenskega vira @ localhost, večina strežnikov bo to sprejela kot neželeno pošto.
Naredim, da sendmail konfiguriram kot MTA in nato pošiljam e-pošto s pošto, ki je na voljo v vseh distribucijskih enotah.
http://vidagnu.blogspot.com/2009/02/configurar-sendmail-como-cliente-de.html
Hvala za nasvet, da ga bom našel, da ga preizkusim:]
zelo koristna hvala
Hvala milijon za nasvet prijatelj @ KZKG ^ Gaara, pogledal bom sendmail, upam, da ga bom rešil, salu2s.
Super! Hvala za prispevek!
In kaj se zgodi, če na primer skript pošilja preveč e-poštnih sporočil, na primer nekdo vstopi v korenski terminal ob 8:00 zjutraj in pošlje približno 40 e-poštnih sporočil, potem je nekdo vstopil ob drugem času in je bilo poslanih več kot 23 e-poštnih sporočil, nato pa nekdo pride v drugem času in več kot 150 e-poštnih sporočil, kaj bi to lahko bilo?