25 Mga Tip sa Pagtig-a sa Seguridad alang sa mga Server sa Linux


Ang tanan nag-ingon nga ang Linux luwas pinaagi sa default ug miuyon sa pipila nga pag-uswag (Kini ang mga hilisgutan nga debate). Bisan pa, ang Linux adunay in-built nga modelo sa seguridad sa lugar nga default. Kinahanglan nga i-tune kini ug ipasibo sumala sa imong panginahanglan nga makatabang sa paghimo nga mas luwas nga sistema. Ang Linux mas lisud pagdumala apan nagtanyag og dugang nga pagka-flexible ug mga kapilian sa pag-configure.

Ang pagsiguro sa usa ka sistema sa usa ka produksiyon gikan sa mga kamot sa mga hacker ug crackers usa ka mahagiton nga buluhaton alang sa usa ka System Administrator. Kini ang among una nga artikulo nga may kalabutan sa Unsaon Pag-secure ang kahon sa Linux o Pagpagahi sa Linux Box. Sa kini nga post Ipasabut namon ang 25 nga mapuslanon nga mga tip ug trick aron masiguro ang imong sistema sa Linux. Paglaum, sa ubos nga mga tip ug mga limbong makatabang kanimo nga madugangan aron masiguro ang imong sistema.

1. Seguridad sa Pisikal nga Sistema

I-configure ang BIOS aron ma-disable ang booting gikan sa CD/DVD, External Devices, Floppy Drive sa BIOS. Sunod, i-enable ang password sa BIOS ug panalipdan usab ang GRUB gamit ang password aron mapugngan ang pisikal nga pag-access sa imong sistema.

  1. Itakda ang GRUB Password aron Panalipdan ang mga Server sa Linux

2. Mga Partisyon sa Disk

Importante nga adunay lain-laing mga partisyon aron makakuha og mas taas nga seguridad sa datos kung adunay mahitabo nga katalagman. Pinaagi sa paghimo og lain-laing mga partisyon, ang datos mahimong mabulag ug ma-grupo. Kung mahitabo ang usa ka wala damha nga aksidente, ang datos ra sa kana nga partisyon ang madaot, samtang ang datos sa ubang mga partisyon naluwas. Siguruha nga kinahanglan nimo nga adunay nagsunod nga lahi nga mga partisyon ug siguruha nga ang mga aplikasyon sa ikatulo nga partido kinahanglan nga ma-install sa lainlaing mga sistema sa file sa ilawom sa /opt.

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

3. Pagmenos sa mga Pakete aron Mamenosan ang Pagkahuyang

Gusto ba nimo nga ma-install ang tanan nga klase sa serbisyo?. Girekomenda nga likayan ang pag-install sa wala’y pulos nga mga pakete aron malikayan ang mga kahuyang sa mga pakete. Mahimong mapamenos niini ang risgo nga ang pagkompromiso sa usa ka serbisyo mahimong mosangpot sa pagkompromiso sa ubang mga serbisyo. Pangitaa ug kuhaa o i-disable ang dili gusto nga mga serbisyo gikan sa server aron maminusan ang pagkahuyang. Gamita ang command 'chkconfig' aron mahibal-an ang mga serbisyo nga nagdagan sa runlevel 3.

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

Kung nahibal-an nimo ang bisan unsang dili gusto nga serbisyo nga nagdagan, pag-disable kini gamit ang mosunud nga mando.

# chkconfig serviceName off

Gamita ang tagdumala sa pakete sa RPM sama sa yum o apt-get nga mga himan aron ilista ang tanan nga na-install nga mga pakete sa usa ka sistema ug tangtangon kini gamit ang mosunud nga mando.

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

  1. 5 chkconfig Mga Ehemplo sa Sugo
  2. 20 Praktikal nga Ehemplo sa RPM Commands
  3. 20 Linux YUM Commands para sa Linux Package Management
  4. 25 APT-GET ug APT-CACHE Commands sa Pagdumala sa Package Management

4. Susiha ang Listening Network Ports

