struktura katalog贸w linux

Struktura katalog贸w Linux

poradniki

Struktura katalog贸w Linux drzewo katalog贸w linux

header_wpis
W systemie GNU/Linux zaimplementowano hierarchiczn膮 (drzewiast膮) struktur臋 katalog贸w, kt贸ra jest do艣膰 艣ci艣le okre艣lona wg FHS (Filesystem Hierarchy Standard). Dzi臋ki takiemu podej艣ciu mo偶na utworzy膰 tyle katalog贸w, ile potrzeba do pogrupowania plik贸w w naturalny spos贸b. Dodatkowo ka偶dy u偶ytkownik mo偶e mie膰 sw贸j prywatny katalog przeznaczony na w艂asn膮 hierarchi臋
KatalogAngielska nazwa 藕r贸d艂owaOpis
/rootG艂贸wny katalog w systemach uniksowych zwany korzeniem (ang. root). Ca艂a struktura katalog贸w umiejscowiona jest w tym katalogu.
/bootboot processPliki programu rozruchowego
/binbinariesPodstawowe pliki wykonywalne dost臋pne dla wszystkich u偶ytkownik贸w
/devdevicesPliki urz膮dze艅
/etcet ceteraPliki konfiguracyjne. Dawniej znajdowa艂y si臋 tutaj r贸偶ne pliki nieprzynale偶膮ce do pozosta艂ych kategorii
/homehome directoryKatalogi domowe u偶ytkownik贸w
/liblibrariesBiblioteki program贸w i modu艂y j膮dra. Nowa wersja standardu definiuje r贸wnie偶 mo偶liwo艣膰 dodania katalog贸w dla innych architektur np. lib64 dla x86_64
/mntmount pointTymczasowy punkt montowania
/mediamediaPunkty montowa艅 dla pami臋ci zewn臋trznych
/opt/optionalDodatkowe oprogramowanie
/proc/processWirtualny system plik贸w informuj膮cy o stanie systemu
/root/Katalog domowy superu偶ytkownika root
/runruningInformacje o dzia艂aniu systemu od ostatniego jego uruchomienia
/sbinsystem binariesPliki wykonywalne do zarz膮dzania systemem
/srv/servedRzadko u偶ywany katalog zawieraj膮cy dane udost臋pniane cz臋sto tylko do odczytu przez system
/tmptemporaryPliki tymczasowe
/usruserDrugorz臋dowa hierarchia. Tutaj umiejscowione s膮 g艂贸wnie pliki wykonywalne u偶ytkownik贸w
/usr/bin/binaryJak w hierarchii pierwszorz臋dowej, ale nie wymagane do uruchomienia czy naprawy systemu
/usr/includeincludeStandardowe pliki nag艂贸wkowe
/usr/liblibraryJak w hierarchii pierwszorz臋dowej, ale nie wymagane do uruchomienia czy naprawy systemu
/usr/local/local dataTrzeciorz臋dowa hierarchia danych lokalnych
/usr/share/sharedDane wsp贸艂dzielone mi臋dzy architekturami
/usr/sbin/system binariesJak w hierarchii pierwszorz臋dowej, ale nie wymagane do uruchomienia czy naprawy systemu
/varvariableCz臋sto modyfikowane pliki np. logi, bazy danych
/var/cache/cachePliki pami臋ci podr臋cznej program贸w
/var/lock/lockPliki blokady zasob贸w b臋d膮cych w u偶yciu
/var/log/loggingLogi aplikacji
/var/mail/mailboxesSkrzynki pocztowe
Fail2Ban blokowanie atak贸w brute force instalacja i konfiguracja

Fail2Ban blokowanie atak贸w brute force instalacja i konfiguracja

poradniki

Fail2Ban blokowanie atak贸w brute force instalacja i konfiguracja

header_wpis

