Linux serwerleri üçin 25 howpsuzlyk maslahaty


Hemmeler Linux-yň ygtybarlydygyny aýdýarlar we birneme giňeltmäge razy boldular (Bu jedelli temalar). Şeýle-de bolsa, “Linux” -da içerki howpsuzlyk modeli bar. Has ygtybarly ulgam döretmäge kömek edip biljek zerurlygyňyza görä sazlamaly we düzmeli. Linux dolandyrmak has kyn, ýöne has çeýeligi we konfigurasiýa opsiýalaryny hödürleýär.

Önümçilikde ulgamy hakerleriň we krakerleriň elinden almak Ulgam dolandyryjysy üçin kyn mesele. Bu, Linux gutusyny nädip goramaly ýa-da Linux gutusyny berkitmek bilen baglanyşykly ilkinji makalamyz. Bu ýazgyda Linux ulgamyňyzy goramak üçin 25 sany peýdaly maslahatlary we usullary düşündireris. Aşakdaky maslahatlar we maslahatlar ulgamyňyzy goramak üçin käbirlerine kömek eder diýip umyt edýärin.

1. Fiziki ulgamyň howpsuzlygy

CD/DVD, Daşarky enjamlar, BIOS-daky disketadan ýüklemegi öçürmek üçin BIOS-y sazlaň. Ondan soň, BIOS parolyňyzy işlediň we ulgamyňyzyň fiziki girişini çäklendirmek üçin GRUB-ny parol bilen goraň.

  1. Linux serwerlerini goramak üçin GRUB parolyny düzüň

2. Disk bölümleri

Betbagtçylyk ýüze çykan halatynda has ýokary maglumat howpsuzlygyny almak üçin dürli bölümleriň bolmagy möhümdir. Dürli bölümleri döretmek arkaly maglumatlary bölüp we toparlap bolýar. Garaşylmadyk hadysa ýüze çykanda, diňe şol bölümiň maglumatlary zaýalanar, beýleki bölümlerdäki maglumatlar saklanýar. Aşakdaky bölümleriň bolmalydygyna we üçünji tarap programmalarynyň/opt astynda aýratyn faýl ulgamlarynda gurulmalydygyna göz ýetiriň.

/
/boot
/usr
/var
/home
/tmp
/opt

3. Gowşaklygy azaltmak üçin paketleri minimuma eltiň

Hakykatdanam her dürli hyzmatlaryň gurulmagyny isleýärsiňizmi? Paketlerdäki gowşaklyklardan gaça durmak üçin biderek paketleri gurmakdan saklanmak maslahat berilýär. Bu, bir hyzmatdan ýüz öwürmek, beýleki hyzmatlaryň ylalaşygyna sebäp bolup biljek töwekgelçiligi azaldyp biler. Gowşaklygy azaltmak üçin serwerden islenmeýän hyzmatlary tapyň we aýyryň. 3-nji derejeli işleýän hyzmatlary bilmek üçin chkconfig buýrugyny ulanyň.

# /sbin/chkconfig --list |grep '3:on'

Islenilmeýän hyzmatyň işleýändigini bilenden soň, aşakdaky buýrugy ulanyp öçüriň.

# chkconfig serviceName off

Ulgamda gurnalan ähli paketleri sanamak we aşakdaky buýruk bilen aýyrmak üçin “yum” ýa-da “apt-get” gurallary ýaly RPM paket dolandyryjysyny ulanyň.

# yum -y remove package-name
# sudo apt-get remove package-name

  1. 5 chkconfig buýruk mysallary
  2. RPM buýruklarynyň 20 amaly mysaly
  3. Linux paket dolandyryşy üçin 20 Linux YUM buýrugy
  4. Paket dolandyryşyny dolandyrmak üçin 25 APT-GET we APT-CACHE buýruklary

4. Diňleýiş tor portlaryny barlaň

“Netstat” torlaýyn buýrugynyň kömegi bilen ähli açyk portlary we baglanyşykly programmalary görüp bilersiňiz. Aboveokarda aýdyşym ýaly ulgamdan ähli islenmeýän ulgam hyzmatlaryny öçürmek üçin chkconfig buýrugyny ulanyň.

# netstat -tulpn

  1. Linux-da tor dolandyryşy üçin 20 Netstat buýrugy

