Bezpieczeństwo - narzędzia

Cześć,

Być może szybko “wyprostujecie” mój pogląd, ale generalnie bezpieczeństwo naszej aplikacji zależy od

  1. Bezpiecznego środowiska (ssh, iptables, SSL, etc…)
  2. Bezpiecznie napisanej aplikacji (unikanie SQL-inject, itp)

Jakie stosujecie narzędzia do testowania 1 i do testowania 2?

http://brakemanscanner.org

gemu brakeman już używałem. Faktycznie miłe i przyjemne “narządko” :smiley:

Dzięki też za wcześniejszą podpowiedź.

Coś do testowania części 1) też podpowiecie?

Co do części 1.:
SSL: https://www.ssllabs.com/ssltest/analyze.html
ssh: zainstalować pakiet fail2ban, logować się po kluczu i wyłączyć logowanie po haśle (+ ustawić długie/ skomplikowane hasła)
iptables: sprawdzić nmapem czy nie ma niepotrzebnych otwartych portów (smtp, ntp)

Na sam poczatek - http://plusbryan.com/my-first-5-minutes-on-a-server-or-essential-security-for-linux-servers

Dzięki za wszystkie rady i wskazówki. :sunny:

A tak jeszcze na marginesie tego tematu, to czym się posiłkujecie przy monitorowaniu swojej apki?
Przeglądanie “ręczne” logów jest trochę wkurzające.

Nie wiem, czy dokładnie o to Ci chodzi, ale obecnie mój faworyt to https://www.elastic.co/products/kibana.

To już chyba za duży wypas jak na małą apkę, chociaż wygląda to doskonale.

Chodziło mi bardziej o jakieś rozwiązanie, które w zwartej formie wyświetla dane z logów, zajętość pamięci, itp.

trochę mnie męczy przeszukiwanie w stylu:
sudo tail -f /var/log/nginx/error.log
sudo tail -f /var/log/nginx/access.log

Postawam sobie jakiego malego VPS’a i uruchom ELK’a https://deviantony.wordpress.com/2014/05/19/centralized-logging-with-an-elk-stack-elasticsearch-logback-kibana/ . Za pomoca Ansible jest to stosunkowo proste - https://github.com/bakhti/ansible-elk :smile: Albo zainstaluj jakiegos innego logger’a - np MongoDbLogger

Aby monitorować małą apkę mam stawiać dodatkowy VPS? :smiley:

…Chyba zostanę przy przeglądaniu tych logow :wink:

Mialem na mysli nie monitoring a bardziej sposob na trzymanie logow gdzies gdzie mozna je spokojnie przegladac i analizowac :smile:

Aaaa! )
No jak tak, to będę je trzymać …lokalnie na pendrive :wink:
co niestety nadal nie rozwiążę mi problemu “bardziej prostego” przeglądania ich treści.

Może trzeba będzie nginx’a jakoś przekonfigurować, by po zalogowaniu się serwował te logi w jakiś zjadliwy sposób

Na ostatnim SysOps / DevOps było trochę zarządzaniu logami:

Trochę większa skala, ale może coś ciekawego dla siebie znajdziesz.

Dzięki. Każde info mile widziane.
…Nawet to o wykorzystaniu elasticsearch do zbierania tych logów :wink:

Kiedyś używałem exception_logger do zapisywania informacji o błędach - https://github.com/ryancheung/exception_logger i to dla małego projektu wystarczało.

Możesz też postawić sobie errbit/airbrake - do zapisywania i powiadamiania o błędach https://github.com/errbit/errbit

PS. Jak już czytasz logi w konsoli to używaj grep! np. http://stackoverflow.com/questions/2077211/extracting-error-information-from-rails-log-files

Oooo!
Cenne rady. :smile:

Dzięki!!! :slight_smile: