Kann KI mit zunehmender Anzahl von Ransomware-Angriffen kämpfen?
Ransomware-Angriffe nehmen zu, aber kann KI helfen, den neuesten Computervirus zu bekämpfen? Ist KI die Antwort? Lesen Sie hier, ob KI boone oder bane ist
Dieses Tutorial zeigt Ihnen, wie Sie Ihren FreeBSD-Server mithilfe der OpenBSD PF-Firewall schützen. Wir gehen davon aus, dass Sie eine saubere FreeBSD-Installation von Vultr ohne hinzugefügte Benutzer haben. Neben der Firewall-Konfiguration werden wir noch einige andere Dinge tun, die auch die Sicherheit unseres FreeBSD-Servers erhöhen. Vor der Firewall-Konfiguration werden einige Pakete installiert, da die Standard-FreeBSD-Installation nur einen minimalen Satz von Tools und Paketen enthält (was korrekt ist), um uns die Arbeit zu erleichtern.
Die Standard-Shell in FreeBSD ist /bin/sh
. Dies ist eine grundlegende Shell ohne automatische Vervollständigungsfunktionen. Wir werden etwas besseres verwenden. Wir werden installieren zsh
.
Installieren Sie zunächst diese Pakete:
# pkg install zsh gnuls
The package management tool is not yet installed on your system.
Do you want to fetch and install it now? [y/N]: y
Bootstrapping pkg from pkg+http://pkg.FreeBSD.org/freebsd:10:x86:64/latest, please wait...
...
GNULS ist das ls
Programm von Linux. Wir wollen nur den gleichen ls
Befehl in Linux und FreeBSD haben.
Fügen Sie dem System einen normalen Benutzer hinzu: (Ersetzen Sie John durch Ihren Benutzernamen und vergessen Sie nicht, einen Benutzer zur Radgruppe hinzuzufügen.)
# adduser
Username: john
Full name: John Doe
Uid (Leave empty for default):
Login group [john]:
Login group is john. Invite john into other groups? []: wheel
Login class [default]:
Shell (sh csh tcsh zsh rzsh nologin) [sh]: zsh
Home directory [/home/john]:
Home directory permissions (Leave empty for default):
Use password-based authentication? [yes]:
Use an empty password? (yes/no) [no]:
Use a random password? (yes/no) [no]:
Enter password:
Enter password again:
Lock out the account after creation? [no]:
Username : john
Password : *****
Full Name : John Doe
Uid : 1001
Class :
Groups : john wheel
Home : /home/john
Home Mode :
Shell : /usr/local/bin/zsh
Locked : no
OK? (yes/no): yes
adduser: INFO: Successfully added (john) to the user database.
Add another user? (yes/no): no
Goodbye!
Erstellen Sie eine zsh-Konfigurationsdatei:
# ee /home/your-username/.zshrc
Kopieren Sie dies in Ihre .zshrc-Datei:
PS1="<%U%m%u>$[%B%1~%b]%(#.#.$) "
bindkey -e
alias su='su -m'
alias du='du -h -d0'
alias df='df -h'
alias l=less
alias ll='gnuls --color=always -l'
alias ls='gnuls --color=always'
alias pkg_ver='pkg version -v -l "<" | > upgrade'
export EDITOR=ee
autoload -U colors && colors
autoload -U promptinit && promptinit
autoload -U compinit && compinit
# History settings
SAVEHIST=1000
HISTSIZE=1000
HISTFILE=~/.history
setopt histignoredups appendhistory
Führen Sie diesen Befehl aus: (Ersetzen Sie John durch Ihren Benutzernamen)
chown john:john /home/john/.zshrc
Melden Sie sich jetzt mit Ihrem Benutzernamen beim FreeBSD-Server an und ändern Sie das Standard-Root-Passwort:
<vultr>[~]$ su
Password:
<vultr>[~]# passwd
Changing local password for root
New Password:
Retype New Password:
<vultr>[~]#
Wir brauchen keine Sendmail. Beenden und deaktivieren Sie diesen Dienst:
<vultr>[~]# /etc/rc.d/sendmail stop
Stopping sendmail.
Waiting for PIDS: 7843.
sendmail_submit not running? (check /var/run/sendmail.pid).
Stopping sendmail_msp_queue.
Waiting for PIDS: 7846.
Als nächstes werden wir unsere rc.conf-Datei so ändern, dass sie natürlicher aussieht:
# ee /etc/rc.conf
Ändern Sie es so, dass es so aussieht:
#----------- NETWORKING ------------------------------------------------#
hostname="ceph.domain1.com" # replace ceph.domain1.com with your domain
ifconfig_vtnet0="dhcp"
static_routes=linklocal
route_linklocal="-net 169.254.0.0/16 -interface vtnet0"
#--------- SERVICES BSD LOCAL ----------------------------------------#
sshd_enable="YES"
ntpd_enable="YES"
#pf_enable="YES"
#pf_rules="/etc/firewall"
#pf_flags=""
#pflog_enable="YES"
#pflog_logfile="/var/log/pflog"
#pflog_flags=""
sendmail_enable="NONE"
sendmail_submit_enable="NO"
sendmail_outbound_enable="NO"
sendmail_msp_queue_enable="NO"
/etc/hosts
Datei bearbeiten :
# ee /etc/hosts
Fügen Sie Ihre IP-Adresse und Ihren Hostnamen hinzu:
::1 localhost localhost.ceph ceph
127.0.0.1 localhost localhost.ceph ceph
108.61.178.110 ceph.domain1.com ceph
Zeitzone einstellen:
# bsdconfig
Deaktivieren Sie nach Möglichkeit den Remotezugriff für den Root-Benutzer. Die meisten Angriffe auf SSH versuchen, über das Root-Benutzerkonto darauf zuzugreifen. Verbinde dich immer mit deinem Benutzernamen und dann su
mit root. Nur Benutzer aus der wheel
Gruppe können su
rooten. Deshalb haben wir unseren Benutzer zur Radgruppe hinzugefügt.
Root-Login deaktivieren:
# ee /etc/ssh/sshd_config
Kommentieren Sie diese Zeile aus:
PermitRootLogin no
Neustart:
# reboot
Nach Abschluss des Neustarts wird in der Vultr-Konsole eine Meldung wie die folgende angezeigt:
time correction of 3600 seconds exceeds sanity limit (1000); set clock manually to
correct UTC time.
Deshalb müssen wir die Uhr manuell korrigieren. Befolgen Sie diese Befehle, um zuerst su
zu rooten:
$ su
Password:
# ntpdate 0.europe.pool.ntp.org
Jetzt konfigurieren wir die Firewall. OpenBSD PF ist im FreeBSD-Kernel enthalten, sodass Sie keine Pakete installieren müssen.
ee
Erstellen Sie mit dem Editor eine Datei /etc/firewall
:
# ee /etc/firewall
Fügen Sie Folgendes ein: (Ersetzen Sie alle IP-Adressen durch Ihre)
#######################################################################
me="vtnet0"
table <bruteforcers> persist
table <trusted> persist file "/etc/trusted"
icmp_types = "echoreq"
junk_ports="{ 135,137,138,139,445,68,67,3222 }"
junk_ip="224.0.0.0/4"
set loginterface vtnet0
scrub on vtnet0 reassemble tcp no-df random-id
# ---- First rule obligatory "Pass all on loopback"
pass quick on lo0 all
# ---- Block junk logs
block quick proto { tcp, udp } from any to $junk_ip
block quick proto { tcp, udp } from any to any port $junk_ports
# ---- Second rule "Block all in and pass all out"
block in log all
pass out all keep state
############### FIREWALL ###############################################
# ---- Allow all traffic from my Home
pass quick proto {tcp, udp} from 1.2.3.4 to $me keep state
# ---- block SMTP out
block quick proto tcp from $me to any port 25
# ---- Allow incoming Web traffic
pass quick proto tcp from any to $me port { 80, 443 } flags S/SA keep state
# ---- Allow my team member SSH access
pass quick proto tcp from 1.2.3.5 to $me port ssh flags S/SA keep state
# ---- Block bruteforcers
block log quick from <bruteforcers>
# ---- Allow SSH from trusted sources, but block bruteforcers
pass quick proto tcp from <trusted> to $me port ssh \
flags S/SA keep state \
(max-src-conn 10, max-src-conn-rate 20/60, \
overload <bruteforcers> flush global)
# ---- Allow ICMP
pass in inet proto icmp all icmp-type $icmp_types keep state
pass out inet proto icmp all icmp-type $icmp_types keep state
/etc/trusted
Datei erstellen . In diese Datei werden IPs eingefügt, denen wir "vertrauen".
# ee /etc/trusted
Fügen Sie einige IPs hinzu:
# Hosting
1.2.0.0/16
# My friends
1.2.4.0/24
Nun eine Erklärung. Junk-Ports und Junk-IPs sind nur einige Ports / IPs, die wir nicht in Protokollen sehen möchten. Wir haben dies mit dieser Regel getan:
# ---- Block junk logs
block quick proto { tcp, udp } from any to $junk_ip
block quick proto { tcp, udp } from any to any port $junk_ports
Dies sind nur Standardeinstellungen, und Sie müssen sich darüber keine Sorgen machen:
icmp_types = "echoreq"
set loginterface vtnet0
scrub on vtnet0 reassemble tcp no-df random-id
pass quick on lo0 all
block in log all
pass out all keep state
Diese Regel blockiert ausgehenden SMTP-Verkehr von Ihrem Server (dies ist die Standardeinstellung bei Vultr).
# ---- block SMTP out
block quick proto tcp from $me to any port 25
Nur dass bruteforcers
der Rest ziemlich einfach ist.
# ---- Allow SSH from trusted sources, but block bruteforcers
pass quick proto tcp from <trusted> to $me port ssh \
flags S/SA keep state \
(max-src-conn 10, max-src-conn-rate 20/60, \
overload <bruteforcers> flush global)
Bruteforcers sagt nur: Erlaube von <vertrauenswürdigen> IPs zu Port 22, aber es können nur 10 gleichzeitige Verbindungen von einer Quell-IP hergestellt werden. Wenn es mehr als 10 ist, blockieren Sie diese IP und legen Sie sie in Tabelle Bruteforcers. Gleiches gilt für die 20/60-Regel. Dies bedeutet maximal 20 Verbindungen in 60 Sekunden.
Firewall aktivieren:
# ee /etc/rc.conf
Kommentieren Sie diese Zeilen aus:
pf_enable="YES"
pf_rules="/etc/firewall"
pf_flags=""
pflog_enable="YES"
pflog_logfile="/var/log/pflog"
pflog_flags=""
Neustart:
# reboot
Wenn Sie alles richtig gemacht haben, können Sie sich anmelden und die Firewall wird aktiviert. Sie müssen nicht jedes Mal neu starten, wenn Sie die /etc/firewall
Datei ändern . Mach einfach:
# /etc/rc.d/pf reload
Sehen Sie in Echtzeit, wer versucht, eine Verbindung zu Ihrem Server herzustellen:
# tcpdump -n -e -ttt -i pflog0
Zeige die Geschichte:
# tcpdump -n -e -ttt -r /var/log/pflog
Sehen Sie, ob Sie jemanden in der Bruteforcer-Tabelle haben:
# pfctl -t bruteforcers -T show
Und das ist es. Sie haben die PF-Firewall erfolgreich auf dem FreeBSD-Server implementiert!
Ransomware-Angriffe nehmen zu, aber kann KI helfen, den neuesten Computervirus zu bekämpfen? Ist KI die Antwort? Lesen Sie hier, ob KI boone oder bane ist
ReactOS, ein quelloffenes und kostenloses Betriebssystem, ist hier mit der neuesten Version. Kann es den Anforderungen moderner Windows-Benutzer genügen und Microsoft zu Fall bringen? Lassen Sie uns mehr über dieses alte, aber neuere Betriebssystem erfahren.
Whatsapp hat endlich die Desktop-App für Mac- und Windows-Benutzer auf den Markt gebracht. Jetzt können Sie ganz einfach von Windows oder Mac auf WhatsApp zugreifen. Verfügbar für Windows 8+ und Mac OS 10.9+
Lesen Sie dies, um zu erfahren, wie Künstliche Intelligenz bei kleinen Unternehmen beliebt wird und wie sie die Wahrscheinlichkeit erhöht, sie wachsen zu lassen und ihren Konkurrenten einen Vorsprung zu verschaffen.
Vor kurzem hat Apple macOS Catalina 10.15.4 als Ergänzungsupdate veröffentlicht, um Probleme zu beheben, aber es scheint, dass das Update mehr Probleme verursacht, die zum Bricking von Mac-Computern führen. Lesen Sie diesen Artikel, um mehr zu erfahren
13 Tools zur kommerziellen Datenextraktion von Big Data
Unser Computer speichert alle Daten in einer organisierten Weise, die als Journaling-Dateisystem bekannt ist. Es ist eine effiziente Methode, die es dem Computer ermöglicht, Dateien zu suchen und anzuzeigen, sobald Sie auf die Suche klicken.https://wethegeek.com/?p=94116&preview=true
Da sich die Wissenschaft schnell weiterentwickelt und einen Großteil unserer Bemühungen übernimmt, steigt auch das Risiko, uns einer unerklärlichen Singularität auszusetzen. Lesen Sie, was Singularität für uns bedeuten könnte.
Ein Einblick in 26 Big-Data-Analysetechniken: Teil 1
KI im Gesundheitswesen hat in den letzten Jahrzehnten große Fortschritte gemacht. Somit wächst die Zukunft der KI im Gesundheitswesen immer noch von Tag zu Tag.