У меня есть Mac Mini Server под управлением OS X Lion Server 10.7.3. Он без проблем работает без проблем. Тем не менее, сервер находится под постоянной «атакой» согласно журналам. Брандмауэр и безопасность держатся, кажется.
Существует ли какое-либо приложение / сценарий, который может отправлять мне электронные письма, когда кто-либо / кто-либо входит в систему на сервере, используя SSH, Admin Tools или ARD?
Поскольку машина работает без присмотра, без головы в центре обработки данных в другом городе, я обеспокоен тем, что кому-то может (благодаря чистой настойчивости) удастся взломать пароль или найти компромисс в системе. Знание, что я получу предупреждение, поможет мне расслабиться.
osx-server
remote-desktop
ssh
script
server.app
bloudraak
источник
источник
Ответы:
Ваша лучшая защита - всегда отключать ненужные сервисы. Если вы не используете удаленный рабочий стол: выключите его. Если вы не используете HTTP или FTP-серверы: отключите их. Меньше запущенных сервисов, меньше точек входа для использования злоумышленниками.
Помимо блокировки, есть несколько бесплатных продуктов с открытым исходным кодом, дружественных к OS X, на которые вы можете обратить внимание при обнаружении вторжений на вашу машину.
фырканье
Хотя я лично не управлял им, у меня есть коллеги, которые знают и доверяют ему для обнаружения вторжений. Он совместим с BSD, поэтому он хорошо подходит для OS X. Еще одним преимуществом Snort является то, что он доступен в виде пакета Homebrew :
Таким образом, вы получаете упрощенный путь к установке и некоторое доверие к тому факту, что он хорошо переносится на OS X и работает там. С установленным Homebrew вам нужно всего лишь:
И вы готовы начать с этим.
Ознакомьтесь с этим руководством по установке Snort для OS X Lion Server, которое предоставляет сообщество Snort, чтобы начать писать правила для своего компьютера с OS X. Это отличный документ, и, помимо пошаговой установки Snort из исходного кода (что вам не нужно делать), в нем рассказывается обо всех вещах, которые вы должны выполнить для своего экземпляра OS X Lion Server, чтобы помочь защитить его. Если вы устанавливаете через Homebrew, начните с Раздела 5 (стр. 13) в PDF, так как вам не нужно беспокоиться об установке из исходного кода.
Tripwire
Я запускал Tripwire на машинах Linux для быстрого обнаружения вторжений и оповещения. Это эффективно, но это немного чудовищно для настройки. Он может выполнять действия, когда правила сопоставляются с файлами журналов. Конечно, опытный хакер узнает, как отключить Tripwire, как только они взломают его, чтобы не закончить сессию.
Намек переговоры MacWorld о настройке Tripwire на OS X . Это не просто, и статья заканчивается упоминанием, что это не было проверено.
источник
Вы можете укрепить ssh и установить denyhosts, sshguard и Snort, Barnyard, Base и Swatch.
Смотрите эти ссылки для деталей:
https://discussions.apple.com/thread/3565475 https://discussions.apple.com/thread/4473229?tstart=0
Отключить root и пароль логины:
vi /etc/sshd_config
PermitRootLogin no
PasswordAuthentication no
ChallengeResponseAuthenticatio no
Затем используйте
ssh-keygen
удаленный клиент для генерации открытых / закрытых ключей, которые можно использовать для удаленного входа на сервер: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
Установите денихостов и sshguard.
sudo port install denyhosts sshguard
sudo port load denyhosts
sudo port load sshguard
Вы можете настроить denyhosts для блокировки всего трафика, а не только ssh.
Snort, с картой мира атак:
https://discussions.apple.com/thread/4473229?tstart=0
источник
Чтобы прямо ответить на поставленный вопрос. У меня есть другой сценарий, который снова отправляет мне электронное письмо около полуночи, если кто-то успешно входит в систему через ssh.
Измените приведенное
grep
выше, чтобы исключить собственный фиксированный IP-адрес, если хотите, и использовать свой адрес электронной почты. Вы можете объединить часть кода в моем другом ответе, чтобы добавить сбои для VNC.источник
Чтобы немного расширить Fail2ban , после его настройки и запуска у меня есть скрипт, который я запускаю незадолго до полуночи, который очищает журналы и отправляет мне по электронной почте информацию о том, что Fail2ban делал за предыдущий день.
Сценарий выглядит следующим образом и может быть запущен из cron или launchd plist.
Вам, очевидно, нужно будет использовать адрес электронной почты по вашему выбору.
Настройка Fail2ban - это совсем другая проблема. Я много писал об этом.
источник
Установить плагин Google Authenticator PAM в Mac OS X довольно просто, если у вас установлен компилятор командной строки X-кода. Код и инструкции здесь:
https://code.google.com/p/google-authenticator/wiki/PamModuleInstructions
Как только вы инициализируете свой токен (сгенерируете код, который вы отправляете в приложение на своем телефоне), у вас будет двухфакторная аутентификация для защиты вашего компьютера. Любая учетная запись без инициализированного токена не сможет войти в систему, поэтому, если вы не хотите разрешать root-вход, не инициализируйте ключ для этой учетной записи.
А если серьезно, что-то вроде DenyHosts просто имеет смысл, если вам нужно держать SSH открытым в Интернете. К сожалению, начиная с Mac OS X V10.8, Apple удалила поддержку tcpwrappers из демона SSH, поэтому она игнорирует /etc/deny.hosts, что было глупым шагом, если вы спросите меня, удалив функцию безопасности.
Чтобы обойти это, я использовал MacPorts для установки современного демона openssh и восстановления полной функциональности tcpwrappers, отредактировал и использовал демон DenyHosts для мониторинга /var/log/system.log и запретил IP-адреса, которые предполагают логины и пароли , И не забывайте обновлять MacPorts и проверять / переустанавливать openssh / DenyHosts при каждом обновлении ОС.
Удачи!
источник
Я понимаю, что это старый пост, но я подумал, что это может помочь тем, кто не может запрограммировать или сэкономить время, прочесывая Интернет. Я только что написал это на моем перерыве на обед, и он будет отправлять по электронной почте сообщения об успешных и неудачных попытках, а также блокировать IP-адреса с помощью неудачных попыток. Программа написана на Ruby. Sendmail устанавливается вместе с гемами mail и tail-file.
Исходный код ниже:
источник