Uban sa tabang sa 'netstat' networking command mahimo nimong tan-awon ang tanan nga bukas nga mga pantalan ug kaubang mga programa. Sama sa akong giingon sa ibabaw gamita ang 'chkconfig' nga mando aron ma-disable ang tanan nga dili gusto nga serbisyo sa network gikan sa sistema.

# netstat -tulpn

  1. 20 Netstat Commands para sa Network Management sa Linux

5. Gamita ang Secure Shell(SSH)

Ang mga protocol sa Telnet ug rlogin naggamit sa yano nga teksto, dili naka-encrypt nga format nga mao ang mga paglapas sa seguridad. Ang SSH usa ka luwas nga protocol nga naggamit sa teknolohiya sa pag-encrypt sa panahon sa komunikasyon sa server.

Ayaw pag-login direkta isip gamut gawas kung gikinahanglan. Gamita ang sudo aron ipatuman ang mga sugo. Ang sudo gipiho sa/etc/sudoers file mahimo usab nga i-edit gamit ang visudo utility nga nagbukas sa VI editor.

Girekomenda usab nga usbon ang default nga numero sa port sa SSH 22 nga adunay uban pang mas taas nga lebel nga numero sa port. Ablihi ang nag-unang SSH configuration file ug paghimo sa pipila ka mosunod nga mga parameter aron mapugngan ang mga tiggamit sa pag-access.

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

  1. 5 Best Practices sa Secure and Protection SSH Server

6. Padayon nga updated ang System

Kanunay nga ipadayon ang pag-update sa sistema sa labing bag-ong mga patch sa pagpagawas, pag-ayo sa seguridad ug kernel kung kini magamit.

# yum updates
# yum check-update

7. Lockdown Cronjobs

Ang Cron adunay kaugalingon nga built-in nga bahin, diin gitugotan niini nga mahibal-an kung kinsa ang mahimo, ug kinsa ang dili gusto nga magpadagan sa mga trabaho. Gikontrol kini pinaagi sa paggamit sa mga file nga gitawag og /etc/cron.allow ug /etc/cron.deny. Aron ma-lock ang usa ka user gamit ang cron, idugang lang ang mga user name sa cron.deny ug aron tugotan ang usa ka user sa pagpadagan sa cron add sa cron.allow file. Kung gusto nimong i-disable ang tanan nga tiggamit sa paggamit sa cron, idugang ang linya nga 'TANAN' sa cron.deny file.

# echo ALL >>/etc/cron.deny

  1. 11 Mga Ehemplo sa Pag-iskedyul sa Cron sa Linux

8. I-disable ang USB stick sa Detect

Daghang mga higayon nga mahitabo nga gusto namong pugngan ang mga tiggamit sa paggamit sa USB stick sa mga sistema aron mapanalipdan ug masiguro ang datos gikan sa pagpangawat. Paghimo og file '/etc/modprobe.d/no-usb' ug ang pagdugang sa ubos nga linya dili makamatikod sa USB storage.

install usb-storage /bin/true

9. I-on ang SELinux

Ang Security-Enhanced Linux (SELinux) kay usa ka compulsory access control security mechanism nga gihatag sa kernel. Ang pag-disable sa SELinux nagpasabut sa pagtangtang sa mekanismo sa seguridad gikan sa sistema. Hunahunaa kaduha pag-ayo sa dili pa tangtangon, kung ang imong sistema gilakip sa internet ug gi-access sa publiko, unya hunahunaa ang uban pa bahin niini.

Naghatag ang SELinux og tulo ka sukaranang mga paagi sa operasyon ug sila.

  1. Pagpatuman: Kini ang default mode nga makapahimo ug makapatuman sa polisiya sa seguridad sa SELinux sa makina.
  2. Permissive: Niini nga paagi, ang SELinux dili mopatuman sa polisiya sa seguridad sa sistema, magpasidaan lang ug mag-log sa mga aksyon. Kini nga mode mapuslanon kaayo sa termino sa pag-troubleshoot sa mga isyu nga may kalabotan sa SELinux.
  3. Bawal: Ang SELinux gipalong.

Mahimo nimong tan-awon ang kasamtangan nga status sa SELinux mode gikan sa command line gamit ang 'system-config-selinux', 'getenforce' o 'sestatus' commands.

# sestatus