Fail2Ban to aplikacja, kt贸ra odpowiada za blokowanie podejrzanych, zako艅czonych niepowodzeniem pr贸b logowania si臋 do us艂ug 艣wiadczonych przez nasz serwer. Podsumowuj膮c zabezpiecza przed atakami typu brute force.
Fail2Ban zabezpiecza przed atakami typu brute force. Aplikacja opiera si臋 na analizie log贸w i wychwytywaniu nieautoryzowanych pr贸b logowania si臋 do r贸偶nego rodzaju us艂ug (np. ssh, smtp, pop3, imap itp.), w nast臋pstwie czego blokuje adres IP atakuj膮cego za pomoc膮 regu艂 iptables lub dodaj膮c wpis do pliku /etc/hosts.deny

Instalacja Fail2Ban

sudo apt update
sudo apt install fail2ban

Uruchamiamy Fail2Ban

sudo systemctl enable fail2ban
sudo systemctl start fail2ban

Konfiguracja Fail2Ban

sudo cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local
sudo nano /etc/fail2ban/jail.local
sudo cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local
sudo nano /etc/fail2ban/jail.local
Dodajemy nasz adres IP do wyj膮tk贸w
ignoreip = 127.0.0.1/8 ::1 192.168.1.0/24 192.168.1.120
Ustwiania czasu blokady ustawiamy w ten spos贸b oczywi艣cie warto艣ci mo偶emy zmieni膰 wed艂ug w艂asnego uznania
	
bantime  = 1d
findtime  = 10m
maxretry = 5
Blokada b艂臋dnych logowa艅 ssh
	
[sshd]
enabled   = true
maxretry  = 3
findtime  = 1d
bantime   = 1w
 
port    = ssh
logpath = %(sshd_log)s
backend = %(sshd_backend)s
Je偶eli chcemy otrzymywa膰 powiadomienia email o blokadach dodaje nast臋puj膮ce polecenia
	
action = %(action_mw)s
destemail = nasz_adres_email
sender = root@domena.pl
12 podstawowych polece艅 Linuksa dla pocz膮tkuj膮cych

12 podstawowych polece艅 Linuksa dla pocz膮tkuj膮cych

poradniki

12 podstawowych polece艅 Linuksa dla pocz膮tkuj膮cych

header_wpis

Poka偶 katalog roboczy.

Poka偶 katalog roboczy. Polecenie to wy艣wietla 艣cie偶k臋 katalogu w kt贸rym akurat pracujemy
pwd

Tworzenie katalogu

mkdir nazwa_katalogu

Wy艣wietlenie zawarto艣ci katalogu

ls
wy艣wietli nam wszystkie pliki wraz z uprawnieniami
ls -l

Przechodzenie mi臋ddzy katalogami

cd

Usu艅 pliki

rm nazwa_pliku

Kopiuj plik

cp nazwa_pliku

Przenie艣 plik

mv nazwa_pliku nowa_nazwa_pliku

Tworzenie pustego pliku

touch nazwa_pliku.txt

Zmiana uprawnie艅 do wykonania pliku

chmod +x nazwa_pliku

W艂膮cznie wy艂膮czenie komputera

W艂膮cznie wy艂膮czenie komputera
sudo shutdown paramtery
Natychmiastowe wy艂膮cznie komputera
sudo shutdown -h now

Ponowne uruchomienie restart

sudo shutdown -r
polecenie grep wyszukiwanie wyrazen w tekscie linux

Polecenie grep wyszukiwanie wyra偶e艅 w tek艣cie Linux

poradniki

Polecenie grep wyszukiwanie wyra偶e艅 w tek艣cie Linux

header_wpis
Narz臋dzie s艂u偶膮ce do wyszukiwania grep. Sk艂adnia polecenia jest nast臋puj膮ca:
grep [-opcje] wzorzec [plik lub 艣cie偶ka]

Polecenie grep

Najcz臋艣ciej u偶ywane opcje grep:

-i ignoruje wielko艣膰 liter
-r wyszukuje r贸wnie偶 w sub katalogach 艣cie偶ki
-l pokazuje nazwy plik贸w, w kt贸rych znajduje si臋 pasuj膮cy wzorzec
-n pokazuje lini臋, w kt贸rej wyst臋puje szukany wzorzec
-v pokazuje linie, kt贸re nie zawieraj膮 wzorca
-F traktuje szukany wzorzec, jako escapowany string
-E traktuje szukany wzorzec, jako rozszerzone wyra偶enie regularne
-e informuje, 偶e nast臋pny argument, jest wzorcem

grep -e '-wzorzec'

-c zwr贸ci nam liczb臋 pasuj膮cych fraz
-x zwr贸ci wynik, tylko i wy艂膮cznie, je偶eli pasuje ca艂a linia
-m[cyfra] przerwie wyszukiwanie, po znalezieniu pierwszych [cyfra] rezultat贸w

rep -m50 'error 35'

Znaki specjalne:

W celu skutecznego znalezienia fraz, kt贸re nas interesuj膮, niekt贸re znaki powinny by膰 escapeowane, s膮 to m.in.

; ' " ` # $ & * ? [ ] < >  { } \ | ( )

Escapeowania dokonujemy za pomoc膮 backslasha \, przyk艂adowo:

grep '125\*\*\*\*125' plik

pozwoli nam, na wyszukanie 125****125 w pliku. Co ciekawe, jeste艣my r贸wnie偶 w stanie, znale藕膰 to bez escapeowania, za pomoc膮 opcji -F, tj.

grep -F '125****125' plik

Szukanie listy element贸w:

Istnieje mo偶liwo艣膰 wyszukiwania listy znak贸w, za pomoc膮 [][1-9] da nam taki sam rezultat, jak [123456789][a-d] da nam taki sam rezultat, jak [abcd]

Je偶eli chcemy wyszuka膰 wyst臋powanie jakich艣 s艂贸w, mo偶emy skorzysta膰 z:

grep 'slowo_pierwsze\|slowo_drugie'

lub w jeszcze innej postaci:

grep 'Zam贸wienie numer \(1\|3\)'

kt贸re zwr贸ci nam wyst臋powanie fraz:
Zam贸wienie numer 1 lub Zam贸wienie numer 3

Apostrof, czy cudzys艂贸w?

Dobr膮 praktyk膮, jest u偶ywanie apostrof贸w, zamiast cudzys艂owu. Szukana fraza, w apostrofie traktowana jest jako string, natomiast w cudzys艂owie, jest interpretowana.
Najpro艣ciej, mo偶na to zobaczy膰 na przyk艂adzie:

echo "$(date)"

zwr贸ci nam dat臋, natomiast:

echo '$(date)'

zostanie potraktowane jako string.

Wyra偶enia regularne oraz 艂膮czenie polece艅:

Polecenie grep obs艂uguje r贸wnie偶 wyra偶enia regularne, przyk艂adowo, chcemy znale藕膰 adresy IP, wyst臋puj膮ce w pliku:

grep -E '[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}' plik

mo偶na r贸wnie偶 艂膮czy膰 grepa z innymi komendami, za pomoc膮 potoku:

tail -f acces.log | grep ' 200 '

powy偶sza linijka, poka偶e nam 鈥瀗a 偶ywo鈥, wszystkie wpisy, wpadaj膮ce z kodem 200.

Jak usunac GRUB-a z partycji EFI

Jak usun膮膰 GRUB-a z partycji EFI

poradniki

Jak usun膮膰 GRUB-a z partycji EFI

header_wpis
Partycja systemowa EFI to ma艂a partycja sformatowana w systemie plik贸w FAT 32 w urz膮dzeniu do przechowywania danych, kt贸re jest u偶ywane w komputerach zgodnych z interfejsem Unified Extensible Firmware Interface. Jest generowany automatycznie podczas instalacji systemu operacyjnego. Mieli艣my kilka system贸w operacyjnych Windows obok Linux, kt贸rego chcieli艣my potestowa膰 ale go usuneli艣my i chcemy zrobi膰 z porz膮dek.
Uruchamiamy nasz wiersz polece艅 z prawami administratora i wpisujemy
diskpart
Widzimy list臋 naszych dysk贸w z kt贸rej to musimy wybra膰 nasz dysk systemowy wpisuj膮c
sel nazwa_dysku
np
 sel Disk
Teraz listujemy czyli wy艣wietlamy list臋 wszystkich partycji na danym dysku
list vol
i wybieramy nasz partycj臋 EFI. Oznaczona b臋dzie jako System, system plik贸w FAT32 i 100MB. teraz musimy nadaj jej liter臋 dysku oczywi艣cie woln膮 偶eby nie by艂o nie mi艂ych niespodzianek
sel vol 2
assign letter=S:
Wychodzimi z diskpart poleceniem exit W CDM wpisujemy kolejno
cd /d S:
cd EFI
dir
Widzimy teraz ca艂膮 zawarto艣膰 naszego katalogu EFI. Chc膮c usun膮膰 niechciany katalog wpisujemy nast臋puj膮ce polecenie:
rmdir /s nazwa_katalogu
I ju偶 po wszystkim.
Generowanie losowych hase艂 w konsoli Linux

Generowanie losowych hase艂 w konsoli Linux

poradniki

Generowanie losowych hase艂 w konsoli Linux

header_wpis
S艂owo wst臋pne raczej chyba zb臋dne w tym temacie, wi臋c zabieramy si臋 za generowanie losowych hase艂 w konsoli Linux.

tr -dc A-Za-z0-9 </dev/urandom | head -c 12 ; echo ''
12 oznacza ile znak贸w chcemy mie膰 w naszym ha艣le, A-Za-z0-9 czyli litery od A do Z ma艂e du偶e oraz cyfry od 0 do 9
Tym poleceniem do naszego has艂a dodajemy znaki specjalne
 	