5. Howpsuz gabyny (SSH) ulanyň

Telnet we rlogin protokollary, howpsuzlygy bozýan şifrlenen formatda däl-de, ýönekeý tekst ulanýar. SSH serwer bilen aragatnaşyk wagtynda şifrlemek tehnologiýasyny ulanýan ygtybarly protokol.

Zerur bolmasa hiç haçan göni kök hökmünde girmäň. Buýruklary ýerine ýetirmek üçin “sudo” ulanyň. sudo/etc/sudoers faýlynda görkezilýär, şeýle hem VI redaktorda açylýan “visudo” kömekçi programmasy bilen redaktirläp bolýar.

Şeýle hem, has ýokary derejeli port belgisi bilen deslapky SSH 22 port belgisini üýtgetmek maslahat berilýär. Esasy SSH konfigurasiýa faýlyny açyň we ulanyjylaryň girmegini çäklendirmek üçin aşakdaky parametrleri düzüň.

# vi /etc/ssh/sshd_config
PermitRootLogin no
AllowUsers username
Protocol 2

  1. SSH serwerini goramak we goramak üçin 5 iň oňat tejribe

6. Ulgamy täzeläň

Elýeterli bolanda ulgamy elmydama iň soňky goýberilen ýamalar, howpsuzlyk düzedişleri we ýadro bilen täzeläň.

# yum updates
# yum check-update

7. “Lockdown Cronjobs”

Kronyň özüne mahsus aýratynlygy bar, bu ýerde kimiň işlejekdigini we kimiň işlemek islemejekdigini kesgitlemäge mümkinçilik berýär. Bu /etc/cron.allow we /etc/cron.deny atly faýllaryň ulanylmagy bilen dolandyrylýar. Kron ulanyp, ulanyjyny gulplamak üçin, diňe cron.deny-da ulanyjy atlaryny goşuň we ulanyja cron.allow faýlynda kron goşmagyny işletmäge rugsat beriň. Usershli ulanyjylary kron ulanmakdan öçürmek isleseňiz, “HEMMESI” setirini cron.deny faýlyna goşuň.

# echo ALL >>/etc/cron.deny

  1. Linux-da 11 kron meýilnama mysallary

8. Gözlemek üçin USB taýagyny öçüriň

Ulanyjylaryň maglumatlary ogurlamakdan goramak we goramak üçin ulgamlarda USB taýagyny ulanmagyny çäklendirmek isleýänimiz köp bolýar. '/Etc/modprobe.d/no-usb' faýly dörediň we aşakdaky setiri goşmak USB ammaryny tapmaz.

install usb-storage /bin/true

9. SELinux açyň

Howpsuzlyk-Giňeldilen Linux (SELinux), ýadroda berilýän hökmany gözegçilik dolandyryş mehanizmidir. SELinux-y öçürmek, ulgamdan howpsuzlyk mehanizmini aýyrmagy aňladýar. Aýyrmazdan ozal iki gezek ünsli pikirleniň, ulgamyňyz internete birikdirilen we halk köpçüligi tarapyndan elýeterli bolsa, onda bu barada has köp pikirleniň.

SELinux üç esasy iş usulyny üpjün edýär we olar.

  1. Güýçlendirmek: Bu enjamda SELinux howpsuzlyk syýasatyny işledýän we ýerine ýetirýän adaty tertip.
  2. Rugsat beriji: Bu tertipde SELinux ulgamdaky howpsuzlyk syýasatyny ýerine ýetirmez, diňe duýduryşlary bellige alyň we hasaba alyň. Bu re SIM SELinux bilen baglanyşykly meseleleri çözmek üçin örän peýdaly.
  3. Öçürilen: SELinux öçürildi.

SELinux re modeiminiň häzirki ýagdaýyny system-config-selinux, getenforce ýa-da sestatus buýruklaryny ulanyp, buýruk setirinden görüp bilersiňiz.

# sestatus

Öçürilen bolsa, aşakdaky buýrugy ulanyp SELinux-y işlediň.

# setenforce enforcing

Şeýle hem, ony işledip ýa-da öçürip boljak “/ etc/selinux/config” faýlyndan dolandyryp bolýar.

10. KDE/GNOME iş stollaryny aýyryň

Bagyşlanan LAMP serweriňizde KDE ýa-da GNOME ýaly X Window iş stollaryny işletmegiň zerurlygy ýok. Serweriň we öndürijiligiň howpsuzlygyny ýokarlandyrmak üçin olary aýyryp ýa-da öçürip bilersiňiz. Simpleönekeý öçürmek üçin '/ etc/inittab' faýly açyň we iş derejesini 3-e belläň. Ulgamdan doly aýyrmak isleseňiz aşakdaky buýrugy ulanyň.

# yum groupremove "X Window System"

11. IPv6-ny öçüriň

IPv6 protokolyny ulanmaýan bolsaňyz, ony ýapmaly, sebäbi programmalaryň ýa-da syýasatlaryň köpüsi IPv6 protokoly talap etmeýär we häzirki wagtda serwerde talap edilmeýär. Ulgam konfigurasiýa faýlyna giriň we ony öçürmek üçin aşakdaky setirleri goşuň.

# vi /etc/sysconfig/network
NETWORKING_IPV6=no
IPV6INIT=no

12. Ulanyjylaryň köne parollary ulanmagyny çäklendiriň

Ulanyjylaryň şol bir köne parollary ulanmagyna rugsat bermeýän bolsaňyz, bu gaty peýdaly. Köne parol faýly/etc/security/opasswd-da ýerleşýär. Muňa PAM modulyny ulanmak arkaly ýetip bolýar.

RHEL/CentOS/Fedora astynda '/etc/pam.d/system-auth' faýly açyň.

# vi /etc/pam.d/system-auth

Ubuntu/Debian/Linux Mint-iň aşagynda '/etc/pam.d/common-password' faýly açyň.

# vi /etc/pam.d/common-password

Aşakdaky setiri auth bölümine goşuň.

auth        sufficient    pam_unix.so likeauth nullok

Ulanyjynyň soňky 5 parolyny gaýtadan ulanmagyna ýol bermezlik üçin parol bölümine aşakdaky setiri goşuň.

password   sufficient    pam_unix.so nullok use_authtok md5 shadow remember=5

Serwer tarapyndan diňe soňky 5 parol ýatda saklanýar. Soňky 5 köne parolyň haýsydyr birini ulanjak bolsaňyz, ýalňyş bolarsyňyz.

Password has been already used. Choose another.

13. Ulanyjynyň parolynyň möhletini nädip barlamaly

Linux-da ulanyjynyň parollary şifrlenen formatda '/ etc/shadow' faýlynda saklanýar. Ulanyjynyň parolyň möhletiniň gutarandygyny barlamak üçin chage buýrugyny ulanmaly. Parolyň möhletiniň gutarnykly maglumatlary, soňky paroly üýtgetmek senesi bilen bilelikde görkezilýär. Bu jikme-jiklikler ulanyjynyň parolyny haçan üýtgetmelidigini kesgitlemek üçin ulgam tarapyndan ulanylýar.

Bar bolan ulanyjynyň köne maglumatlaryny, möhleti we wagty ýaly görmek üçin aşakdaky buýrugy ulanyň.

#chage -l username

Islendik ulanyjynyň parol garramagyny üýtgetmek üçin aşakdaky buýrugy ulanyň.

#chage -M 60 username
#chage -M 60 -m 7 -W 7 userName

  1. -M Iň köp gün belläň
  2. -m Iň az gün sanyny belläň
  3. -W Duýduryş günleriniň sanyny düzüň

14. Hasaby el bilen gulplamak we açmak

Gulplamak we açmak aýratynlyklary gaty peýdaly, ulgamdan hasaby aýyrmagyň ýerine bir hepde ýa-da bir aýlap gulplap bilersiňiz. Belli bir ulanyjyny gulplamak üçin aşakdaky buýrugy ulanyp bilersiňiz.

# passwd -l accountName

Bellik: Gulplanan ulanyjy diňe kök ulanyjy üçin elýeterlidir. Gulplamak, şifrlenen paroly (!) Setir bilen çalyşmak arkaly amala aşyrylýar. Kimdir biri bu hasaby ulanyp ulgama girjek bolsa, aşakdaky ýaly ýalňyşlyk alar.

# su - accountName
This account is currently not available.

Gulplanan hasaby açmak ýa-da oňa girmek üçin buýrugy ulanyň. Bu kodlanan parol bilen (!) Setirini aýyrar.