Kung kini disabled, i-enable ang SELinux gamit ang mosunod nga command.

# setenforce enforcing

Mahimo usab kini madumala gikan sa '/etc/selinux/config' nga file, diin mahimo nimo kini ma-enable o ma-disable.

10. Kuhaa ang KDE/GNOME Desktops

Dili kinahanglan nga magpadagan sa X Window desktop sama sa KDE o GNOME sa imong gipahinungod nga LAMP server. Mahimo nimong tangtangon o i-disable kini aron madugangan ang seguridad sa server ug pasundayag. Aron ma-disable ang yano nga pag-abli sa file '/ etc/inittab' ug itakda ang run level sa 3. Kung gusto nimo nga tangtangon kini sa hingpit gikan sa sistema gamita ang sugo sa ubos.

# yum groupremove "X Window System"

11. I-off ang IPv6

Kung wala ka naggamit ug IPv6 protocol, nan kinahanglan nimo nga i-disable kini tungod kay kadaghanan sa mga aplikasyon o mga palisiya wala kinahanglana ang IPv6 protocol ug sa pagkakaron wala kini gikinahanglan sa server. Adto sa network configuration file ug idugang ang mosunod nga mga linya aron dili kini ma-disable.

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

12. Limitahi ang mga Gumagamit sa Paggamit sa Daang mga Password

Kini mapuslanon kaayo kung gusto nimo nga dili tugutan ang mga tiggamit sa paggamit sa parehas nga daan nga mga password. Ang daan nga password file nahimutang sa /etc/security/opasswd. Kini makab-ot pinaagi sa paggamit sa PAM module.

Ablihi ang '/etc/pam.d/system-auth' file ubos sa RHEL/CentOS/Fedora.

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

Ablihi ang '/etc/pam.d/common-password' file ubos sa Ubuntu/Debian/Linux Mint.

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

Idugang ang mosunod nga linya sa 'auth' nga seksyon.

auth        sufficient    pam_unix.so likeauth nullok

Idugang ang mosunud nga linya sa seksyon nga 'password' aron dili tugutan ang usa ka tiggamit sa paggamit pag-usab sa katapusan nga 5 nga password sa iyang.

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

Ang katapusan nga 5 nga mga password lamang ang mahinumduman sa server. Kung gisulayan nimo ang paggamit sa bisan unsang katapusan nga 5 nga daan nga mga password, makakuha ka usa ka sayup nga sama.

Password has been already used. Choose another.

13. Unsaon Pagsusi sa Password Expiration sa User

Sa Linux, ang mga password sa user gitipigan sa '/etc/shadow' file sa naka-encrypt nga format. Aron masusi ang pag-expire sa password sa user, kinahanglan nimo gamiton ang 'chage' nga sugo. Nagpakita kini og impormasyon sa mga detalye sa pag-expire sa password uban sa katapusang petsa sa pagbag-o sa password. Kini nga mga detalye gigamit sa sistema sa pagdesisyon kung kanus-a kinahanglan usbon sa usa ka user ang iyang password.

Aron matan-aw ang bisan unsang naa na nga kasayuran sa pagkatigulang sa tiggamit sama sa petsa ug oras sa pag-expire, gamita ang mosunud nga mando.

#chage -l username

Aron mausab ang pagkatigulang sa password sa bisan kinsa nga tiggamit, gamita ang mosunod nga sugo.

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

  1. -M Itakda ang kinatas-ang gidaghanon sa mga adlaw
  2. -m Itakda ang minimum nga gidaghanon sa mga adlaw
  3. -W Itakda ang gidaghanon sa mga adlaw sa pasidaan

14. I-lock ug I-unlock ang Account sa Manwal

Ang mga bahin sa pag-lock ug pag-unlock mapuslanon kaayo, imbes nga tangtangon ang usa ka account gikan sa sistema, mahimo nimong i-lock kini sulod sa usa ka semana o usa ka bulan. Aron ma-lock ang usa ka piho nga tiggamit, mahimo nimong gamiton ang pagsunod nga mando.

# passwd -l accountName

