Linux-da SSH hyzmatyny üpjün etmek üçin Port Knocking-i nädip ulanmaly
Port Knocking, diňe kanuny ulanyjylara serwerde işleýän hyzmata girmäge rugsat bermek bilen porta girişi dolandyrmagyň elli usulydyr. Şeýle bir işleýär welin, baglanyşyk synanyşyklarynyň dogry yzygiderliligi edilende, diwar diwary ýapylan porty begenç bilen açýar.
Portuň kakylmagynyň logikasy SSH hyzmatyny üpjün etmekdir. Görkeziş maksatlary üçin Ubuntu 18.04 ulanarys.
1-nji ädim: Düwmäni guruň we sazlaň
Başlamak üçin Linux ulgamyňyza giriň we görkezilişi ýaly knockd daemon guruň.
$ sudo apt install knockd
Gurlandan soň, vim buýruk setiri redaktory bilen knockd.conf konfigurasiýasyny açyň.
$ sudo vim /etc/knockd.conf
Bellenen konfigurasiýa faýly aşakdaky ýaly görünýär.
[openSSH]
bölüminde, deslapky kakyş yzygiderliligini - 7000,8000,9000 - başga bir zada üýtgetmeli. Sebäbi bu gymmatlyklar eýýäm belli we ulgamyňyzyň howpsuzlygyna zyýan berip biler.
Synag maksady bilen, bahalary 10005, 10006, 10007-e belledik. Bu SSH portuny müşderi ulgamyndan açmak üçin ulanyljak yzygiderlilik.
Üçünji setirde - buýrukdan başlap, /sbin/iptables
buýrugyndan soň we INPUT-dan öň
. -A
-I
üýtgediň.
Iň soňunda bolsa, [closeSSH]
bölüminiň aşagynda deslapky yzygiderliligi islän islegiňize üýtgediň. Bu, ulanyjy gutaransoň we serwerden çykandan soň SSH birikmesini ýapmak üçin ulanyljak yzygiderlilikdir.
Ine, doly konfigurasiýamyz.
Doneerine ýetireniňizden soň, üýtgeşmeleri saklaň we çykyň.
Üýtgetmeli başga bir konfigurasiýa/etc/default/knockd. Textene bir gezek tekst redaktoryňyzy ulanyp açyň.
$ sudo vim /etc/default/knockd
START_KNOCKD=0
setirini tapyň. Ondan çykaryň we bahany 1
edip düzüň.
Ondan soň, KNOCKD_OPTS=- i eth1
setirine geçiň we deslapky eth1
bahasyny ulgamyňyzyň işjeň ulgam interfeýsi bilen çalşyň. Tor interfeýsiňizi barlamak üçin diňe ifconfig buýrugyny işlediň.
Ulgamymyz üçin enp0s3 işjeň ulgam kartasydyr.
Doly konfigurasiýa görkezilişi ýaly.
Üýtgeşmeleri ýazdyryň we çykyň.
Soňra görkezilişi ýaly “knockd daemon” -y başlaň we işlediň.
$ sudo systemctl start knockd $ sudo systemctl enable knockd
Dykylan daemonyň ýagdaýyny barlamak üçin buýrugy işlediň:
$ sudo systemctl status knockd
2-nji ädim: Firewall-da SSH 22-nji porty ýapyň
Çekilen hyzmatyň maksady ssh hyzmatyna rugsat bermek ýa-da ret etmek bolany üçin, diwar diwaryndaky ssh portuny ýaparys. Firstöne ilki bilen, UFW gorag diwarynyň ýagdaýyny barlap göreliň.
$ sudo ufw status numbered
Çykyşdan, SSH 22-nji portuň degişlilikde 5 we 9 belgili IPv4 we IPv6 protokollarynda açykdygyny görüp bileris.
Bu iki düzgüni görkezilişi ýaly ýok etmeli, iň ýokary bahadan başlap - 9.
$ sudo ufw delete 9 $ sudo ufw delete 5
Indi serwere uzakdan girjek bolsaňyz, görkezilişi ýaly birikme gutarmak säwligi bolar.
3-nji ädim: SSH serwerine birikmek üçin bir müşderini sazlaň
Iň soňky ädimde, müşderini düzeris we ilki serwerde düzen nokat yzygiderliligimizi iberip, girmäge synanyşarys.
Firstöne ilki bilen serwerde edişiňiz ýaly knockd daemon guruň.
$ sudo apt install knockd
Gurmak gutaransoň, görkezilen sintaksisiň kömegi bilen nokat yzygiderliligini iberiň
$ knock -v server_ip knock_sequence
Biziň ýagdaýymyzda, bu terjime:
$ knock -v 192.168.2.105 10005 10006 10007
Siziň yzygiderliligiňize baglylykda bizdäki ýaly önüm çykarmaly. Bu, urmak synanyşyklarynyň üstünlikli bolandygyny görkezýär.
Bu pursatda, SSH ulanyp, serwere üstünlikli girip bilýän ýagdaýyňyz bolmaly.
Uzakdaky serwerde öz işiňizi ýerine ýetireniňizden soň, ýapylýan nokat yzygiderliligini iberip, SSH portuny ýapyň.
$ knock -v 192.168.2.105 10007 10006 10005
Serwere girmek synanyşyklary görkezilişi ýaly şowsuz bolar.
Bu, serweriňizde SSH hyzmatyny üpjün etmek üçin port kakylmagyny nädip ulanmalydygy barada bu gollanmany jemleýär. Has gowy we aňsat çemeleşme, SSH açar jübütlerini ulanyp, parol SSH tassyklamasyny düzmek bolar. Bu, açar saklanýan serwer bilen diňe şahsy açary bolan ulanyjynyň tassyklap biljekdigini kepillendirýär.