Ինչպես տեղադրել Fail2ban-ը Ubuntu 24.04 սերվերի վրա
Այս էջում
- Նախադրյալներ
- Fail2ban-ի և UFW-ի (չբարդացված firewall) տեղադրում
- Fail2ban-ի կարգավորում
- Fail2ban կանոնների ստուգում fail2ban-client-ի միջոցով
- Ինչպես արգելել և արգելել IP հասցեն fail2ban-client-ով
- Եզրակացություն
Fail2ban-ը անվճար և բաց կոդով IPS է (Intrusion Prevention Software), որն օգնում է ադմինիստրատորներին պաշտպանել Linux սերվերները չարամիտ մուտքի և կոպիտ ուժի հարձակումներից: Fail2ban-ը գրված է Python-ով և ունի զտիչներ տարբեր ծառայությունների համար, ինչպիսիք են Apache2, SSH, FTP և այլն: Fail2ban-ը նվազեցնում է վնասակար մուտքի փորձերը՝ արգելափակելով աղբյուրի գրոհների IP հասցեները:
Fail2ban-ն աշխատում է՝ սկանավորելով ծառայությունների գրանցամատյանների ֆայլերը (e.f /var/log/auth.log) և արգելելով IP հասցեները, որոնք ցույց են տալիս մուտքի վնասակար փորձեր, ինչպիսիք են չափազանց շատ սխալ գաղտնաբառեր, շահագործում փնտրելը և այլն: ufw և firewall: Նաև թույլ է տալիս ստեղծել էլփոստի ծանուցում մուտքի արգելափակված յուրաքանչյուր փորձի համար:
Այս ուղեցույցում դուք կսովորեք, թե ինչպես տեղադրել Fail2ba-ն Ubuntu 24.04 սերվերի վրա: Դուք կտեղադրեք Fail2ban բանտը, կսովորեք հիմնական «fail2ban-client» հրամանը, այնուհետև կսովորեք, թե ինչպես արգելել և արգելել IP հասցեները՝ օգտագործելով Fail2ban:
Նախադրյալներ
Այս ուղեցույցը սկսելու համար համոզվեք, որ ունեք.
- Ubuntu 24.04 սերվեր
- Ոչ արմատական օգտվող, ադմինիստրատորի արտոնություններով
Fail2ban-ի և UFW-ի (չբարդացված firewall) տեղադրում
Fail2ban-ը IPS է (Intrusion Prevention Software), որը պաշտպանում է սերվերները կոպիտ ուժային հարձակումներից: Այն լռելյայն հասանելի է Linux-ի պահեստների մեծ մասում և աջակցում է բազմակի firewall backend-ներին: Այս բաժնում դուք կտեղադրեք Fail2ban-ը, այնուհետև կտեղադրեք UFW (Uncomplicated Firewall), որը կօգտագործվի որպես «Fail2ban»-ի firewall backend:
Նախ, գործարկեք ստորև նշված հրամանը՝ ձեր Ubuntu փաթեթի ինդեքսը թարմացնելու համար:
sudo apt update
Այժմ տեղադրեք «fail2ban» և «ufw» փաթեթները հետևյալ «apt» հրամանով: Տեղադրումը հաստատելու համար մուտքագրեք «Y»:
sudo apt install fail2ban ufw
Տեղադրումն ավարտվելուց հետո գործարկեք ստորև նշված հրամանը՝ SSH-ի պորտը բացելու և UFW-ն միացնելու համար: Մուտքագրեք «Y»՝ UFW-ն հաստատելու, մեկնարկելու և միացնելու համար:
sudo ufw allow OpenSSH
sudo ufw enable
Երբ UFW-ն միացված է, կտեսնեք «Firewall-ը ակտիվ է և միացված է համակարգի գործարկման ժամանակ»:
Հաջորդը, գործարկեք հետևյալ հրամանը՝ UFW կարգավիճակը ստուգելու համար: Դուք կտեսնեք, որ UFW-ն «ակտիվ» է՝ «OpenSSH»-ը միացված է:
sudo ufw status
Վերջապես գործարկեք «systemctl» հրամանը՝ «fail2ban» ծառայությունը սկսելու, ակտիվացնելու և ստուգելու համար:
sudo systemctl enable --now fail2ban
sudo systemctl status fail2ban
Ստորև կարող եք տեսնել, որ «fail2ban»-ն ակտիվ է (աշխատում է) և միացված է:
Fail2ban-ի կարգավորում
Fail2ban-ը տեղադրելուց հետո դուք պետք է կազմաձևեք այն մինչև Fail2ban-ը որևէ գործողություն կատարի (ստուգում և արգելափակում): Այս բաժնում դուք կփոփոխեք «/etc/fail2ban/jail.local» fail2ban կոնֆիգուրացիան, կկարգավորեք «bantime», «maxretry» գլոբալ կոնֆիգուրացիան, և «findtime», կարգավորեք կանխադրված գործողությունը և UFW firewall backend-ը, այնուհետև միացրեք «sshd» բանտը SSH ծառայությունը դաժան ուժի հարձակումներից պաշտպանելու համար:
Սկսելու համար պատճենեք կանխադրված fail2ban կոնֆիգուրացիան «/etc/fail2ban/jail.local»-ում՝ հետևյալով.
sudo cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local
Բացեք «/etc/fail2ban/jail.local» ֆայլը հետևյալ «nano» խմբագրիչ հրամանով:
sudo nano /etc/fail2ban/jail.local
Ավելացրեք ձեր տեղական ցանցը «ignoreip» տարբերակին: Այս ընտրանքում գտնվող ցանկացած ենթացանց չի արգելափակվի fail2ban-ի կողմից:
ignoreip = 127.0.0.1/8 ::1 192.168.1.0/24 192.168.10.20
Կարգավորեք «bantime»-ի կանխադրված կազմաձևը (IP հասցեի ժամանակը կարգելվի), «findtime» (արգելքի գործողությունից առաջ ձախողումների քանակի միջև ընկած տեւողությունը), և «maxretry» (IP հասցեների արգելման ձախողումների թիվը): Այս օրինակում դուք կկարգավորեք «bantime»-ը՝ «1 ժամ», «findtime»-ը՝ «10»: րոպեվրկ՝ «առավելագույնը» մինչև «5 անգամ»:
bantime = 1h
findtime = 10m
maxretry = 5
Ցանկության դեպքում փոխեք լռելյայն «գործողություն»-ը «%(action_mw)s»-ի՝ IP հասցեներն արգելելու և ադմինիստրատորին էլփոստով ծանուցում ուղարկելու համար: Նաև համոզվեք, որ փոխեք «destmail» և «sender» տարբերակները:
action = %(action_mw)s
destemail = [email
sender = [email
Փոխեք կանխադրված «banaction»-ը «ufw»-ի: Դրանով IP հասցեները կարգելվեն fail2ban-ով UFW-ի միջոցով։
banaction = ufw
Այժմ փոխեք «sshd»-ի լռելյայն բանտը ստորև նշված կազմաձևով: Այս օրինակում «sshd» բանտը կունենա հատուկ կարգավորումներ «bantime», «maxretry» և «findtime»-ի համար։ ։
[sshd]
enabled = true
maxretry = 3
findtime = 15m
bantime = 3h
port = ssh
logpath = %(sshd_log)s
backend = %(sshd_backend)s
Ավարտելուց հետո պահպանեք և դուրս եկեք ֆայլից:
Վերջապես գործարկեք «systemctl» հրամանը՝ «fail2ban» ծառայությունը վերագործարկելու և ձեր փոփոխությունները կիրառելու համար:
sudo systemctl restart fail2ban
Fail2ban կանոնների ստուգում fail2ban-client-ի միջոցով
Այս պահին Fail2ban ծառայությունը գործում է և աշխատում է «sshd» բանտում միացված վիճակում: Այժմ դուք կսովորեք «fail2ban-client» հիմնական հրամանը՝ Fail2ban տեղադրումը ստուգելու և կառավարելու համար:
Ապահովելու համար, որ fail2ban-ն աշխատում է, գործարկեք «fail2ban-client» հրամանը ստորև:
sudo fail2ban-client ping
Եթե fail2ban-ը աշխատում է, կտեսնեք «PONG» ելքը:
Այժմ ստուգեք «sshd» բանտի կարգավիճակը հետևյալ հրամանով. Սա ձեզ ցույց կտա «sshd» բանտի հայտնաբերված և արգելված IP հասցեների ցանկը:
sudo fail2ban-client status sshd
Այնուհետև գործարկեք «fail2ban-client get» հրամանը ստորև՝ ստուգելու ձեր fail2ban բանտի հատուկ կանոնները: Այս բաժնում դուք կստուգեք 'bantime', 'maxretry', 'գործողություններ', 'findtime >' և 'ignoreip' 'sshd' բանտից:
sudo fail2ban-client get sshd bantime
sudo fail2ban-client get sshd maxretry
sudo fail2ban-client get sshd actions
sudo fail2ban-client get sshd findtime
sudo fail2ban-client get sshd ignoreip
Ինչպես արգելել և արգելել IP հասցեն fail2ban-client-ով
Կարևոր է իմանալ, թե ինչպես կարելի է ձեռքով արգելել կամ հանել IP հասցեները՝ օգտագործելով «fail2ban-client»: Դրանով դուք հեշտությամբ կարող եք հեռացնել ձեր IP հասցեն արգելված ցուցակից: Դուք կօգտագործեք «fail2ban-client» հրամանը՝ Fail2ban-ում IP հասցեներն արգելելու և արգելելու համար:
Fail2ban-ի միջոցով IP հասցեները ձեռքով արգելելու համար գործարկեք «fail2ban-client» հրամանը ստորև: Այս դեպքում, արգելված IP հասցեն գնում է «sshd» բանտ:
sudo fail2ban-client set sshd banip IP-ADDRESS
Այժմ գործարկեք հետևյալ հրամանը՝ IP հասցեն fail2ban «sshd» բանտից հանելու համար:
Sudo fail2ban-client set sshd unbanip IP-ADDRESS
Ի վերջո, դուք կարող եք ստուգել «sshd» բանտի կարգավիճակը՝ օգտագործելով ստորև նշված հրամանը: Դուք կտեսնեք, որ IP հասցեն հեռացվել է:
sudo fail2ban-client status sshd
Եզրակացություն
Շնորհավորում եմ: Դուք ավարտել եք fail2ban-ի տեղադրումը Ubuntu 24.04 սերվերի վրա: Դուք նաև սովորել եք Fail2ban-ի կազմաձևման հիմնական կոնֆիգուրացիան, ներառյալ գլոբալ կոնֆիգուրացիայի և բանտի կարգավորումը: Վերջապես, դուք նաև սովորել եք «fail2ban-client» հրամանի հիմնական կիրառությունը՝ ստուգելու fail2ban կարգավիճակը, բանտի կարգավիճակը, բանտի կոնֆիգուրացիաները և արգելել և հանել IP հասցեները ձեռքով: