Skip to main content

FreeBSD - SSHGuard

http://www.sshguard.net/

SSHGuard adalah salah satu tools yang ada di ports untuk melindungi ssh servis anda dari diserang secara bruteforce. Ia menggunakan sistem log dari syslog untuk mengesan IP yang gagal untuk login ke server.

- Install dari ports

proxy# /usr/ports/security/sshguard-pf
proxy# make install clean

- Konfigurasi PF
shell> nano /etc/pf.conf


#di bahagian table
table "" persist #sila buang "", <> tak boleh :P

#bahagian block rules
block in quick on $ext_if proto tcp from to any port 22 label "ssh bruteforce"

- Aktifkan rules pf yang baru
shell> pfctl -ef /etc/pf.conf

- Edit /etc/syslog.conf
uncomment line yang berkenaan sshguard

proxy# nano /etc/syslog.conf
GNU nano 2.0.9 File: /etc/syslog.conf


# $FreeBSD: src/etc/syslog.conf,v 1.28.20.1 2009/04/15 03:14:26 kensmith Exp $
#
# Spaces ARE valid field separators in this file. However,
# other *nix-like systems still insist on using tabs as field
# separators. If you are sharing this file between systems, you
# may want to use only tabs as field separators here.
# Consult the syslog.conf(5) manpage.
auth.info;authpriv.info |exec /usr/local/sbin/sshguard
*.err;kern.warning;auth.notice;mail.crit /dev/console
*.notice;authpriv.none;kern.debug;lpr.info;mail.crit;news.err /var/log/messages
security.* /var/log/security
auth.info;authpriv.info /var/log/auth.log
mail.info /var/log/maillog
lpr.info /var/log/lpd-errs
ftp.info /var/log/xferlog
cron.* /var/log/cron
*.=debug /var/log/debug.log
*.emerg *
# uncomment this to log all writes to /dev/console to /var/log/console.log
#console.info /var/log/console.log
# uncomment this to enable logging of all log messages to /var/log/all.log
# touch /var/log/all.log and chmod it to mode 600 before it will work
#*.* /var/log/all.log
# uncomment this to enable logging to a remote loghost named loghost
#*.* @loghost
# uncomment these if you're running inn
# news.crit /var/log/news/news.crit
# news.err /var/log/news/news.err
# news.notice /var/log/news/news.notice
!startslip
*.* /var/log/slip.log
!ppp
*.* /var/log/ppp.log

- Aktifkan konfigurasi syslog yang baru

shell> /etc/rc.d/syslogd reload

- Untuk mencuba sila login dengan username yang salah secara berturut menggunakan host yang berlainan dari pc anda yang remote secara terus ke server, ia bagi mengelakkan pc anda di block terus dan tidak dapat diakses sama sekali.

- Untuk melihat table PF bagi IP yang sudah di block, boleh menggunakan pfctl

shell> pfctl -Ts how -t sshguard
No ALTQ support in kernel
ALTQ related functions disabled
200.200.200.199

- Untuk delete IP yang diblock boleh juga menggunakan pfctl

shell> pfctl -t sshguard -T delete 200.200.200.119

Comments

Popular posts from this blog

Complete guide to update/upgrade cakephp

This is what people always forgotten. How to update your cakephp to the latest from CLI         phpmamp composer.phar update How to upgrade to 3.* branch     phpmamp composer.phar require --update-with-dependencies "cakephp/cakephp:3.5.*"         ./composer.json has been updated Loading composer repositories with package information Updating dependencies (including require-dev)       - Removing cakephp/cakephp (3.4.13)       - Installing cakephp/cakephp (3.5.6)         Downloading: 100% Writing lock file Generating autoload files Done !

DirectAdmin - Upgrading MySQL from 5.5 to 5.6

cd /usr/local/directadmin/custombuild mkdir -p mysql cd mysql wget http://files.directadmin.com/services/all/mysql/64-bit/5.5.41/MySQL-client-5.5.41-1.linux2.6.x86_64.rpm wget http://files.directadmin.com/services/all/mysql/64-bit/5.5.41/MySQL-devel-5.5.41-1.linux2.6.x86_64.rpm wget http://files.directadmin.com/services/all/mysql/64-bit/5.5.41/MySQL-server-5.5.41-1.linux2.6.x86_64.rpm wget http://files.directadmin.com/services/all/mysql/64-bit/5.5.41/MySQL-shared-5.5.41-1.linux2.6.x86_64.rpm cd .. ./build mysql_backup mv mysql_backups mysql_backups.`date +%F` #after this point, you can't abort rpm -e --noscripts `rpm -qa | grep MariaDB` cd mysql rpm -ivh MySQL*5.5.41*.rpm #ensure it's running. cd .. ./build set mysql 5.6 ./build set mysql_inst yes ./build mysql # confirm mysqld is running. ./build php n

FAMPP - Installing MySQL Server

simpler command :) #pkg_add -r mysql51-server from this command it will install mysql server and also mysql client for the server once done we can enable it on boot up by editing rc.conf #ee /etc/rc.conf add this following line mysql_enable="YES" After that we can start the service by this command : #sh /usr/local/etc/rc.d/mysql- server.sh start Then we have to configure our root login for mysql which is by default it is blank. By using a password for the root login it will be more safe to outsider :) #mysql -u root #SET PASSWORD FOR 'root'@'localhost' = PASSWORD('urpasswordhere'); once done try to login using root user #mysql -u root -p Enter password: If that appear then you have successfully configuring your mysql server :)