Mubo nga sulat: Ang naka-lock nga tiggamit magamit gihapon alang sa gamut nga tiggamit lamang. Ang pag-lock gihimo pinaagi sa pag-ilis sa naka-encrypt nga password sa usa ka (!) string. Kung adunay usa nga mosulay sa pag-access sa sistema gamit kini nga account, makakuha siya usa ka sayup nga parehas sa ubos.

# su - accountName
This account is currently not available.

Aron ma-unlock o ma-enable ang access sa usa ka naka-lock nga account, gamita ang command as. Kini magtangtang sa (!) string nga adunay naka-encrypt nga password.

# passwd -u accountName

15. Pagpatuman sa Mas Lig-on nga mga Password

Ubay-ubay nga tiggamitan ang naggamit ug humok o huyang nga mga password ug ang ilang password mahimong ma-hack gamit ang diksyonaryo nga gibase sa o brute-force attacks. Ang 'pam_cracklib' module anaa sa PAM (Pluggable Authentication Modules) module stack nga magpugos sa user sa pagtakda og lig-on nga mga password. Ablihi ang mosunod nga file gamit ang editor.

Basaha usab:

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

Ug idugang ang linya gamit ang mga parametro sa kredito ingon (lcredit, ucredit, dcredit ug/o ocredit matag usa nga lower-case, upper-case, digit ug uban pa)

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

16. Enable Iptables (Firewall)

Labi nga girekomenda nga hatagan ang Linux firewall aron masiguro ang dili awtorisado nga pag-access sa imong mga server. Ibutang ang mga lagda sa iptables sa pagsala sa umaabot, mogawas ug pagpasa nga mga pakete. Mahimo natong ipiho ang tinubdan ug destinasyon nga adres nga itugot ug ipanghimakak sa piho nga udp/tcp port number.

  1. Basic nga IPTables Giya ug Mga Tip

17. I-disable ang Ctrl+Alt+Delete sa Inittab

Sa kadaghanan sa mga distribusyon sa Linux, ang pagpindot sa 'CTRL-ALT-DELETE' magdala sa imong sistema sa proseso sa pag-reboot. Mao nga, dili maayo nga ideya nga mahimo kini nga kapilian labing menos sa mga server sa produksiyon, kung adunay usa nga nasayop nga nagbuhat niini.

Kini gihubit sa '/etc/inittab' file, kung imong tan-awon pag-ayo ang file nga imong makita ang usa ka linya nga susama sa ubos. Pinaagi sa default nga linya wala gikomento. Kinahanglan natong i-comment kini. Kining partikular nga key sequence signaling magsira sa usa ka sistema.

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

18. Pagsusi sa mga Account alang sa Walay mga Password

Ang bisan unsang account nga adunay walay sulod nga password nagpasabut nga kini giablihan alang sa dili awtorisado nga pag-access sa bisan kinsa sa web ug kini usa ka bahin sa seguridad sulod sa usa ka server sa Linux. Busa, kinahanglan nimong sigurohon nga ang tanan nga mga account adunay lig-on nga mga password ug walay bisan kinsa nga adunay bisan unsang awtorisado nga pag-access. Ang walay sulod nga password nga mga account kay mga risgo sa seguridad ug dali ra ma-hack. Aron masusi kung adunay bisan unsang mga account nga adunay walay sulod nga password, gamita ang mosunod nga sugo.

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

19. Ipakita ang SSH Banner Sa Dili pa Mag-login

Kanunay nga mas maayo nga ideya nga adunay usa ka ligal nga bandila o mga banner sa seguridad nga adunay pipila nga mga pasidaan sa seguridad sa wala pa ang pag-authenticate sa SSH. Aron mabutang ang ingon nga mga banner basaha ang mosunod nga artikulo.

  1. Ipakita ang SSH Warning Message sa mga Gumagamit

20. Pag-monitor sa mga Kalihokan sa Gumagamit

Kung nakig-atubang ka sa daghang mga tiggamit, nan hinungdanon ang pagkolekta sa kasayuran sa matag kalihokan sa tiggamit ug mga proseso nga gigamit nila ug pag-analisar kini sa ulahi nga panahon o kung adunay bisan unsang klase sa pasundayag, mga isyu sa seguridad. Apan unsaon namo pagmonitor ug pagkolekta sa impormasyon sa mga kalihokan sa user.

