Dieses Tutorial ist NICHT mehr valid und dient nur noch als historisches Anschauungsmaterial!

Bitte lies Dir den Disclaimer durch, bevor Du eine Anleitung umsetzt...

Haftungsausschluss / Disclaimer

Basissystem: Debian 9 „Stretch“ Installation OHNE Verschlüsselung

Firewall: Shorewall installieren

Shorewall für IPv4 installieren und einrichten

apt install -y shorewall
cd /usr/share/doc/shorewall/examples/one-interface/ && cp interfaces policy rules zones /etc/shorewall/ && cd
nano /etc/default/shorewall

startup=1

nano /etc/shorewall/policy

net / all / drop: Log level entfernen. (Sprich: „info“ löschen…) Sonst knallt uns das LOG voll.

nano /etc/shorewall/rules

Zeilen anfügen (für SSH, WEB und MAIL):

# SSH Port aufmachen
ACCEPT  net         $FW     tcp     55544   -       -    5/min:8
#
# WEB Ports aufmachen - http / https
ACCEPT:info net     $FW     tcp     80      -       -
ACCEPT:info net     $FW     tcp     443     -       -
#
# MAIL Ports aufmachen - smtp / transmission
ACCEPT:info net     $FW     tcp     25      -       -
ACCEPT:info net     $FW     tcp     587     -       -
nano /etc/shorewall/interfaces

### Ethernet Interface anpassen! [ens3 statt eth0]
net ens3 dhcp,tcpflags,logmartians,nosmurfs,sourceroute=0

Shorewall6 für IPv6 installieren und einrichten

apt install -y shorewall6
cd /usr/share/doc/shorewall6/examples/one-interface/ && cp interfaces policy rules zones /etc/shorewall6/ && cd
nano /etc/default/shorewall6

startup=1

nano /etc/shorewall6/policy

net / all / drop: und net / $FW / drop: Log level entfernen. (Sprich: „info“ löschen…) Sonst knallt uns das LOG voll.

nano /etc/shorewall6/rules

Zeilen anfügen (für SSH, WEB und MAIL):

# SSH Port aufmachen
ACCEPT  net         $FW     tcp     55544   -       -    5/min:8
#
# WEB Ports aufmachen - http / https
ACCEPT:info net     $FW     tcp     80      -       -
ACCEPT:info net     $FW     tcp     443     -       -
#
# MAIL Ports aufmachen - smtp / transmission
ACCEPT:info net     $FW     tcp     25      -       -
ACCEPT:info net     $FW     tcp     587     -       -
nano /etc/shorewall6/interfaces

### Ethernet Interface anpassen! [ens3]
net ens3 tcpflags

Shorewall auf das Zusammenspiel mit Docker vorbereiten

### Docker Support ab Shorewall v5.0.6
### Installiert wird Shorewall v5.0.15.6 :)

nano /etc/shorewall/shorewall.conf
###########################################################
#           F I R E W A L L   O P T I O N S
###########################################################
...
DOCKER=Yes
...
IP_FORWARDING=On
...

### Bei „stretch“ muss die shorewall zusätzlich zum startup=1 noch manuell in den Autostart hinzugefügt werden:

systemctl enable shorewall && systemctl enable shorewall6

Unattended Upgrades

Mehr Informationen: https://wiki.debian.org/UnattendedUpgrades

apt install -y unattended-upgrades apt-listchanges
nano /etc/apt/apt.conf.d/50unattended-upgrades

### Uncomment Unattended-Upgrade::Mail „root“;

dpkg-reconfigure -plow unattended-upgrades

### [Ja] / [Enter] / [Enter]

cat /etc/apt/apt.conf.d/20auto-upgrades

### Check:

APT::Periodic::Update-Package-Lists "1";
APT::Periodic::Unattended-Upgrade "1";

Rotierte LOGs komprimieren

nano /etc/logrotate.conf

# uncomment this if you want your log files compressed
compress

Terminal in Farbe und weitere nette Einstellungen

nano ~/.bashrc

## Start
# If not running interactively, don't do anything
case $- in
    *i*) ;;
      *) return;;
esac

# don't put duplicate lines or lines starting with space in the history.
HISTCONTROL=ignoreboth

# append to the history file, don't overwrite it
shopt -s histappend

