ວິທີການຊິ້ງຂໍ້ມູນເອກະສານ/ໄດເລກະທໍລີໂດຍໃຊ້ Rsync ກັບພອດ SSH ທີ່ບໍ່ໄດ້ມາດຕະຖານ
ມື້ນີ້, ພວກເຮົາຈະມາລົມກັນກ່ຽວກັບວິທີການຊິ້ງຂໍ້ມູນເອກະສານໂດຍໃຊ້ rsync ກັບພອດ SSH ທີ່ບໍ່ໄດ້ມາດຕະຖານ. ທ່ານອາດຈະສົງໄສວ່າເປັນຫຍັງພວກເຮົາ ຈຳ ເປັນຕ້ອງໃຊ້ພອດ SSH ທີ່ບໍ່ໄດ້ມາດຕະຖານ? ມັນແມ່ນຍ້ອນເຫດຜົນດ້ານຄວາມປອດໄພ. ທຸກໆຄົນຮູ້ວ່າ 22 ແມ່ນພອດເລີ່ມຕົ້ນຂອງ SSH.
ດັ່ງນັ້ນ, ມັນ ຈຳ ເປັນທີ່ຈະຕ້ອງປ່ຽນເລກພອດເລີ່ມຕົ້ນຂອງ SSH ຂອງທ່ານໄປເປັນສິ່ງທີ່ແຕກຕ່າງກັນເຊິ່ງຍາກທີ່ຈະຄາດເດົາໄດ້. ໃນກໍລະນີດັ່ງກ່າວ, ທ່ານຈະປະສົມປະສານແຟ້ມເອກະສານ/ແຟ້ມຂໍ້ມູນຂອງທ່ານກັບເຄື່ອງແມ່ຂ່າຍ Remote ຂອງທ່ານໄດ້ແນວໃດ? ບໍ່ມີຄວາມກັງວົນໃຈ, ມັນບໍ່ແມ່ນເລື່ອງຍາກເລີຍ. ນີ້ພວກເຮົາຈະເຫັນວິທີການຊິ້ງຂໍ້ມູນແຟ້ມແລະແຟ້ມໂດຍໃຊ້ rsync ກັບພອດ SSH ທີ່ບໍ່ແມ່ນມາດຕະຖານ.
ຄືກັບທີ່ທ່ານອາດຈະຮູ້, rsync, ເຊິ່ງເອີ້ນກັນວ່າ Remote Sync, ແມ່ນເຄື່ອງມືທີ່ໄວ, ມີຄວາມຄ່ອງແຄ້ວແລະມີປະສິດຕິພາບສູງທີ່ສາມາດໃຊ້ເພື່ອ ສຳ ເນົາແລະຊິ້ງຂໍ້ມູນແຟ້ມເອກະສານ/ລາຍຊື່ຈາກທ້ອງຖິ່ນຫາທ້ອງຖິ່ນ, ຫລືທ້ອງຖິ່ນເຖິງໂຮດຫ່າງໄກສອກຫຼີກ. ສໍາລັບລາຍລະອຽດເພີ່ມເຕີມກ່ຽວກັບ rsync, ກວດເບິ່ງ ໜ້າ man:
# man rsync
ຫຼືເບິ່ງຄູ່ມືແນະ ນຳ ທີ່ຜ່ານມາຂອງພວກເຮົາຈາກລິງຂ້າງລຸ່ມນີ້.
<
ປ່ຽນ Port SSH ໄປທີ່ Port ທີ່ບໍ່ແມ່ນມາດຕະຖານ
ດັ່ງທີ່ພວກເຮົາທຸກຄົນຮູ້, ໂດຍຄ່າເລີ່ມຕົ້ນ rsync ໃຊ້ພອດ SSH ຕັ້ງ 22 ເພື່ອຊິ້ງຂໍ້ມູນແຟ້ມເອກະສານຕ່າງໆໃນທ້ອງຖິ່ນເຖິງໂຮດຫ່າງໄກສອກຫຼີກແລະກົງກັນຂ້າມ. ພວກເຮົາຄວນປ່ຽນແປງພອດ SSH ຂອງເຄື່ອງແມ່ຂ່າຍຫ່າງໄກສອກຫຼີກເພື່ອຮັດ ແໜ້ນ ຄວາມປອດໄພ.
ເພື່ອເຮັດສິ່ງນີ້, ເປີດແລະແກ້ໄຂເອກະສານການຕັ້ງຄ່າ SSH/etc/ssh/sshd_config:
# vi /etc/ssh/sshd_config
ຊອກຫາເສັ້ນຕໍ່ໄປນີ້. ຄວາມບໍ່ລົງລອຍກັນແລະປ່ຽນເລກທ່າເຮືອທີ່ທ່ານເລືອກ. ຂ້າພະເຈົ້າແນະ ນຳ ໃຫ້ທ່ານເລືອກເລກໃດທີ່ຍາກທີ່ຈະຄາດເດົາໄດ້.
ຮັບປະກັນວ່າທ່ານ ກຳ ລັງໃຊ້ຕົວເລກທີ່ເປັນເອກະລັກເຊິ່ງບໍ່ໄດ້ຖືກ ນຳ ໃຊ້ໂດຍບໍລິການທີ່ມີຢູ່ແລ້ວ. ກວດເບິ່ງບົດຂຽນ netstat ນີ້ເພື່ອຈະຮູ້ວ່າມີການບໍລິການໃດທີ່ໃຊ້ພອດ TCP/UDP.
ຍົກຕົວຢ່າງ, ຢູ່ນີ້ຂ້ອຍໃຊ້ ໝາຍ ເລກພອດ 1431.
[...] Port 1431 [...]
ບັນທຶກແລະປິດແຟ້ມ.
ໃນລະບົບທີ່ອີງໃສ່ RPM ເຊັ່ນ RHEL, CentOS, ແລະ Scientific Linux 7, ທ່ານ ຈຳ ເປັນຕ້ອງອະນຸຍາດໃຫ້ພອດ ໃໝ່ ຜ່ານ firewall ຫຼື router ຂອງທ່ານ.
# firewall-cmd --add-port 1431/tcp # firewall-cmd --add-port 1431/tcp --permanent
ໃນ RHEL/CentOS/Scientific Linux 6 ແລະສູງກວ່າ, ທ່ານຍັງຄວນປັບປຸງການອະນຸຍາດ selinux ເພື່ອອະນຸຍາດໃຫ້ພອດ.
# iptables -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 1431 -j ACCEPT # semanage port -a -t ssh_port_t -p tcp 1431
ສຸດທ້າຍ, ເລີ່ມການບໍລິການ SSH ເພື່ອມີຜົນຕໍ່ການປ່ຽນແປງ.
# systemctl restart sshd [On SystemD] OR # service sshd restart [On SysVinit]
ຕອນນີ້ໃຫ້ພວກເຮົາເບິ່ງວິທີການຊິງໄຟລ໌ໂດຍໃຊ້ rsync ກັບພອດທີ່ບໍ່ແມ່ນມາດຕະຖານ.
ວິທີການ Rsync ກັບ Port SSH ທີ່ບໍ່ແມ່ນມາດຕະຖານ
ດໍາເນີນການຄໍາສັ່ງຕໍ່ໄປນີ້ຈາກປາຍເພື່ອ sync ໄຟລ໌/ແຟ້ມຕ່າງໆໂດຍໃຊ້ Rsync ກັບພອດ ssh ທີ່ບໍ່ແມ່ນມາດຕະຖານ.
# rsync -arvz -e 'ssh -p <port-number>' --progress --delete [email :/path/to/remote/folder /path/to/local/folder
ສຳ ລັບຈຸດປະສົງຂອງບົດແນະ ນຳ ນີ້, ຂ້ອຍຈະ ນຳ ໃຊ້ສອງລະບົບ.
IP Address: 192.168.1.103 User name: tecmint Sync folder: /backup1
Operating System: Ubuntu 14.04 Desktop IP Address: 192.168.1.100 Sync folder: /home/sk/backup2
ໃຫ້ພວກເຮົາຮວບຮວມເນື້ອໃນຂອງໂຟນເດີ /backup1
ຂອງເຄື່ອງແມ່ຂ່າຍຫ່າງໄກສອກຫຼີກໄປຫາໂຟນເດີລະບົບທ້ອງຖິ່ນຂອງຂ້ອຍ /home/sk/backup2/
.
$ sudo rsync -arvz -e 'ssh -p 1431' --progress --delete [email :/backup1 /home/sk/backup2
[email 's password: receiving incremental file list backup1/ backup1/linux-headers-4.3.0-040300-generic_4.3.0-040300.201511020949_amd64.deb 752,876 100% 13.30MB/s 0:00:00 (xfr#1, to-chk=2/4) backup1/linux-headers-4.3.0-040300_4.3.0-040300.201511020949_all.deb 9,676,510 100% 12.50MB/s 0:00:00 (xfr#2, to-chk=1/4) backup1/linux-image-4.3.0-040300-generic_4.3.0-040300.201511020949_amd64.deb 56,563,302 100% 11.26MB/s 0:00:04 (xfr#3, to-chk=0/4) sent 85 bytes received 66,979,455 bytes 7,050,477.89 bytes/sec total size is 66,992,688 speedup is 1.00.
ໃຫ້ພວກເຮົາກວດເບິ່ງເນື້ອໃນຂອງໂຟນເດີ /backup1/
ໃນເຊີຟເວີຫ່າງໄກສອກຫຼີກ.
$ sudo ls -l /backup1/
total 65428 -rw-r--r-- 1 root root 9676510 Dec 9 13:44 linux-headers-4.3.0-040300_4.3.0-040300.201511020949_all.deb -rw-r--r-- 1 root root 752876 Dec 9 13:44 linux-headers-4.3.0-040300-generic_4.3.0-040300.201511020949_amd64.deb -rw-r--r-- 1 root root 56563302 Dec 9 13:44 linux-image-4.3.0-040300-generic_4.3.0-040300.201511020949_amd64.deb
ດຽວນີ້, ໃຫ້ພວກເຮົາກວດເບິ່ງເນື້ອໃນຂອງໂຟນເດີ /backup2/
ຂອງລະບົບທ້ອງຖິ່ນ.
$ ls /home/sk/backup2/
backup1
ດັ່ງທີ່ທ່ານເຫັນໃນຜົນໄດ້ຮັບຂ້າງເທິງ, ເນື້ອໃນຂອງລະຫັດ /backup1/
ໄດ້ຖືກຄັດລອກໄປທີ່ລະບົບລະບົບທ້ອງຖິ່ນຂອງຂ້ອຍ/ລະຫັດ/home/sk/backup2/.
ກວດສອບເນື້ອໃນຂອງໂຟນເດີ /backup1/
:
$ ls /home/sk/backup2/backup1/
linux-headers-4.3.0-040300_4.3.0-040300.201511020949_all.deb linux-image-4.3.0-040300-generic_4.3.0-040300.201511020949_amd64.deb linux-headers-4.3.0-040300-generic_4.3.0-040300.201511020949_amd64.deb
ເບິ່ງ, ທັງລະບົບແຟ້ມຂອງລະບົບຫ່າງໄກສອກຫຼີກແລະທ້ອງຖິ່ນມີເອກະສານດຽວກັນ.
ສະຫຼຸບ
ການຊິ້ງຂໍ້ມູນແຟ້ມເອກະສານ/ແຟ້ມໂດຍໃຊ້ Rsync ກັບ SSH ບໍ່ພຽງແຕ່ງ່າຍດາຍ, ແຕ່ຍັງມີວິທີການທີ່ໄວແລະປອດໄພ. ຖ້າທ່ານຢູ່ເບື້ອງຫລັງ firewall ທີ່ ຈຳ ກັດພອດ 22, ບໍ່ຕ້ອງກັງວົນເລີຍ. ພຽງແຕ່ປ່ຽນພອດທີ່ຕັ້ງໄວ້ຕອນຕົ້ນແລະຊິ້ງຂໍ້ມູນແຟ້ມຄືກັບໂປຼແກຼມສົ່ງເສີມ.