Saya memiliki server mini mac yang menjalankan OS X Lion Server 10.7.3. Cukup banyak berjalan tanpa pengawasan. Namun, server berada di bawah "serangan" konstan menurut log. Firewall dan keamanan sepertinya menahan.
Apakah ada aplikasi / skrip yang dapat mengirim saya email setiap kali seseorang / siapa pun masuk ke server menggunakan SSH, Alat Admin atau ARD?
Karena mesin berjalan tanpa pengawasan, tanpa kepala di pusat data di kota lain, saya khawatir bahwa seseorang mungkin (melalui ketekunan murni) berhasil memecahkan kata sandi atau menemukan kompromi pada sistem. Mengetahui saya akan diberitahu akan membuat pikiran saya tenang.
osx-server
remote-desktop
ssh
script
server.app
bloudraak
sumber
sumber
Jawaban:
Pertahanan terbaik Anda selalu mematikan layanan yang tidak perlu. Jika Anda tidak menggunakan remote desktop: matikan. Jika Anda tidak menggunakan server HTTP atau FTP: matikan. Semakin sedikit layanan yang berjalan, semakin sedikit titik masuk yang dapat dieksploitasi oleh pengganggu.
Selain menguncinya, ada beberapa produk sumber terbuka dan gratis yang ramah OS X yang dapat Anda lihat untuk melakukan deteksi intrusi pada mesin Anda.
Mendengus
Meskipun saya belum menjalankannya secara pribadi, saya memiliki rekan yang tahu dan memercayainya untuk deteksi intrusi. Ini kompatibel dengan BSD sehingga cocok untuk OS X. Kelebihan lain dari Snort adalah tersedia sebagai paket Homebrew :
Jadi Anda mendapatkan jalur yang disederhanakan untuk instalasi dan beberapa kepercayaan pada fakta bahwa itu port dengan baik ke OS X dan berjalan di sana. Dengan Homebrew terinstal, Anda hanya perlu melakukan:
Dan Anda siap untuk memulainya.
Lihatlah panduan pengaturan Snort untuk OS X Lion Server ini yang disediakan oleh komunitas Snort untuk memulai penulisan aturan untuk mesin OS X Anda. Itu dokumen yang bagus dan, selain berjalan melalui menginstal Snort dari sumber (yang tidak perlu Anda lakukan), ia berbicara tentang semua hal yang harus Anda lakukan misalnya OS Server X Lion Server Anda untuk membantu melindunginya. Jika Anda menginstal melalui Homebrew, mulailah pada Bagian 5 (halaman 13) dalam PDF karena Anda tidak perlu khawatir menginstalnya dari kode sumber.
Tripwire
Saya telah menjalankan Tripwire pada mesin linux untuk melakukan deteksi dan peringatan intrusi yang cepat. Ini efektif tetapi agak sulit untuk diatur. Itu bisa melakukan tindakan ketika aturan dicocokkan dengan file log. Tentu saja, peretas yang cerdas akan tahu untuk menonaktifkan Tripwire segera setelah mereka masuk sehingga mereka tidak berakhir dengan sesi mereka terputus.
The MacWorld pembicaraan petunjuk tentang pengaturan Tripwire pada OS X . Itu tidak sederhana dan artikel itu berakhir dengan menyebutkan bahwa itu belum diuji.
sumber
Anda dapat mengeraskan ssh dan menginstal denyhosts, sshguard, dan Snort, Barnyard, Base, dan Swatch.
Lihat tautan ini untuk perincian:
https://discussions.apple.com/thread/3565475 https://discussions.apple.com/thread/4473229?tstart=0
Matikan login root dan kata sandi:
vi /etc/sshd_config
PermitRootLogin no
PasswordAuthentication no
ChallengeResponseAuthenticatio no
Kemudian gunakan
ssh-keygen
pada klien jarak jauh untuk menghasilkan kunci publik / pribadi yang dapat digunakan untuk login jarak jauh ke server:client$ ssh-keygen -t rsa -b 2048 -C client_name [Securely copy ~/.ssh/id_rsa.pub from client to server.] server$ cat id_rsa.pub > ~/.ssh/known_hosts
Instal denyhosts dan sshguard.
sudo port install denyhosts sshguard
sudo port load denyhosts
sudo port load sshguard
Anda dapat mengonfigurasi denyhosts untuk memblokir semua lalu lintas, bukan hanya lalu lintas ssh.
Snort, dengan peta serangan dunia:
https://discussions.apple.com/thread/4473229?tstart=0
sumber
Untuk langsung menjawab pertanyaan yang diajukan. Saya punya skrip lain yang mengirimi saya email, lagi, sekitar tengah malam, jika ada yang berhasil masuk melalui ssh.
Edit di
grep
atas untuk mengecualikan IP tetap Anda sendiri, jika Anda mau, dan untuk menggunakan alamat email Anda. Anda dapat menggabungkan beberapa kode di jawaban saya yang lain untuk menambahkan kegagalan untuk VNC.sumber
Untuk sedikit memperluas Fail2ban , setelah diatur dan dijalankan saya memiliki skrip yang saya jalankan sebelum tengah malam yang mengikis log dan mengirimi saya email tentang apa yang telah dilakukan Fail2ban untuk hari sebelumnya.
Scriptnya adalah sebagai berikut dan dapat dijalankan dari cron atau launchd plist.
Anda jelas perlu menggunakan alamat email pilihan Anda.
Menyiapkan Fail2ban adalah masalah lain. Saya sudah banyak menulis tentang itu.
sumber
Cukup mudah untuk menginstal plugin PAM Google Authenticator pada Mac OS X jika Anda memiliki kompiler baris perintah kode X yang diinstal. Kode dan instruksi ada di sini:
https://code.google.com/p/google-authenticator/wiki/PamModuleInstructions
Setelah Anda menginisialisasi token Anda (menghasilkan kode yang Anda makan ke aplikasi di ponsel Anda), Anda akan memiliki dua otentikasi faktor untuk melindungi mesin Anda. Akun apa pun tanpa token yang diinisialisasi tidak akan dapat masuk, jadi jika Anda tidak ingin mengizinkan login root, jangan menginisialisasi kunci untuk akun itu.
Tapi serius, sesuatu seperti DenyHosts masuk akal jika Anda harus membuka SSH di internet. Sayangnya, sejak Mac OS X V10.8, Apple menghapus dukungan tcpwrappers dari daemon SSH, sehingga mengabaikan /etc/deny.hosts, yang merupakan langkah bodoh, jika Anda bertanya kepada saya, menghapus fitur keamanan.
Untuk mengatasinya, saya menggunakan MacPorts untuk menginstal daemon openssh terbaru, dan mengembalikan fungsionalitas tcpwrappers penuh, diedit dan menggunakan daemon DenyHosts untuk memonitor /var/log/system.log dan melarang IP yang menebak login dan kata sandi. . Dan jangan lupa untuk memperbarui MacPorts dan periksa / instal ulang openssh / DenyHosts setiap kali Anda meningkatkan OS.
Semoga berhasil!
sumber
Saya menyadari bahwa ini adalah posting lama tapi saya pikir ini mungkin membantu seseorang yang tidak dapat memprogram atau menghemat waktu menjelajahi web. Saya baru saja menulis ini pada istirahat makan siang saya dan itu akan mengirimkan upaya yang berhasil dan gagal serta IP yang diblokir melalui upaya yang gagal. Program ini ditulis dalam Ruby. Sendmail diinstal bersama dengan permata email dan file-tail.
Kode sumber di bawah ini:
sumber