Hvernig á að setja upp Tiny Tiny RSS Reader á FreeBSD 11 FAMP VPS
Að nota annað kerfi? Tiny Tiny RSS Reader er ókeypis og opinn uppspretta sjálf-hýstinn fréttastraumur (RSS/Atom) lesandi og safnari, hannaður til að dreifa
VPS netþjónar eru oft skotmörk boðflenna. Algeng tegund árása birtist í kerfisskrám sem hundruð óheimilra ssh innskráningartilrauna. Það er mjög gagnlegt að setja upp eldvegg, en í sjálfu sér gæti það ekki stjórnað truflandi innbrotstilraunum nægilega.
Þessi kennsla sýnir hvernig á að smíða aukna innrásarhindrun fyrir FreeBSD með því að nota tvö forrit, ipfw
eldvegginn og sshguard
. SSHGuard er lítið viðbótarforrit sem fylgist með kerfisskrám fyrir „móðgandi“ færslur. Þegar brotamenn reyna að fá aðgang, gefur sshguard
fyrirmæli um ipfw
að loka fyrir umferð sem kemur frá IP tölu brotamannsins. Brotamaðurinn er síðan í raun útilokaður.
Þegar búið er að skilja hvernig þessi forrit virka er stjórnun netþjónsvörn frekar einföld. Þó að þessi handbók sé lögð áhersla á að stilla FreeBSD, eiga hlutar hennar við um annað stýrikerfi og eldvegghugbúnað.
FreeBSD býður upp á 3 eldveggi í sjálfgefnum ( GENERIC
) kjarna, ipfw
, pf
, og ipfilter
. Hver og einn hefur kosti og aðdáendur, en ipfw
er innfæddur eldvegghugbúnaður FBSD og frekar einfaldur í notkun í okkar tilgangi. Það er athyglisvert að það ipfw
gerir marga hluti eins og mannasíðan hennar sýnir, þó er ekki þörf á hæfileikum eins og NAT, umferðarmótun o.s.frv. fyrir dæmigerðar VPS aðstæður. Sem betur fer uppfylla grunneiginleikar eldveggsins auðveldlega kröfur okkar.
Til að ræsa eldvegginn við ræsingu skaltu bæta eftirfarandi við /etc/rc.conf
:
firewall_enable="YES"
firewall_script="/usr/local/etc/IPFW.rules"
firewall_logging="YES"
The service
stjórn er í boði til að byrja / stöðva eldvegg handvirkt:
[user@vultr ~]$ sudo service ipfw start
Gerir náttúrulega ipfw
ekki neitt fyrr en það bætir við reglum, oft úr skrá, í þessu dæmi sem er staðsett á /usr/local/etc/IPFW.rules
. Regluskráin gæti í raun verið staðsett hvar sem er eða haft hvaða nafn sem er, svo framarlega sem hún passi við "firewall_script" færibreytuna. Regluskránni er lýst í smáatriðum hér að neðan.
sshguard
kemur í nokkrum bragðtegundum til notkunar með mismunandi eldveggi. Notaðu pkg
tólið til að sækja og setja upp sshguard-ipfw
:
[user@vultr ~]$ sudo pkg install sshguard-ipfw
Í flestum tilfellum er það allt sem maður þarf að gera. Viðeigandi breyta er sjálfkrafa sett inn í /etc/rc.conf
til að byrja við ræsingu:
sshguard_enable="YES"
Sjálfgefnar stillingar virka venjulega vel. Ef önnur gildi eru nauðsynleg sshguard
gefur mannasíðan nákvæmar upplýsingar um færibreyturnar:
# sshguard--program defaults, so don't need to be in rc.conf unless assigning different value
# sshguard_pidfile="/var/run/sshguard.pid"
# sshguard_watch_logs="/var/log/auth.log:/var/log/mail"
# sshguard_blacklist="40:/var/db/sshguard/blacklist.db"
# sshguard_safety_thresh="40"
# sshguard_pardon_min_interval="420"
# sshguard_prescribe_interval="1200"
Þú getur byrjað sshguard
á venjulegu service
ákalli:
[user@vultr ~]$ sudo service sshguard start
Erfiðast er að búa til eldveggsreglusettið. ipfw
getur nýtt sér /etc/rc.firewall
forskriftina sem fylgir , en það þarf að breyta því til að koma til móts við SSHGuard, sem og mismunandi rekstraraðstæður. Nokkrar vefsíður og FreeBSD Manual hafa gagnlegar upplýsingar um að gera þetta. Hins vegar er ekki svo erfitt að skrifa regluskrá, auk þess getur sérsniðið reglusett verið auðveldara að skilja og breyta þegar nauðsyn krefur.
Mikilvægur eiginleiki ipfw
reglna er að fyrsti leikur vinnur sem þýðir að regluröð er mikilvæg. Í ipfw
, er hver regla skipun og regluskráin er keyranleg skeljaforskrift. Það gerir kleift að breyta reglusettinu með því að breyta reglum og keyra síðan regluskrána eins og skeljaforskriftin sem hún er:
[user@vultr /usr/local/etc]$ sudo ./IPFW.rules
Yfirleitt mun regluskrá skilgreina breytu fyrir ipfw
skipunina, hreinsa síðan núverandi reglur, gefa út almennar reglur, síðan halda áfram að setja "út" reglur, fylgt eftir með "inn" reglum. ipfw handbókarsíðan og önnur úrræði innihalda mikið af upplýsingum um regluskipulag og valkosti sem eru vægast sagt fjölmargir.
Þar sem FreeBSD sshguard útgáfan hefur verið uppfærð í útgáfu 1.6.2 hefur aðferðin við að setja inn bannreglur fyrir brotamenn breyst. Nú eru heimilisföng brotamanna geymd í ipfw töflu (tafla 22 til að vera nákvæm), frekar en sett inn í reglurnar fyrir ofan 55000 eins og áður.
Sem betur fer er frekar einfalt að setja upp regluskrána til að nota töfluna. Það er bara spurning um að setja töfluregluna á réttan stað og passa upp á að nota rétta setningafræði við ritun reglunnar.
Þegar sshguard
brotamaður finnur, setur það heimilisfang brotamannsins á svartan lista og setur einnig heimilisfangið inn í ipfw
töfluna svo það mun „kveikja“ á því að neita aðgangi. Þessi regla mun ná þessum tilgangi:
01000 deny ip from table\(22\) to any
Það er samt nauðsynlegt að setja reglur sem leyfa þjónustu á heimleið yfir 01000 í þessu tilfelli. Til dæmis, segjum að heimilisfangið 10.20.30.40
sé brotamaður í töflu 22, og við höfum þessa ipfw reglu:
56420 allow tcp from any to me dst-port 22 in via $vif
Þar sem ipfw
kynni regla 01000 fyrir reglu 56420 , 10.20.30.40
er læst . Það mun aldrei sjást af "leyfðu 22 inn" reglunni yfirleitt. Ef leyfisreglan væri með „venjulegt“ númer eins og 00420 , yrði slæmri umferð hleypt inn og hún aldrei læst (vegna þess að 00420 er minna en 01000 og „fyrsti leikur vinnur“).
Fínn eiginleiki uppfærðu útgáfunnar er að nú þegar sshguard ræsir er öllum vistföngum á svarta listanum bætt við töfluna og eru tiltæk til að loka á komandi afbrotamenn án tafar. Svarti listinn er uppsafnaður og geymdur á milli lota.
Á þessum tímapunkti er líklega skynsamlegt að sýna fullkomið ipfw
reglusett breytt fyrir sshguard
. Athugasemdir ættu að gera það frekar auðvelt að fylgja reglulógíkinni:
#!/bin/sh
# ipfw config/rules
# from FBSD Handbook, rc.firewall, et. al.
# Flush all rules before we begin.
ipfw -q -f flush
# Set rules command prefix
cmd="ipfw -q add "
vif="vtnet0"
# allow all for localhost
$cmd 00010 allow ip from any to any via lo0
# checks stateful rules. If marked as "keep-state" the packet has
# already passed through filters and is "OK" without futher
# rule matching
$cmd 00101 check-state
# allow DNS out
$cmd 00110 allow tcp from me to any dst-port 53 out via $vif setup keep-state
$cmd 00111 allow udp from me to any dst-port 53 out via $vif keep-state
# allow dhclient connection out (port numbers are important)
$cmd 00120 allow udp from me 68 to any dst-port 67 out via $vif keep-state
# allow HTTP HTTPS replies
$cmd 00200 allow tcp from any to any dst-port 80 out via $vif setup keep-state
$cmd 00220 allow tcp from any to any dst-port 443 out via $vif setup keep-state
# allow outbound mail
$cmd 00230 allow tcp from any to any dst-port 25 out via $vif setup keep-state
$cmd 00231 allow tcp from any to any dst-port 465 out via $vif setup keep-state
$cmd 00232 allow tcp from any to any dst-port 587 out via $vif setup keep-state
# allow icmp re: ping, et. al.
# comment this out to disable ping, et.al.
$cmd 00250 allow icmp from any to any out via $vif keep-state
# alllow timeserver out
$cmd 00260 allow tcp from any to any dst-port 37 out via $vif setup keep-state
# allow ntp out
$cmd 00270 allow udp from any to any dst-port 123 out via $vif keep-state
# allow outbound SSH traffic
$cmd 00280 allow tcp from any to any dst-port 22 out via $vif setup keep-state
# otherwise deny outbound packets
# outbound catchall.
$cmd 00299 deny log ip from any to any out via $vif
# inbound rules
# deny inbound traffic to restricted addresses
$cmd 00300 deny ip from 192.168.0.0/16 to any in via $vif
$cmd 00301 deny ip from 172.16.0.0/12 to any in via $vif
$cmd 00302 deny ip from 10.0.0.0/8 to any in via $vif
$cmd 00303 deny ip from 127.0.0.0/8 to any in via $vif
$cmd 00304 deny ip from 0.0.0.0/8 to any in via $vif
$cmd 00305 deny ip from 169.254.0.0/16 to any in via $vif
$cmd 00306 deny ip from 192.0.2.0/24 to any in via $vif
$cmd 00307 deny ip from 204.152.64.0/23 to any in via $vif
$cmd 00308 deny ip from 224.0.0.0/3 to any in via $vif
# deny inbound packets on these ports
# auth 113, netbios (services) 137/138/139, hosts-nameserver 81
$cmd 00315 deny tcp from any to any dst-port 113 in via $vif
$cmd 00320 deny tcp from any to any dst-port 137 in via $vif
$cmd 00321 deny tcp from any to any dst-port 138 in via $vif
$cmd 00322 deny tcp from any to any dst-port 139 in via $vif
$cmd 00323 deny tcp from any to any dst-port 81 in via $vif
# deny partial packets
$cmd 00330 deny ip from any to any frag in via $vif
$cmd 00332 deny tcp from any to any established in via $vif
# allowing icmp re: ping, etc.
$cmd 00310 allow icmp from any to any in via $vif
# allowing inbound mail, dhcp, http, https
$cmd 00350 allow udp from any 53 to me in via $vif
$cmd 00360 allow tcp from any 53 to me in via $vif
$cmd 00370 allow udp from any 67 to me dst-port 68 in via $vif keep-state
$cmd 00400 allow tcp from any to me dst-port 80 in via $vif setup limit src-addr 2
$cmd 00410 allow tcp from any to me dst-port 443 in via $vif setup limit src-addr 2
# SSHguard puts offender addresses in table 22. Set up the table rule
# Please note the '\(22\)' syntax, necessary since it's run as shell command
$cmd 01000 deny ip from table\(22\) to any
# allow inbound ssh, mail. PROTECTED SERVICES: numbered ABOVE sshguard blacklist range
$cmd 56420 allow tcp from any to me dst-port 22 in via $vif setup limit src-addr 2
$cmd 56530 allow tcp from any to any dst-port 25 in via $vif setup keep-state
$cmd 56531 allow tcp from any to any dst-port 465 in via $vif setup keep-state
$cmd 56532 allow tcp from any to any dst-port 587 in via $vif setup keep-state
# deny everything else, and log it
# inbound catchall
$cmd 56599 deny log ip from any to any in via $vif
# ipfw built-in default, don't uncomment
# $cmd 65535 deny ip from any to any
Kerfisþarfir eru mismunandi og mismunandi val á höfnum til að loka eða opna fyrir endurspeglast í reglusettinu. Þegar reglusettinu er lokið skaltu vista skrána í /usr/local/etc/IPFW.rules
, og hefja FBSD þjónustuna:
# service ipfw start
# service sshguard start
Auki eldveggurinn ætti nú að vera í gangi! Athugaðu sshguard
:
[user@vultr ~]$ sudo pgrep -lfa ssh
Ef það sshguard
er í gangi, birtast pid og full skipanalína:
720 /usr/local/sbin/sshguard -b 40:/var/db/sshguard/blacklist.db -l /var/log/auth.log -l /var/log/maillog -a 40 -p 420 -s 1200 -w /usr/local/etc/sshguard.whitelist -i /var/run/sshguard.pid
Þetta sýnir eldveggreglusettið með tölfræði og síðast þegar pakki passaði við regluna:
[user@vultr ~]$ sudo ipfw -cat list
Eftir klukkustundir eða daga er heimilisföngum brotamanna bætt við svarta listann og einnig töflu 22. Til að skoða öll heimilisföngin í töflunni, notaðu þessa skipun:
ipfw table 22 list
Niðurstaðan er prentuð sem:
10.10.10.118/32 0
10.10.10.72/32 0
...
Eins og lýst er hér að ofan eru tengingar frá þessum netföngum óheimilar. Auðvitað, við fyrstu notkun sshguard
verða engin heimilisföng á listanum, en með tímanum getur hann orðið frekar langur. Einn valkostur er að búa til sérstakar útilokunarreglur fyrir heimilisföng með mörgum færslum í töflunni og eyða þeim síðan af svarta listanum.
Það er góð hugmynd að skoða annála af og til til að ganga úr skugga um að innbrotum sé stjórnað. Almennt, /var/log/auth.log
og /var/log/security
eru upplýsandi. Götur eða villur við að ná yfir netþjónustu gætu komið í ljós. Að breyta eldveggsreglunum eftir þörfum er eðlilegur hluti af stjórnun netþjóns.
Í fyrri sshguard útgáfum, þegar /var/db/sshguard/blacklist.db
skráin var orðin stór, gæti hún komið í veg sshguard
fyrir að hún ræsist við ræsingu kerfisins. Að fjarlægja eða endurnefna svarta listaskrána leyft sshguard
að byrja. Þetta vandamál virðist vera lagað í nýjustu sshguard útgáfunni, þannig að þessi lausn er líklega ekki lengur nauðsynleg.
Gakktu úr skugga um að þú hafir hvítlista IP töluna sem þú ert tengdur við SSH lotuna frá. Ef þú læsir þig óvart úti geturðu alltaf tengst noVNC stjórnborðinu á https://my.vultr.com og hvítlistað IP-töluna þína.
Samantekt, með því að nota samsetninguna af ipfw
og sshguard
hjálpar til við að halda FreeBSD kerfinu þínu öruggu og gera starf sitt. Að lágmarka uppáþrengjandi netvirkni hefur aukinn ávinning: minni „hávaði“ gerir það auðveldara að fylgjast með og stilla kerfisrekstur, sem stuðlar að öruggari, betur starfandi netþjóni.
Það er ekki sérstaklega flókið að vernda FreeBSD kerfi/þjón á áhrifaríkan hátt. Þó að hóflega átak sé krafist til að koma því í gang, skilar það sér í verulega meiri VPS og verkefnaöryggi.
Að nota annað kerfi? Tiny Tiny RSS Reader er ókeypis og opinn uppspretta sjálf-hýstinn fréttastraumur (RSS/Atom) lesandi og safnari, hannaður til að dreifa
Að nota annað kerfi? Wiki.js er ókeypis og opinn uppspretta, nútímalegt wikiforrit byggt á Node.js, MongoDB, Git og Markdown. Wiki.js frumkóði er publicl
Að nota annað kerfi? Pagekit 1.0 CMS er fallegt, mát, útvíkkanlegt og létt, ókeypis og opið efnisstjórnunarkerfi (CMS) með
Að nota annað kerfi? MODX Revolution er hraðvirkt, sveigjanlegt, stigstærð, opinn uppspretta, vefumsjónarkerfi (CMS) í fyrirtækisgráðu skrifað í PHP. Það i
Þessi grein leiðir þig í gegnum uppsetningu OpenBSD 5.5 (64-bita) á KVM með Vultr VPS. Skref 1. Skráðu þig inn á Vultr stjórnborðið. Skref 2. Smelltu á DEPLOY
Að nota annað kerfi? osTicket er opinn uppspretta miðasölukerfi fyrir þjónustuver. osTicket frumkóði er hýst opinberlega á Github. Í þessari kennslu
Að nota annað kerfi? Flarum er ókeypis og opinn uppspretta næstu kynslóðar spjallforrit sem gerir umræður á netinu skemmtilegar. Flarum frumkóði er hýst o
Að nota annað kerfi? TLS 1.3 er útgáfa af Transport Layer Security (TLS) samskiptareglunum sem var gefin út árið 2018 sem fyrirhugaður staðall í RFC 8446
Inngangur WordPress er ríkjandi vefumsjónarkerfi á netinu. Það knýr allt frá bloggum til flókinna vefsíðna með kraftmiklu efni
Using a Different System? Subrion 4.1 CMS is a powerful and flexible open source Content Management System (CMS) that brings an intuitive and clear conten
Þessi kennsla mun sýna þér hvernig á að stilla DNS þjónustu sem er auðvelt að viðhalda, auðvelt að stilla og sem er almennt öruggara en klassískt BIN
FEMP stafla, sem er sambærilegur við LEMP stafla á Linux, er safn af opnum hugbúnaði sem er venjulega settur upp saman til að virkja FreeBS
MongoDB er heimsklassa NoSQL gagnagrunnur sem er oft notaður í nýrri vefforritum. Það býður upp á afkastamikil fyrirspurnir, klippingu og afritun
Að nota annað kerfi? Monica er opinn uppspretta persónuleg tengslastjórnunarkerfi. Hugsaðu um það sem CRM (vinsælt tól notað af söluteymum í þ
Inngangur Þessi kennsla sýnir OpenBSD sem rafræn viðskipti með PrestaShop og Apache. Apache er krafist vegna þess að PrestaShop er með flókna UR
Að nota annað kerfi? Fork er opinn uppspretta CMS skrifað í PHP. Forks frumkóði er hýstur á GitHub. Þessi handbók mun sýna þér hvernig á að setja upp Fork CM
Using a Different System? Directus 6.4 CMS is a powerful and flexible, free and open source Headless Content Management System (CMS) that provides developer
VPS netþjónar eru oft skotmörk boðflenna. Algeng tegund árása birtist í kerfisskrám sem hundruð óheimilra ssh innskráningartilrauna. Setja upp
Inngangur OpenBSD 5.6 kynnti nýjan púka sem heitir httpd, sem styður CGI (í gegnum FastCGI) og TLS. Engin frekari vinna þarf til að setja upp nýja http
Þessi kennsla mun sýna þér hvernig á að setja upp hópbúnaðinn iRedMail á nýrri uppsetningu á FreeBSD 10. Þú ættir að nota netþjón með að minnsta kosti einu gígabæta o
Gervigreind er ekki í framtíðinni, hún er hér í nútímanum Í þessu bloggi Lestu hvernig gervigreindarforrit hafa haft áhrif á ýmsa geira.
Ertu líka fórnarlamb DDOS árása og ruglaður með forvarnaraðferðirnar? Lestu þessa grein til að leysa spurningar þínar.
Þú gætir hafa heyrt að tölvuþrjótar græða mikið af peningum, en hefur þú einhvern tíma velt því fyrir þér hvernig þeir vinna sér inn svona peninga? við skulum ræða.
Viltu sjá byltingarkenndar uppfinningar frá Google og hvernig þessar uppfinningar breyttu lífi hvers manns í dag? Lestu síðan til að blogga til að sjá uppfinningar frá Google.
Hugmyndin um að sjálfkeyrandi bílar fari á göturnar með hjálp gervigreindar er draumur sem við höfum átt um tíma núna. En þrátt fyrir nokkur loforð eru þau hvergi sjáanleg. Lestu þetta blogg til að læra meira…
Þar sem vísindin þróast hratt og taka yfir mikið af viðleitni okkar, eykst hættan á því að verða fyrir óútskýranlegri einstæðu. Lestu, hvað sérkenni gæti þýtt fyrir okkur.
Geymsluaðferðir gagna hafa verið að þróast gæti verið frá fæðingu gagna. Þetta blogg fjallar um þróun gagnageymslu á grundvelli upplýsingamynda.
Lestu bloggið til að þekkja mismunandi lög í Big Data Architecture og virkni þeirra á einfaldasta hátt.
Í þessum stafræna heimi hafa snjallheimilistæki orðið afgerandi hluti af lífi. Hér eru nokkrir ótrúlegir kostir snjallheimatækja um hvernig þau gera líf okkar þess virði að lifa því og einfaldara.
Nýlega gaf Apple út macOS Catalina 10.15.4 viðbótaruppfærslu til að laga vandamál en svo virðist sem uppfærslan sé að valda fleiri vandamálum sem leiða til múrsteins á Mac vélum. Lestu þessa grein til að læra meira