# passwd -u accountName

15. Güýçli parollary ýerine ýetirmek

Birnäçe ulanyjy ýumşak ýa-da gowşak parol ulanýar we paroly sözlük esasly ýa-da zalym güýç bilen hüjüm edilip bilner. “Pam_cracklib” moduly, PAM (Plugable Autentifikasiýa Modullary) modulynda bar, bu ulanyjyny güýçli parol bellemäge mejbur eder. Aşakdaky faýly redaktor bilen açyň.

Şeýle hem okaň:

# vi /etc/pam.d/system-auth

Karz parametrlerini ulanyp setir goşuň (lkredit, ucredit, dkredit we/ýa-da degişlilikde kiçi harplar, baş harplar, sanlar we başgalar)

/lib/security/$ISA/pam_cracklib.so retry=3 minlen=8 lcredit=-1 ucredit=-2 dcredit=-2 ocredit=-1

16. Iptables-i işlediň (Firewall)

Serwerleriňize rugsatsyz girmegi üpjün etmek üçin Linux firewall-y işletmek maslahat berilýär. Iptables-de düzgünleri girýän, çykýan we ugradýan paketlere süzüň. Aýratyn udp/tcp port belgisinde rugsat bermek we inkär etmek üçin çeşmesini we barjak salgysyny kesgitläp bileris.

  1. IPTables esasy gollanma we maslahatlar

17. Inittab-da Ctrl + Alt + Delete öçüriň

Linux paýlamalarynyň köpüsinde, CTRL-ALT-DELETE basmak, ulgamyňyzy gaýtadan açmak üçin zerur bolar. Şeýlelik bilen, kimdir biri ýalňyşlyk bilen muny etse, iň bolmanda önümçilik serwerlerinde bu opsiýany işletmek gowy pikir däl.

Bu/etc/inittab faýlynda kesgitlenýär, şol faýla ýakyndan göz aýlasaňyz, aşakda meňzeş bir setir görersiňiz. Dymmaklyk boýunça setir düşündiriş berilmeýär. Muny düşündirmeli. Bu aýratyn yzygiderlilik duýduryşy ulgamy ýapar.

# Trap CTRL-ALT-DELETE
#ca::ctrlaltdel:/sbin/shutdown -t3 -r now

18. Boş parollar üçin hasaplary barlamak

Boş paroly bolan islendik hasap, webdäki islendik adama rugsatsyz girmek üçin açylandygyny we Linux serweriniň howpsuzlygynyň bir bölegidigini aňladýar. Şeýlelik bilen, ähli hasaplaryň güýçli parollarynyň bardygyna we hiç kimiň ygtyýarly girişiniň ýokdugyna göz ýetirmeli. Boş parol hasaplary howpsuzlyk töwekgelçiligi bolup, aňsatlyk bilen döwüp bolýar. Boş parol bilen hasaplaryň bardygyny ýa-da ýokdugyny barlamak üçin aşakdaky buýrugy ulanyň.

# cat /etc/shadow | awk -F: '($2==""){print $1}'

19. Girişden ozal SSH Bannerini görkeziň

SSH tassyklanylmazdan ozal käbir howpsuzlyk duýduryşlary bolan kanuny banner ýa-da howpsuzlyk bannerleri bolmak has gowy pikir. Şeýle bannerleri goýmak üçin indiki makalany okaň.

  1. Ulanyjylara SSH duýduryş habaryny görkeziň

20. Ulanyjy işjeňligine gözegçilik etmek

Köp ulanyjy bilen iş salyşýan bolsaňyz, her ulanyjynyň alyp barýan işleri we amallary barada maglumatlary ýygnamak we soňraky döwürde ýa-da haýsydyr bir öndürijilik, howpsuzlyk meselesi bar bolsa derňemek möhümdir. Useröne ulanyjynyň işjeňligi baradaky maglumatlary nädip gözegçilikde saklap we ýygnap bileris.

Ulgamda ulanyjylaryň işine we proseslerine gözegçilik etmek üçin “psacct” we “acct” atly iki sany peýdaly gural bar. Bu gurallar ulgam fonunda işleýär we Apache, MySQL, SSH, FTP we ş.m. ýaly hyzmatlar tarapyndan sarp edilýän ulgamda we ulanyjyda her bir ulanyjynyň işini yzygiderli yzarlaýar, gurmak, konfigurasiýa we ulanmak barada has giňişleýin maglumat üçin aşakdaky url-a giriň.

  1. Psacct ýa-da acct buýruklary bilen ulanyjy işjeňligine gözegçilik ediň

