ວິທີການຮັບປະກັນການບໍລິການເຄືອຂ່າຍໂດຍໃຊ້ TCP Wrappers ໃນ Linux
ໃນບົດຄວາມນີ້ພວກເຮົາຈະອະທິບາຍວ່າເຄື່ອງຫໍ່ຂອງ TCP ແມ່ນຫຍັງແລະວິທີການຕັ້ງຄ່າໃຫ້ພວກມັນຖືກຕັ້ງຄ່າກັບໄຟວໍ.
ໃນເລື່ອງນີ້, ທ່ານສາມາດຄິດເຖິງເຄື່ອງມືນີ້ເປັນມາດຕະການຄວາມປອດໄພສູງສຸດ ສຳ ລັບລະບົບຂອງທ່ານ. ໂດຍການໃຊ້ໂປແກຼມປ້ອງກັນໄຟວໍແລະ TCP, ແທນທີ່ຈະເປັນທີ່ພໍໃຈຂອງກັນແລະກັນ, ທ່ານຈະຮັບປະກັນວ່າເຄື່ອງແມ່ຂ່າຍຂອງທ່ານບໍ່ຢູ່ໃນຈຸດລົ້ມເຫຼວ.
ເຂົ້າໃຈ hosts.allow ແລະ hosts.deny
ເມື່ອການຮ້ອງຂໍຂອງເຄືອຂ່າຍເຂົ້າເຖິງເຄື່ອງແມ່ຂ່າຍຂອງທ່ານ, ເຄື່ອງຫໍ່ TCP ໃຊ້ hosts.allow
ແລະ hosts.deny
(ໃນ ຄຳ ສັ່ງນັ້ນ) ເພື່ອ ກຳ ນົດວ່າລູກຄ້າຄວນຈະໄດ້ຮັບອະນຸຍາດໃຫ້ໃຊ້ບໍລິການໃດ ໜຶ່ງ ບໍ? .
ໂດຍຄ່າເລີ່ມຕົ້ນ, ເອກະສານເຫຼົ່ານີ້ແມ່ນຫວ່າງເປົ່າ, ມີ ຄຳ ເຫັນທັງ ໝົດ, ຫຼືບໍ່ມີ. ດັ່ງນັ້ນ, ທຸກສິ່ງທຸກຢ່າງແມ່ນອະນຸຍາດໃຫ້ຜ່ານຊັ້ນຫໍ່ຂອງ TCP ແລະລະບົບຂອງທ່ານຍັງປ່ອຍໃຫ້ເພິ່ງພາເພີງເພື່ອປ້ອງກັນຢ່າງເຕັມທີ່. ເນື່ອງຈາກສິ່ງນີ້ບໍ່ຕ້ອງການ, ຍ້ອນເຫດຜົນທີ່ພວກເຮົາໄດ້ກ່າວໃນບົດແນະ ນຳ, ໃຫ້ແນ່ໃຈວ່າມີທັງສອງໄຟລ໌:
# ls -l /etc/hosts.allow /etc/hosts.deny
syntax ຂອງທັງສອງໄຟລ໌ແມ່ນຄືກັນ:
<services> : <clients> [: <option1> : <option2> : ...]
ຢູ່ໃສ,
< ການບໍລິການແມ່ນບັນຊີລາຍຊື່ຂອງການບໍລິການທີ່ແຍກອອກໂດຍຈຸດ ໝາຍ, ກົດລະບຽບໃນປະຈຸບັນຄວນຖືກ ນຳ ໃຊ້. ລູກຄ້າ
ທ່ານອາດຈະຕ້ອງຈື່ໄວ້ວ່າກົດລະບຽບທີ່ອະນຸຍາດໃຫ້ເຂົ້າໃຊ້ບໍລິການທີ່ໃຫ້ຢູ່ໃນ /etc/hosts.allow
ມີຄວາມ ສຳ ຄັນຕໍ່ກົດລະບຽບໃນ /etc/hosts.deny
ມັນ. ນອກຈາກນັ້ນ, ຖ້າສອງກົດລະບຽບ ນຳ ໃຊ້ກັບການບໍລິການດຽວກັນ, ພຽງແຕ່ກົດລະບຽບ ທຳ ອິດຈະຖືກ ນຳ ມາພິຈາລະນາ.
ແຕ່ໂຊກບໍ່ດີ, ບໍລິການເຄືອຂ່າຍທັງ ໝົດ ບໍ່ຮອງຮັບການ ນຳ ໃຊ້ເຄື່ອງຫໍ່ຂອງ TCP. ເພື່ອ ກຳ ນົດວ່າການບໍລິການໃດ ໜຶ່ງ ສະ ໜັບ ສະ ໜູນ ພວກເຂົາ, ເຮັດ:
# ldd /path/to/binary | grep libwrap
ຖ້າ ຄຳ ສັ່ງຂ້າງເທິງສົ່ງຄືນຜົນຜະລິດ, ມັນສາມາດຖືກຫໍ່ດ້ວຍ TCP. ຕົວຢ່າງຂອງສິ່ງນີ້ແມ່ນ sshd ແລະ vsftpd, ດັ່ງທີ່ເຫັນຢູ່ນີ້:
ວິທີການໃຊ້ TCP Wrappers ເພື່ອ ຈຳ ກັດການເຂົ້າເຖິງການບໍລິການ
ເມື່ອທ່ານແກ້ໄຂ /etc/hosts.allow
ແລະ /etc/hosts.deny
, ໃຫ້ແນ່ໃຈວ່າທ່ານເພີ່ມເສັ້ນ ໃໝ່ ໂດຍກົດ Enter ຫຼັງຈາກສາຍທີ່ບໍ່ຫວ່າງສຸດທ້າຍ.
ເພື່ອອະນຸຍາດໃຫ້ເຂົ້າໃຊ້ SSH ແລະ FTP ເທົ່ານັ້ນ 192.168.0.102 ແລະ localhost ແລະປະຕິເສດທຸກຢ່າງອື່ນ, ເພີ່ມສອງເສັ້ນນີ້ຢູ່ໃນ /etc/hosts.deny
:
sshd,vsftpd : ALL ALL : ALL
ແລະສາຍຕໍ່ໄປນີ້ໃນ /etc/hosts.allow
:
sshd,vsftpd : 192.168.0.102,LOCAL
# # hosts.deny This file contains access rules which are used to # deny connections to network services that either use # the tcp_wrappers library or that have been # started through a tcp_wrappers-enabled xinetd. # # The rules in this file can also be set up in # /etc/hosts.allow with a 'deny' option instead. # # See 'man 5 hosts_options' and 'man 5 hosts_access' # for information on rule syntax. # See 'man tcpd' for information on tcp_wrappers # sshd,vsftpd : ALL ALL : ALL
# # hosts.allow This file contains access rules which are used to # allow or deny connections to network services that # either use the tcp_wrappers library or that have been # started through a tcp_wrappers-enabled xinetd. # # See 'man 5 hosts_options' and 'man 5 hosts_access' # for information on rule syntax. # See 'man tcpd' for information on tcp_wrappers # sshd,vsftpd : 192.168.0.102,LOCAL
ການປ່ຽນແປງເຫຼົ່ານີ້ເກີດຂື້ນທັນທີໂດຍບໍ່ ຈຳ ເປັນຕ້ອງມີການເລີ່ມຕົ້ນ ໃໝ່.
ໃນຮູບຕໍ່ໄປນີ້ທ່ານສາມາດເຫັນຜົນຂອງການລຶບ ຄຳ ສັບ LOCAL
ຈາກເສັ້ນສຸດທ້າຍ: server FTP ຈະບໍ່ສາມາດໃຊ້ ສຳ ລັບ localhost. ຫຼັງຈາກທີ່ພວກເຮົາເພີ່ມຕົວແທນແທນ, ການບໍລິການຈະມີໃຫ້ອີກ.
ເພື່ອອະນຸຍາດໃຫ້ບໍລິການທັງ ໝົດ ເປັນເຈົ້າພາບບ່ອນທີ່ຊື່ມີ example.com
, ຕື່ມແຖວນີ້ໃສ່ hosts.allow
:
ALL : .example.com
ແລະເພື່ອປະຕິເສດການເຂົ້າ vsftpd ກັບເຄື່ອງໃນວັນທີ 10.0.1.0/24, ຕື່ມສາຍນີ້ໃນ hosts.deny
:
vsftpd : 10.0.1.
ໃນສອງຕົວຢ່າງສຸດທ້າຍ, ສັງເກດຈຸດທີ່ຢູ່ໃນຕອນເລີ່ມຕົ້ນແລະຕອນສຸດທ້າຍຂອງບັນຊີລູກຄ້າ. ມັນຖືກໃຊ້ເພື່ອຊີ້ບອກ“ ເຈົ້າພາບທັງ ໝົດ ແລະ/ຫຼືລູກຄ້າບ່ອນທີ່ຊື່ຫລື IP ມີສະຕິງນັ້ນ”.
ບົດຂຽນນີ້ມີປະໂຫຍດຫຍັງຕໍ່ທ່ານບໍ? ທ່ານມີ ຄຳ ຖາມຫຼື ຄຳ ເຫັນຫຍັງບໍ? ຮູ້ສຶກບໍ່ເສຍຄ່າທີ່ຈະຝາກຈົດ ໝາຍ ໃຫ້ພວກເຮົາໂດຍໃຊ້ແບບຟອມ ຄຳ ເຫັນຂ້າງລຸ່ມນີ້.