Adunay duha ka mapuslanon nga himan nga gitawag og 'psacct' ug 'acct' gigamit alang sa pagmonitor sa mga kalihokan ug proseso sa user sa usa ka sistema. Kini nga mga himan nagdagan sa background sa sistema ug padayon nga nagsubay sa matag kalihokan sa tiggamit sa usa ka sistema ug mga kapanguhaan nga gigamit sa mga serbisyo sama sa Apache, MySQL, SSH, FTP, ug uban pa.

  1. I-monitor ang Kalihokan sa Gumagamit gamit ang psacct o acct Commands

21. Regular nga Ribyuha ang mga Log

Ibalhin ang mga troso sa dedikado nga log server, kini mahimong makapugong sa mga manunulong nga daling mausab ang lokal nga mga troso. Sa ubos mao ang Common Linux default log files nga ngalan ug ang ilang paggamit:

  1. /var/log/message – Diin ang tibuok sistema nga mga log o kasamtangang mga log sa kalihokan anaa.
  2. /var/log/auth.log – Authentication logs.
  3. /var/log/kern.log – Mga log sa kernel.
  4. /var/log/cron.log – Crond logs (cron job).
  5. /var/log/maillog – Mga log sa mail server.
  6. /var/log/boot.log – System boot log.
  7. /var/log/mysqld.log – MySQL database server log file.
  8. /var/log/secure – Log sa panghimatuod.
  9. /var/log/utmp o /var/log/wtmp : File sa mga rekord sa pag-login.
  10. /var/log/yum.log: Yum log files.

22. Importante nga File Backup

Sa usa ka sistema sa produksiyon, gikinahanglan ang pagkuha sa importanteng mga file backup ug ibutang kini sa safety vault, hilit nga site o offsite para sa Disasters recovery.

23. NIC Bonding

Adunay duha ka matang sa mode sa NIC bonding, kinahanglan nga hisgutan sa bonding interface.

  1. mode=0 – Round Robin
  2. mode=1 – Aktibo ug Backup

Ang NIC Bonding makatabang kanato sa paglikay sa usa ka punto sa kapakyasan. Sa NIC bonding, among gi-bonding ang duha o daghan pa nga Network Ethernet Cards nga magkauban ug maghimo og usa ka virtual Interface diin kami maka-assign sa IP address aron makigsulti sa ubang mga server. Ang among network mahimong magamit kung adunay usa ka NIC Card nga nawala o wala magamit tungod sa bisan unsang hinungdan.

24. Ipadayon ang /boot isip read-only

Ang Linux kernel ug ang mga may kalabutan nga mga file naa sa/boot nga direktoryo nga sa default ingon read-write. Ang pagbag-o niini sa read-only makapakunhod sa risgo sa dili awtorisadong pagbag-o sa mga kritikal nga boot files. Aron mahimo kini, ablihi ang /etc/fstab nga file.

# vi /etc/fstab

Idugang ang mosunod nga linya sa ubos, i-save ug isira kini.

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

Palihug timan-i nga kinahanglan nimo nga i-reset ang pagbag-o sa pagbasa-sulat kung kinahanglan nimo nga i-upgrade ang kernel sa umaabot.

25. Ibaliwala ang ICMP o Broadcast Request

Idugang ang mosunod nga linya sa /etc/sysctl.conf nga file aron dili ibalewala ang ping o hangyo sa pagsibya.

Ignore ICMP request:
net.ipv4.icmp_echo_ignore_all = 1

Ignore Broadcast request:
net.ipv4.icmp_echo_ignore_broadcasts = 1

Pag-load sa bag-ong mga setting o pagbag-o, pinaagi sa pagpadagan sa pagsunod sa mando

#sysctl -p

Kung nasipyat ka sa bisan unsang importante nga tip sa seguridad o hardening sa listahan sa ibabaw, o aduna kay laing tip nga kinahanglang iapil sa listahan. Palihug ihulog ang imong mga komento sa among kahon sa komento. Ang TecMint kanunay nga interesado sa pagdawat sa mga komentaryo, mga sugyot ingon man usab sa panaghisgot alang sa kalamboan.