21. surnallary yzygiderli gözden geçiriň

Aýratyn gündelik serwerinde surnallary süýşüriň, bu girýänleriň ýerli gündelikleri aňsat üýtgetmeginiň öňüni alyp biler. Aşakda umumy Linux adaty gündelik faýllarynyň ady we ulanylyşy:

  1. /var/log/message - systemhli ulgam surnallary ýa-da häzirki işjeňlik ýazgylary bar ýerinde.
  2. /var/log/auth.log - Hakyky tassyklama ýazgylary.
  3. /var/log/kern.log - ernadro gündeligi.
  4. /var/log/cron.log - Crond surnallary (kron işi).
  5. /var/log/maillog - Poçta serweriniň gündeligi.
  6. /var/log/boot.log - Ulgam ýükleme gündeligi.
  7. /var/log/mysqld.log - MySQL maglumat bazasynyň serweriniň gündelik faýly.
  8. /var/log/safe - Hakyky tanamak gündeligi.
  9. /var/log/utmp ýa-da/var/log/wtmp: Giriş ýazgylary faýly.
  10. /var/log/yum.log: logurnal faýllary.

22. Möhüm faýl ätiýaçlyk nusgasy

Önümçilik ulgamynda möhüm faýllaryň ätiýaçlyk nusgasyny almaly we olary betbagtçylyklaryň öwezini dolmak üçin uzakda ýa-da uzakda saklamaly.

23. NIC baglanyşygy

NIC baglanyşygynda iki görnüşli re modeim bar, baglanyşyk interfeýsinde bellemeli.

  1. re=im=0 - Robin tegelek
  2. re=im=1 - Işjeň we ätiýaçlyk

NIC baglanyşygy, şowsuzlygyň bir nokadyndan gaça durmaga kömek edýär. NIC baglanyşykda, iki ýa-da has köp Network Ethernet Kartlaryny birleşdirýäris we beýleki serwerler bilen gürleşmek üçin IP adresi belläp biljek ýekeje wirtual interfeýs ýasaýarys. Bir NIC Kart işlemedik ýa-da haýsydyr bir sebäbe görä elýeterli bolmadyk ýagdaýynda ulgamymyz elýeterli bolar.

24. Diňe okalýan görnüşde saklaň/ýükläň

Linux ýadrosy we oňa degişli faýllar, okamak-ýazmak ýaly tertip boýunça/boot katalogynda. Diňe okamak üçin üýtgetmek, möhüm ýük faýllarynyň rugsatsyz üýtgedilmegi töwekgelçiligini azaldar. Munuň üçin “/ etc/fstab” faýly açyň.

# vi /etc/fstab

Aşakdaky setiri goşuň, saklaň we ýapyň.

LABEL=/boot     /boot     ext2     defaults,ro     1 2

Geljekde ýadrosy täzelemeli bolsaňyz, okamak-ýazmak üçin üýtgetmäni täzeden düzmelidigiňizi ýadyňyzdan çykarmaň.

25. ICMP ýa-da ýaýlym islegine ähmiýet bermäň

Ping ýa-da ýaýlym islegini äsgermezlik etmek üçin “/etc/sysctl.conf” faýlyna aşakdaky setir goşuň.

Ignore ICMP request:
net.ipv4.icmp_echo_ignore_all = 1

Ignore Broadcast request:
net.ipv4.icmp_echo_ignore_broadcasts = 1

Aşakdaky buýrugy işledip, täze sazlamalary ýa-da üýtgeşmeleri ýükläň

#sysctl -p

Aboveokardaky sanawdaky möhüm bir howpsuzlygy ýa-da berkitme maslahatyny sypdyran bolsaňyz ýa-da sanawa goşulmaly başga bir maslahatyňyz bar bolsa. Teswirleriňizi teswirler gutusyna goýmagyňyzy haýyş edýäris. TecMint, teswirleri, teklipleri we gowulaşdyrmak üçin diskussiýa almak bilen hemişe gyzyklanýar.