Terima pemberitahuan melalui e-mel apabila seseorang mengakses root oleh SSH

Bagi kita yang menguruskan pelayan mesti mengawal sekuat mungkin terhadap semua yang berlaku di pelayan, salah satu perkara yang sering kita tahu adalah ketika pengguna menyambung melalui SSH (termasuk root), untuk ini dengan pakej dan talian akan menghubungi pemberitahuan e-mel kami.

Bolehkah anda bayangkan bahawa setiap kali seseorang berhubung melalui SSH dengan root mereka mendapat e-mel yang mengatakan?

Dengan kata lain, mereka akan menerima e-mel yang mengatakan seperti ini:

[miserver] Makluman: Akses Terminal Root pada: 2014/01/21 (200.55.51.151)

Itu dia:

[$ NOMBRE_VPS] Makluman: Akses ke Root Terminal pada: $ DATE ($ IP_DE_WHO_S_CONNECT)

Untuk mencapai ini, mereka mesti terlebih dahulu memasang pakej yang dipanggil mailx.

Dengan andaian pelayan anda menggunakan Debian atau beberapa distro berdasarkannya (saya cadangkan hanya Debian, bukan Ubuntu atau serupa untuk pelayan) itu adalah:

apt-get install mailx

Nota: Perintah sebelumnya dijalankan sebagai root langsung di pelayan, kerana ini adalah VPS, sudo tidak boleh digunakan kecuali jika sangat diperlukan.

Maka kita mesti meletakkan baris berikut dalam root .bashrc:

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

Untuk mengedit /root/.bashrc gunakan beberapa penyunting terminal seperti nano:

nano /root/.bashrc

Ingatlah bahawa anda mesti menentukan e-mel anda di hujung baris, cukup ubah my@email.com ke e-mel yang anda mahu sampaikan pemberitahuan

Setelah meletakkan (di mana sahaja dalam fail) baris yang saya masukkan sebelumnya, kami menyimpan fail tersebut Ctrl + O (Atau beruang) dan kami meninggalkannya Ctrl + X

Bersedia, setiap kali seseorang memasuki terminal root, file .bashrc akan dimuat, yang merupakan sesuatu yang selalu dilakukan secara lalai, dan ketika fail dimuat, baris yang mengirim e-mel akan dijalankan, meninggalkan sesuatu di dalam kotak masuk kami. seperti:

e-mel-pemberitahuan-ssh

