Temos Archyvai: Tinklas

Bazinė Debian Linux SSH serverio apsauga

SSH autentikacija be slaptažodžio

Savo kompiuteryje sugeneruojame privatų ir viešą raktą:

ssh-keygen -t rsa -b 4096 -C "user@server"

~/.ssh kataloge bus sukurti privatus ir viešas raktai (atitinkamai id_rsa ir id_rsa.pub failai).

Sugeneruotą viešą raktą įrašome į serverio vartotojo ~/.ssh/authorized_keys failą.

Bandome jungtis prie serverio ir, jei sėkmingai prisijungiame be slaptažodžio, redaguojame /etc/ssh/sshd_config failą ir išjungiame galimybę prisijungti su slaptažodžiu:

PasswordAuthentication no

Debian, systemd ir žurnalai

Debian 12 neturi /var/log/auth.log failo, sshd logus galima skaityti systemd journalctl priemonės pagalba:

sudo journalctl -u ssh.service

Išvalome logus su šia komanda:

sudo journalctl --rotate --vacuum-time=1s

ufw ugniasienės konfigūracija

sudo apt install ufw
sudo ufw default deny incoming
sudo ufw default allow outgoing
sudo ufw allow ssh
sudo ufw enable
sudo ufw status

fail2ban instaliacija ir konfigūracija

sudo apt install fail2ban python3-systemd #Debian 12 bugas - fail2ban automatiškai neįrašo python3-systemd paketo, kuris yra būtinas, nes Debian 12 neturi /var/log/auth.log failo, tad fail2ban neveikia kol nėra įrašomas python3-systemd, kuris leidžia fail2ban skaityti systemd žurnalus

Sukuriame /etc/fail2ban/jail.local failą su tokiu turiniu:

[DEFAULT]
backend = systemd
bantime  = 24h
findtime  = 120m
maxretry = 3
banaction = ufw
banaction_allports = ufw
port = 0:65535

[sshd]
mode = aggressive
enabled = true

Perkrauname fail2ban servisą ir patikriname ar viskas veikia:

sudo systemctl restart fail2ban
sudo systemctl status fail2ban

Jei viskas padaryta tvarkingai ir serveris yra atviras internetui, jau po poros minučių ufw status komanda pradės rodyti užblokuotus ip adresus:

Samba share prijungimas prie Linux kliento

Problematika: prie Linux kompiuterio (kliento) norima prijungti prieinamą Samba share.

Sprendimas:

  1. Įdiegti cifs-utils paketą (pilnoje Slackware instaliacijoje jisai jau yra).
  2. mkdir /mnt/sambashare
  3. Sukurti /root/smbslapt failą su tokiu turiniu:
    user=sambavartotojas
    password=sambavartotojoslaptazodis
  4. Įvykdyti komandą id vartotojas, kur vartotojas – Linux kliento vartotojas, kuriam bus suteiktos rašymo teisės prie prijungto Samba share (aišku, jei serveris leidžia). Pasižymėti id ir gid reikšmes.
  5. Prie /etc/fstab failo pridėti tokią eilutę:
//192.168.8.110/ofisas /mnt/sambashare cifs credentials=/root/smbslapt,uid=1000,gid=100 0 0

kur 192.168.8.110 – Samba serverio IP adresas, ofisas – serverio eksportuojamo share pavadinimas, 1000 ir 100 – uid ir gid reikšmės iš 4 žingsnio.

Patikrinimui įvykdom mount /mnt/sambashare komandą.

Jei perkrovus kompiuterį Samba share nėra prijungiamas automatiškai, tai vyksta tikriausiai dėl to, kad klientas bando prijungti Sambos share dar prieš baigęs inicializuoti tinklą. To sprendimai gali būti įvairūs, priklausomai nuo Linux distribucijos. Aš su Slackware tą išsprendžiu primityviai – prie /etc/fstab eilutės opcijų pridedu noauto (kad automatiškai veltui nebūtų bandoma užmountinti):

//192.168.8.110/ofisas /mnt/sambashare cifs credentials=/root/smbslapt,noauto,uid=1000,gid=100 0 0

ir prie /etc/rc.d/rc.local pridedu tokias eilutes:

sleep 5
mount /mnt/sambashare

Tokiu būdu užlaikome sistemos įkrovą 5 sekundėm, tinklas inicializuojasi ir tada prijungiam Samba share.

ZTE MF286R DNS nustatymai

Įsigijau šiuo metu Telios kartu su nešiojamuoju internetu parduodamą 4G maršrutizatorių ZTE MF286R. Pirmas į akis kritęs dalykas buvo tas, kad jis neleidžia keisti/neturi DNS nustatymų. Tai nėra priimtina, nes valdau savo DNS serverį, kurį naudoju kaip pirmą apsaugos liniją nuo reklamų, šlamšto, p0rnografijos ir kitų nepageidaujamų tinklapių namų tinkle. Laimei, ši problema yra nesunkiai išsprendžiama.

DNS serveriu naudoju Pi-hole, kuris turi integruotą DHCP serverio funkcionalumą (t. y. gali skirstyti IP adresus vietinio tinklo įrenginiams). Pi-hole padarius tinklo DHCP serveriu, jis taps ir tinklo DNS serveriu. Tad, pirma, išjungiam DHCP funkcionalumą ZTE maršrutizatoriuje (1 pav.):

1 pav. Išjungiam DHCP serverį ZTE MF286R maršrutizatoriuje.

Antra, įjungiam Pi-hole DHCP serverį (2 pav.):

2 pav. Įjungiam DHCP serverį Pi-hole nustatymuose

Štai ir viskas.

Prisijungimas prie Windows nuotolinio darbalaukio iš Linux sistemos FreeRDP pagalba

xfreerdp /u:vartotojas /d:domenas /p:slaptažodis /v:ip_adresas /f /smart-sizing /network:lan

Kur:

  • vartotojas: Windows sistemos vartotojo vardas;
  • slaptažodis: Windows sistemos vartotojo slaptažodis;
  • domenas: nurodomas domenas. Jei kompiuteris nepriklauso domenui – visą /d parametrą praleidžiame;
  • ip_adresas: Windows kompiuterio IP adresas (pvz. 192.168.8.115);
  • /f – sesiją paleidžiame pilno ekrano režimu;
  • /smart-sizing – pritaiko nuotolinį darbalaukį prie lango dydžio;
  • /network – tinklo tipas, su opcija lan – automatiškai įjungiami reiklesni nuotolinio darbalaukio efektai. Variantai: modem|broadband|broadband-low|broadband-high|wan|lan|auto.

Iš pilno ekrano režimo galima išeiti paspaudus Ctrl+Alt+Enter.

Huawei B525 4G maršrutizatorius – keisti DNS nustatymų nebegalima?

Prieš porą dienų atnaujinus turimą B525s-23a 4G ruterį į software version 81.191.13.00.1134, Web UI version 81.100.31.02.1134, paaiškėjo, kad paslėptas būdas pakeisti DNS serverius nustojo veikti:

DNS nustatymų nebėra

Po trumpo tyrinėjimo su naršyklės developer įrankiais, galima nusiraminti – DNS nustatymai vis dar čia (paslėpti, žinoma). Jiems parodyti keliaujame į Router -> DHCP, spaudžiame F12 ir įvedame į developerio pultą:

$('#dhcp_dns').show();

Spaudžiame enter ir nustatymai grįžo:

Vėl keičiame DNS nustatymus ant savojo Huawei B525

Išbandyta su Firefox, Chrome ir Chromium paremta Edge naršyklėmis.