Pandangan tentang 26 Teknik Analisis Data Besar: Bahagian 1
Pandangan tentang 26 Teknik Analisis Data Besar: Bahagian 1
Tutorial ini akan menunjukkan cara melindungi pelayan FreeBSD anda menggunakan firewall OpenBSD PF. Kami akan menganggap bahawa anda mempunyai pemasangan FreeBSD bersih yang digunakan oleh Vultr tanpa penambahan pengguna. Kami akan melakukan beberapa perkara lain selain konfigurasi Firewall yang juga akan mengeraskan keselamatan pelayan FreeBSD kami. Sebelum konfigurasi firewall, kami akan memasang beberapa pakej kerana pemasangan FreeBSD lalai dilengkapi dengan sekumpulan alat dan pakej minimum (yang betul), untuk memudahkan kami bekerja.
Shell lalai dalam FreeBSD adalah /bin/sh
. Ini adalah shell asas tanpa fungsi yang lengkap secara automatik. Kami akan menggunakan sesuatu yang lebih baik. Kami akan memasang zsh
.
Pertama, pasang pakej ini:
# 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 adalah ls
program dari Linux. Kami hanya mahu mempunyai ls
perintah yang sama di Linux dan FreeBSD.
Tambahkan pengguna biasa ke sistem: (ganti john dengan nama pengguna anda dan jangan lupa menambahkan pengguna ke kumpulan roda)
# 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!
Buat fail konfigurasi zsh:
# ee /home/your-username/.zshrc
Salin ini ke fail .zshrc anda:
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
Jalankan arahan ini: (ganti john dengan nama pengguna anda)
chown john:john /home/john/.zshrc
Sekarang, log masuk ke pelayan FreeBSD dengan nama pengguna anda dan ubah kata laluan root lalai:
<vultr>[~]$ su
Password:
<vultr>[~]# passwd
Changing local password for root
New Password:
Retype New Password:
<vultr>[~]#
Kami tidak perlu menghantar e-mel. Hentikan dan matikan perkhidmatan ini:
<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.
Seterusnya, kami akan menukar fail rc.conf kami agar kelihatan lebih semula jadi:
# ee /etc/rc.conf
Tukar ia kelihatan seperti ini:
#----------- 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"
Edit /etc/hosts
fail:
# ee /etc/hosts
Tambahkan alamat IP dan nama hos anda:
::1 localhost localhost.ceph ceph
127.0.0.1 localhost localhost.ceph ceph
108.61.178.110 ceph.domain1.com ceph
Tetapkan zon waktu:
# bsdconfig
Bila-bila masa anda boleh, lumpuhkan akses jauh untuk pengguna root. Sebilangan besar serangan ke atas SSH akan cuba diakses melalui akaun pengguna root. Sentiasa berhubung dengan nama pengguna anda dan kemudian su
ke root. Hanya pengguna dari wheel
kumpulan yang dapat su
melakukan root. Itulah sebabnya kami menambahkan pengguna kami ke kumpulan roda.
Lumpuhkan log masuk root:
# ee /etc/ssh/sshd_config
Menanggalkan baris ini:
PermitRootLogin no
But semula:
# reboot
Selepas but semula selesai, anda akan melihat mesej seperti ini di konsol Vultr:
time correction of 3600 seconds exceeds sanity limit (1000); set clock manually to
correct UTC time.
Itulah sebabnya kita perlu membetulkan jam secara manual. Ikuti arahan ini, pertama su
untuk root:
$ su
Password:
# ntpdate 0.europe.pool.ntp.org
Sekarang, kita akan mengkonfigurasi firewall. OpenBSD PF disertakan dalam kernel FreeBSD, jadi anda tidak perlu memasang pakej apa pun.
Dengan ee
editor, buat fail /etc/firewall
:
# ee /etc/firewall
Masukkan ini: (ganti sebarang alamat IP dengan alamat anda)
#######################################################################
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
Buat /etc/trusted
fail. Dalam fail ini, kita akan meletakkan IP yang kita "percayai".
# ee /etc/trusted
Tambahkan beberapa IP:
# Hosting
1.2.0.0/16
# My friends
1.2.4.0/24
Sekarang beberapa penjelasan. Port sampah dan IP sampah hanyalah beberapa port / IP yang tidak mahu dilihat dalam log. Kami telah melakukannya dengan peraturan ini:
# ---- 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
Ini hanya lalai dan anda tidak perlu risau:
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
Peraturan ini menyekat lalu lintas SMTP keluar dari pelayan anda (yang merupakan lalai pada Vultr).
# ---- block SMTP out
block quick proto tcp from $me to any port 25
Kecuali bruteforcers
selebihnya cukup lurus ke hadapan.
# ---- 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 hanya mengatakan: Benarkan dari <trusted> IP ke port 22 tetapi hanya 10 sambungan serentak dapat dibuat dari satu sumber IP. Sekiranya melebihi 10, sekat IP ini dan masukkan ke dalam bruteforcers meja. Perkara yang sama berlaku untuk peraturan 20/60. Ini bermaksud maksimum 20 sambungan dalam 60 saat.
Dayakan firewall:
# ee /etc/rc.conf
Menanggalkan garis berikut:
pf_enable="YES"
pf_rules="/etc/firewall"
pf_flags=""
pflog_enable="YES"
pflog_logfile="/var/log/pflog"
pflog_flags=""
But semula:
# reboot
Sekiranya anda telah melakukan semuanya dengan betul, maka anda akan dapat log masuk dan firewall akan diaktifkan. Anda tidak perlu reboot setiap kali menukar /etc/firewall
fail. Lakukan sahaja:
# /etc/rc.d/pf reload
Lihat siapa yang cuba menyambung ke pelayan anda dalam masa nyata:
# tcpdump -n -e -ttt -i pflog0
Tunjukkan sejarah:
# tcpdump -n -e -ttt -r /var/log/pflog
Lihat jika anda mempunyai seseorang dalam jadual bruteforcers:
# pfctl -t bruteforcers -T show
Dan itu sahaja. Anda berjaya melaksanakan firewall PF pada pelayan FreeBSD!
Pandangan tentang 26 Teknik Analisis Data Besar: Bahagian 1
Ramai daripada anda tahu Switch akan keluar pada Mac 2017 dan ciri baharunya. Bagi yang tidak tahu, kami telah menyediakan senarai ciri yang menjadikan 'Tukar' sebagai 'gajet yang mesti ada'.
Adakah anda menunggu gergasi teknologi memenuhi janji mereka? semak apa yang masih belum dihantar.
Baca blog untuk mengetahui lapisan berbeza dalam Seni Bina Data Besar dan fungsinya dengan cara yang paling mudah.
Baca ini untuk mengetahui cara Kecerdasan Buatan semakin popular di kalangan syarikat berskala kecil dan cara ia meningkatkan kebarangkalian untuk menjadikan mereka berkembang dan memberikan pesaing mereka kelebihan.
CAPTCHA telah menjadi agak sukar untuk diselesaikan oleh pengguna dalam beberapa tahun kebelakangan ini. Adakah ia dapat kekal berkesan dalam pengesanan spam dan bot pada masa hadapan?
Apabila Sains Berkembang pada kadar yang pantas, mengambil alih banyak usaha kita, risiko untuk menundukkan diri kita kepada Ketunggalan yang tidak dapat dijelaskan juga meningkat. Baca, apakah makna ketunggalan bagi kita.
Apakah teleperubatan, penjagaan kesihatan jauh dan impaknya kepada generasi akan datang? Adakah ia tempat yang baik atau tidak dalam situasi pandemik? Baca blog untuk mencari paparan!
Anda mungkin pernah mendengar bahawa penggodam memperoleh banyak wang, tetapi pernahkah anda terfikir bagaimana mereka memperoleh wang seperti itu? Mari berbincang.
Baru-baru ini Apple mengeluarkan macOS Catalina 10.15.4 kemas kini tambahan untuk menyelesaikan masalah tetapi nampaknya kemas kini itu menyebabkan lebih banyak masalah yang membawa kepada pemusnahan mesin mac. Baca artikel ini untuk mengetahui lebih lanjut