Penjelasan garis adalah sesuatu yang sangat mudah:

  1. Melalui mailx saya menghantar surat itu, dengan parameter -s «_____» saya menentukan subjeknya, dan saya meneruskannya dengan gema «____» dan memasukkan isi kandungan.
  2. `hostname` dengan ini saya mendapat nama host atau hostname, iaitu nama VPS.
  3. perintah `date + '% Y /% m /% d'` the date menunjukkan tarikh sistem, selebihnya huruf hanya menunjukkan bagaimana saya mahu tarikh tersebut dipaparkan.
  4. siapa | grep -v localhost` Sekiranya anda menjalankan siapa di komputer anda, ia akan menunjukkan kepada anda pengguna aktif, dengan grep -v localhost saya memastikan bahawa ia hanya menunjukkan mereka yang telah berhubung dari lokasi yang berbeza ke pelayan itu sendiri, iaitu, pada dasarnya SSH
  5. `siapa | grep -v localhost | awk {'print $ 5'} `Apa yang membezakan baris ini dengan yang sebelumnya adalah awk, melalui awk dan percetakan lajur ke-5 ialah saya mendapat IP dari tempat mereka menyambung ke SSH

Bagaimanapun, barisnya agak panjang dan mungkin kelihatan rumit untuk difahami, namun terdapat banyak watak pelik tetapi semuanya cukup mudah 🙂

Seperti biasa, saya harap anda menganggapnya menarik.

salam


Tinggalkan komen anda

Alamat email anda tidak akan disiarkan. Ruangan yang diperlukan ditanda dengan *

*

*

  1. Bertanggungjawab atas data: Miguel Ángel Gatón
  2. Tujuan data: Mengendalikan SPAM, pengurusan komen.
  3. Perundangan: Persetujuan anda
  4. Komunikasi data: Data tidak akan disampaikan kepada pihak ketiga kecuali dengan kewajiban hukum.
  5. Penyimpanan data: Pangkalan data yang dihoskan oleh Occentus Networks (EU)
  6. Hak: Pada bila-bila masa anda boleh menghadkan, memulihkan dan menghapus maklumat anda.

  1.   manuelperez kata

    Soalan, dengan pelayan mel mana ia dihantar? Adakah anda perlu mengkonfigurasi akaun penghantaran?

    1.    KZKG ^ Gaara kata

      Anda mesti memasang pakej mailx 😉
      Setelah ini selesai, ia dihantar tanpa perlu mengkonfigurasi perkara lain di pelayan.

      1.    manuelperez kata

        Saya akan mencubanya, tetapi saya rasa e-mel saya tidak akan menerima penerimaan e-mel dari sumber yang tidak disahkan ...

        1.    saya sendiri kata

          Saya menggunakan exim4 dengan akaun 'gmail' untuk menghantar e-mel dan ia berfungsi dengan baik
          - Kecuali untuk tajuk FROM TO dan REPLY TO, gmail meletakkan apa yang diinginkan tetapi mereka sampai dengan baik -.
          Untuk mengkonfigurasi gmail dengan exim4 gunakan maklumat ini:
          http://dajul.com/2009/06/08/configurar-exim4-con-gmail-o-google-apps/

          1.    KZKG ^ Gaara kata

            Menarik, terima kasih banyak 🙂

      2.    Israel kata

        Kawan @ KZKG ^ Gaara Saya telah memasang bungkusan dan saya telah membuat manual langkah demi langkah, satu-satunya perkara yang apabila saya menghantarnya saya mempunyai surat tempatan, saya tidak pernah keluar, bolehkah anda menolong saya dengan itu ?? …… baik Saya sangat memerlukan tema ini dikonfigurasi di pelayan saya, salu2s.

        1.    KZKG ^ Gaara kata

          Melalui IP anda, saya menganggap bahawa anda berasal dari negara yang sama 😉
          "Masalah" dengan rangkaian kita jarang mempunyai IP yang sebenarnya, iaitu, kita di-subnet di bawah rangkaian proksi kementerian atau semacamnya. Dengan kata lain, mungkin masalahnya adalah bahawa pelayan web sahaja tidak dapat menerima e-mel dari rangkaian atau sesuatu seperti itu, mungkin anda memerlukan ini: https://blog.desdelinux.net/enviar-emails-por-consola-con-sendmail/

  2.   Truko22 kata

    menarik dan jika diletakkan di «/ etc / profile» adakah ia akan memberi amaran apabila ada pengguna yang berhubung?

    1.    KZKG ^ Gaara kata

      Perlu dicuba, itu tidak terjadi pada saya 😀

  3.   Nebukadnezar kata

    Panggil saya paranoid, tetapi letakkan skrip yang orang asing mencadangkan saya di bahagian penting dalam sistem saya di mana saya menyimpan kata laluan akaun, data seperti sijil kelahiran, dokumen peribadi dan dokumen kerja (sehingga mendedahkan pelanggan saya juga) dan lain-lain, dan itu ini juga bermaksud mendedahkan akaun e-mel saya (!!!) ... ini sesuatu yang berbahaya, saya rasa.

    1.    saya sendiri kata

      Bahaya skrip yang dibentangkan berbanding terbalik dengan memahaminya.

      Dan untuk paranoia, berhenti memasang repositori TANPA PERCUMA, kerana ada kemungkinan seseorang memasukkan kod jahat yang mencuri keranjang belanja anda.

    2.    KZKG ^ Gaara kata

      Saya menerangkan apa yang dilakukan oleh setiap bahagian baris perintah, namun jika anda fikir saya menipu seseorang, skrip atau perintah ada di dalam pos, ia tidak mempunyai kod tersembunyi atau rahsia, anda boleh menyemak arahannya secara menyeluruh seperti yang anda mahukan, jika anda menjumpai sesuatu yang mencurigakan, sila komen di sini 😉

  4.   Penyemak Imbas kata

    Ia dihargai.

  5.   nama ini tidak betul kata

    Sungguh menarik.

    Mungkin fail ~ / .bashrc atau / etc / profile tidak paling sesuai sekiranya kita mengakses oleh SSH dengan pengguna biasa dan melaksanakan perintah tertentu sebagai root. Atau jika kita mengeksport X11 dari VPS jauh kita, setiap kali kita membuka xterm kita akan mendapat e-mel baru.

    Untuk peretasan mailx, saya fikir kita harus menggunakan fail ~ / .ssh / rc (individu untuk setiap pengguna) atau / etc / ssh / sshrc

    PostData: _NEVER_ akses oleh SSH sebagai pengguna root. _NEVER_ akses oleh SSH menggunakan kata laluan. _ALWAYS_ gunakan kunci peribadi.

    1.    Truko22 kata

      menarik → ~ / .ssh / rc Saya akan mendapat lebih banyak maklumat mengenainya terima kasih 😀

  6.   chinoloco kata

    Helo, tutor yang sangat baik!
    Bolehkah anda membuatnya masuk melalui ssh dari mana-mana ip, di luar rangkaian tempatan?
    terima kasih !!

  7.   vidagnu kata

    Skrip ini berfungsi jika pelayan e-mel yang kami kirimkan tidak mengesahkan bahawa mel sumber berasal dari pelayan yang sahih, dalam hal ini ia berasal dari root @ localhost, kebanyakan pelayan akan menganggapnya sebagai spam.

    Apa yang saya lakukan adalah mengkonfigurasi sendmail sebagai MTA, dan kemudian menggunakan surat yang terdapat di semua distro untuk menghantar e-mel.

    http://vidagnu.blogspot.com/2009/02/configurar-sendmail-como-cliente-de.html

  8.   Algave kata

    Terima kasih atas petua yang akan saya gunakan untuk mengujinya:]

  9.   kuk kata

    terima kasih sangat berguna

  10.   Israel kata

    Terima kasih sejuta untuk rakan nasihat @ KZKG ^ Gaara, saya akan melihat sendmail, saya harap dapat menyelesaikannya, salu2s.

  11.   joskar kata

    Hebat! Terima kasih atas input!

  12.   Juan C kata

    Dan apa yang berlaku, jika misalnya skrip mengirim terlalu banyak e-mel, misalnya seseorang memasuki terminal root pada pukul 8:00 pagi dan menghantar sekitar 40 e-mel, kemudian seseorang memasukkan pada waktu yang lain dan lebih dari 23 e-mel telah dihantar dan kemudian seseorang datang pada masa yang lain dan lebih daripada 150 e-mel telah dihantar, bagaimana mungkin?