tr -dc 'A-Za-z0-9!"#$%&'\''()*+,-./:;<=>?@[\]^_`{|}~' </dev/urandom | head -c 13  ; echo
Logowanie do serwera za pomoc膮 SSH - generowanie kluczy RSA

Logowanie do serwera za pomoc膮 SSH – generowanie kluczy RSA

poradniki

Logowanie do serwera za pomoc膮 SSH - generowanie kluczy RSA

header_wpis

Logowanie do serwera za pomoc膮 SSH wymaga podania has艂a proste i oczywiste. Z czasem mo偶e to sta膰 si臋 uci膮偶liwe, tym bardziej 偶e cz艂owiek jest z natury leniwy. Jak to obej艣膰 ?
Istnieje szybkie i bardzo proste rozwi膮zanie a mianowicie generowanie kluczy RSA

Generowanie kluczy RSA

ssh-keygen -t rsa
Otrzymujemy komunikat zwrotny : 鈥濭enerating public/private rsa key pair. Enter file in which to save the key (~/.ssh/id_rsa)鈥. Enter i podajemy dwukrotnie has艂o. Je偶eli wszystko p贸jdzie ok a powinno o ile nie pomyli艣my si臋 w ha艣le to otrzymamy komunikat: 鈥瀁our identification has been saved in ~/.ssh/id_rsa. Your public key has been saved in ~/.ssh/id_rsa.pub鈥. Zosta艂y wygenerowane dwa klucze 鈥 jeden prywatny (id_rsa) i drugi publiczny (id_rsa.pub).

Logowanie do serwera

Przenosimy klucz publiczny na serwer

ssh-copy-id -i ~/.ssh/id_rsa.pub LOGIN_DO_KONTA_SSH@ADRES_SERWERA

Je偶eli nie zadzia艂a nale偶y sprawdzi膰 czy w katalogu g艂贸wnym znajduje si臋 folder .ssh, je偶eli nie musimy go utworzy膰

cat ~/.ssh/id_rsa.pub | ssh LOGIN_DO_KONTA_SSH@ADRES_SERWERA 'cat >> .ssh/authorized_keys'

Od teraz logowani odbywa si臋 wpisuj膮c jedynie login@serwer

Jak tworzy膰 i rozpakowywa膰 pliki ZIP, TAR i TAR.GZ

Jak tworzy膰 i rozpakowywa膰 pliki ZIP, TAR i TAR.GZ

poradniki

Jak tworzy膰 i rozpakowywa膰 pliki ZIP, TAR i TAR.GZ

header_wpis
W Windows mamy ZIP jako g艂贸wny format kompresji, a co z Linuxem. Tu kr贸luje TAR i TAR.GZ, daj膮ce znacznie lepszy stopie艅 kompresji ni偶 ZIP.

Format ZIP

Pakowanie archiwum ZIP

zip -r nazwa_archiwum.zip nazwa_katalog

Rozpakowanie archiwum ZIP

unzip nazwa_pliku

Format TAR

Pakowanie katalogu TAR

tar -cvf nazwa_pliku.tar nazwa_katalogu

Rozpakowanie archiwum TAR

tar -xvf nazwa_archiwum.tar
tar -xvf nazwa_archiwum.tar sciezka_do_katalogu_gdzie_ma_byc_rozpakowany

Format TAR.GZ

Pakowanie TAR.GZ

tar -zcvf nazwa_archiwum.tar.gz nazwa_folderu_ktory_chcemy_spakowac

Rozpakowanie TAR.GZ

tar -zxvf nazwa_archiwum.tar.gz nazwa_folderu_gdzie_rozpakowac
Jak sprawdzi膰 si艂臋 sygna艂u WiFi Linux

Jak sprawdzi膰 si艂臋 sygna艂u WiFi Linux

poradniki

Jak sprawdzi膰 si艂臋 sygna艂u WiFi Linux

header_wpis
Od razu na pocz膮tku zaznacz臋, 偶e mowa tu o darmowym narz臋dziu do sprawdzania si艂y sygna艂u Wi-fi. Na rynku mamy mn贸stwo p艂atnych i co za tym idzie mocno rozbudowanych aplikacji ale s膮 te偶 darmowe pere艂ki, kt贸re powini艣my w wi臋kszo艣ci przypadk贸w wystarczy膰 na pocz膮tek. Mamy oczywi艣cie wbudowane mechanizmy do analizy sygna艂u jak iwconfig czy watch ale tu zajmiemy si臋 wavemon

Instalujemy wavemon

sudo apt-get install wavemon

Mimo 偶e program dzia艂a z poziomu konsoli to obs艂ugujemy go za pomoc膮 klawiszy funkcyjnych od F1 do F10. W konsoli wpisujemy i odpalamy wavemon

sudo wavemon

  • F1 (Alt+i) 鈥 wy艣wietla informacj臋 na temat aktualnego po艂膮czenia,
  • F2 (Alt+l) 鈥 historia po艂膮czenia w formie wykresu,
  • F3 (Alt+s) 鈥 lista wykrytych sieci bezprzewodowych w naszym zasi臋gu,
  • F7 (Alt+p) 鈥 ustawienia aplikacji,
  • F8 (Alt+h) 鈥 pomoc,
  • F9 (Alt+a) 鈥 informacje o programie,
  • F10 (Alt+q) 鈥 wyj艣cie z aplikacji
Komendy sieciowe Linux

Komendy sieciowe Linux

poradniki

Komendy sieciowe Linux

header_wpis

Przydatne komendy sieciowe Linux

Je艣li chodzi o tworzenie stabilnych, bezpiecznych sieci, Linux jest pierwszym wyborem dla wi臋kszo艣ci z nas. Konfigurowanie i zarz膮dzanie interfejsami sieciowymi jest niezb臋dne zar贸wno dla administrator贸w systemu, jak i zaawansowanych u偶ytkownik贸w.

ifconfig

Jest to wbudowane narz臋dzie systemowe, kt贸re umo偶liwia u偶ytkownikom konfigurowanie parametr贸w interfejsu sieciowego i zarz膮dzanie nimi.
ifconfig
Wywo艂anie go bez 偶adnych opcji dostarczy szczeg贸艂owych informacji o urz膮dzeniach sieciowych, konfiguracji i bie偶膮cych ustawieniach.

iwconfig

Iwconfig s艂u偶y do konfigurowania bezprzewodowych interfejs贸w sieciowych. Mo偶e by膰 u偶ywany do konfigurowania r贸偶nych parametr贸w sieci bezprzewodowej, takich jak punkt dost臋pu SSID i cz臋stotliwo艣膰.
iwconfig

ifstat

Polecenie ifstat to przydatne narz臋dzie, kt贸re umo偶liwia administratorom odczytywanie i monitorowanie r贸偶nych statystyk interfejsu sieciowego, takich jak wykorzystanie przepustowo艣ci itp.
ifstat --scan=SECS
ifstat jest cz臋艣cia iproute2

Ettool

ethtool umo偶liwia administratorom wy艣wietlanie i modyfikowanie r贸偶nych parametr贸w kontroler贸w interfejsu sieciowego i ich sterownik贸w urz膮dze艅.
ethtool eth0
ethtool -s eth0 speed 1000 duplex full

arpwatch

arpwatch to narz臋dzie do monitorowania aktywno艣ci sieci Ethernet, kt贸re umo偶liwia administratorom systemu 艂atwe 艣ledzenie parowania adres贸w Ethernet/IP w ich sieci.
sudo arpwatch -i eth0

bmon

bmon jest to monitor przepustowo艣ci i estymator przepustowo艣ci, kt贸rego mo偶na u偶ywa膰 do przechwytywania statystyk sieciowych i wy艣wietlania ich w formacie czytelnym dla cz艂owieka
bmon
Dane wyj艣ciowe interfejsu:
bmon -p nazwa_interfejsu

ssh

ssh u偶ytkownik@host-maszyna
Mo偶na skonfigurowa膰 pary kluczy prywatnych/publicznych i logowa膰 si臋 do zdalnych maszyn bez wpisywania hase艂.
ssh-keygen

sendmail

sendmail s艂u偶y do wysy艂ania wiadomo艣ci bezpo艣rednio z terminala
echo "Temat: Test" | sendmail test@example.com < mail.txt

cURL

cURL do przesy艂ania danych do lub z serwera sieciowego. Wykorzystuje r贸偶ne protoko艂y sieciowe, takie jak HTTP, HTTPS, FTP, FTPS, SCP, SFTP itp.
curl -O https://jakasdomena/plik

wget

wget jest cz臋艣ci膮 projektu GNU i odpowiada za pobieranie danych z serwer贸w WWW
wget -O nazwa pliku https://jakasdomena/plik

ftp

Linux FTP jest powszechnie u偶ywane do pobierania lub przesy艂ania plik贸w do/z host贸w zdalnych. Samo wpisanie ftp w terminalu otwiera sesj臋.
nazwa hosta ftp

sftp

sftp u偶ytkownik@nazwa hosta

rcp

Narz臋dzie rcp umo偶liwia u偶ytkownikom kopiowanie plik贸w lub katalog贸w z systemu lokalnego na zdalny komputer w sieci.
rcp [opcje] PRZEZNACZENIE 殴R脫D艁A
rcp /katalog/test.doc nazwa hosta:/katalog/katalog

scp

scp (secure copy) s艂u偶y do bezpiecznego kopiowania plik贸w mi臋dzy dwoma systemami sieci. Funkcjonalno艣膰 jest podobna do polecenia rcp, ale implementuje bezpieczne uwierzytelnianie, takie jak polecenie ssh. scp PLIK nazwa_u偶ytkownika@zdalny-host :/katalog/katalog

rsync

rsync synchronizacja i przesy艂anie plik贸w mi臋dzy systemami w sieci.

rsync -zvh backup.tar /tmp/backups/

route

route pozwala wy艣wietli膰 i zarz膮dza膰 tabel膮 routingu IP. Polecenie to jest r贸wnie偶 dost臋pne w systemach Microsoft Windows

sudo route sudo -n

Dodanie bramy domy艣lnej

sudo route add default gw xxx.xxx.xxx.xxx

dig

dig wysy艂a zapytania DNS w celu sprawdzenia i problem贸w z sieci膮.

sudo dig nazwa_strony.com.pl

sudo dig nazwa_strony.com.pl +short

nslookup

nslookup uzyskanie nazwy domeny lub adresu IP poprzez odpytywanie DNS

sudo nslookup strona.pl

rekordy MX konkretnego hosta

nslookup -type=mx google.com

iftop

iftop dostarcza informacji zwrotnych w czasie rzeczywistym dla r贸偶nych parametr贸w sieci, takich jak wykorzystanie przepustowo艣ci itp.

sudo iftop

Informacje o przepustowo艣ci danego interfejsu
sudo iftop -i nazwa_interfejsu

hping3

hping3 to analizator pakiet贸w TCP
sudo hping3
> hping recv eth0