# for setting history length see HISTSIZE and HISTFILESIZE in bash(1)
HISTSIZE=1000
HISTFILESIZE=2000

# check the window size after each command and, if necessary,
# update the values of LINES and COLUMNS.
shopt -s checkwinsize

# set variable identifying the chroot you work in (used in the prompt below)
if [ -z "${debian_chroot:-}" ] && [ -r /etc/debian_chroot ]; then
    debian_chroot=$(cat /etc/debian_chroot)
fi

# set a fancy prompt (non-color, unless we know we "want" color)
case "$TERM" in
    xterm-color) color_prompt=yes;;
esac

force_color_prompt=yes

if [ -n "$force_color_prompt" ]; then
    if [ -x /usr/bin/tput ] && tput setaf 1 >&/dev/null; then
        # We have color support; assume it's compliant with Ecma-48
        # (ISO/IEC-6429). (Lack of such support is extremely rare, and such
        # a case would tend to support setf rather than setaf.)
        color_prompt=yes
    else
        color_prompt=
    fi
fi

if [ "$color_prompt" = yes ]; then
    PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '
else
    PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ '
fi
unset color_prompt force_color_prompt

# If this is an xterm set the title to user@host:dir
case "$TERM" in
xterm*|rxvt*)
    PS1="\[\e]0;${debian_chroot:+($debian_chroot)}\u@\h: \w\a\]$PS1"
    ;;
*)
    ;;
esac

# enable color support of ls and also add handy aliases
if [ -x /usr/bin/dircolors ]; then
    test -r ~/.dircolors && eval "$(dircolors -b ~/.dircolors)" || eval "$(dircolors -b)"
    alias ls='ls --color=auto'
    alias grep='grep --color=auto'
fi

alias dco=docker-compose
##EOF

System neu starten

reboot

Finale Checks

### Einloggen als „ibims“ mit SSH-Key und Key-PW auf Port 55544
### „sudo -i“ mit ibims-PW für root-Rechte

Läuft Shorewall?

shorewall status -i && shorewall6 status -i
Shorewall-5.0.15.6 Status at tutorial - Di 21. Nov 19:39:12 CET 2017

Shorewall is running
State:Started Di 21. Nov 19:37:40 CET 2017 from /etc/shorewall/ (/var/lib/shorewall/firewall compiled Di 21. Nov 19:37:30 CET 2017 by Shorewall version 5.0.15.6)

Timeserver und Lokalzeit prüfen:

timedatectl status
Local time: Sa 2018-07-14 21:27:07 CEST
Universal time: Sa 2018-07-14 19:27:07 UTC
RTC time: Sa 2018-07-14 19:27:07
Time zone: Europe/Berlin (CEST, +0200)
Network time on: yes
NTP synchronized: yes
RTC in local TZ: no
=======================================================

Falls KEINE ntp Synchronisation… So können wir sie einrichten:

nano /etc/systemd/timesyncd.conf

[Time]
Servers=0.pool.ntp.org 1.pool.ntp.org 2.pool.ntp.org 3.pool.ntp.org
timedatectl set-ntp true
timedatectl status

### Jetzt synct er die Zeit…

Plattenaufteilung:

df -h
root@stats:~# df -h
Dateisystem    Größe Benutzt Verf. Verw% Eingehängt auf
udev            3,9G       0  3,9G    0% /dev
tmpfs           799M    8,5M  791M    2% /run
/dev/sda3       235G    764M  234G    1% /
tmpfs           4,0G       0  4,0G    0% /dev/shm
tmpfs           5,0M       0  5,0M    0% /run/lock
tmpfs           4,0G       0  4,0G    0% /sys/fs/cgroup
tmpfs           799M       0  799M    0% /run/user/0

Wichtig ist der „/dev/sda3“ Part. Hier haben wir 1% belegt (764 MByte) und 234 GByte frei.

Gratulation – die Basisinstalltion ist jetzt abgeschlossen

Anzeige *

Kommentar verfassen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

Verwendung
von Cookies

Um unsere Webseite für Sie optimal zu gestalten und fortlaufend verbessern zu können, verwenden wir Cookies. Durch die weitere Nutzung der Webseite stimmen Sie der Verwendung von Cookies zu. Weitere Informationen zu Cookies erhalten Sie in unserer Datenschutzerklärung.

Scroll to Top