9 poleceń systemu Linux

9 poleceń systemu Linux

Dzięki podstawowym narzędziom zawartych w wierszu poleceń systemu Linux możemy wykonać ogromną ilość konfiguracji. Dzięki temu dostosujemy system do naszych potrzeb oraz poprawiamy jego bezpieczeństwo. Wymienione w tym materiale 9 poleceń systemu Linux są niesamowicie istotne, ponieważ to dzięki nim wykonamy większość zleconych nam czynności. Chcę zwrócić szczególną uwagę na te wbudowane, ponieważ to one mogą pomóc w ochronie przed zagrożeniami takimi jak złośliwe oprogramowanie czy też zablokować możliwości przeprowadzenia ataku sieciowego. Zapewnienie bezpieczeństwa systemu jest bardzo istotne, w każdej działalności. Dlatego powinniśmy wdrażać konieczne środki, by zmniejszyć ryzyko wystąpienia wspomnianych zagrożeń, przez co zapewnić ochronę danych i systemu.

Na łamach tego artykułu nie będę prezentował skanerów podatności, czy też innych narzędzi, zewnętrznych. Zobacz 9 poleceń systemu Linux. Jednak osobiście uważam, że wspomniane tutaj polecenia powinien znać każdy użytkownik systemu Linux. Zrozumienie działania opisywanych okazać się może kluczowe w naszych codziennych działaniach. Szczególnie że nie są one bardzo skomplikowane. O czym przekonasz się, czytając dalej…

 

Sprawdź, czego nauczysz się dzięki kursowi Grafany!

Udostępniamy darmowo ponad godzinny materiał z kursu. Przekonaj się, że jest idealny dla Ciebie!

Chcesz wziąć udział w kursie? Kliknij w link i obejrzyj co Cię czeka: https://asdevops.pl/demo-grafana/

 

 

 

 

Pierwsze polecenie: useradd

Dzięki tytułowemu poleceniu będziemy w stanie stworzyć nowe konto użytkownika. Przy jego pomocy ustawiasz takie wartości jak nazwa użytkownika, hasło, katalog domowy i członkostwo w grupie.

Składnia wygląda następująco:

useradd [opcje] <nazwa-użytkownika>

W celu utworzenia nowego konta o nazwie krzysiek z domyślnymi ustawieniami posługujemy się poleceniem w następujący sposób:

useradd krzysiek

Pamiętaj, że aby utworzyć nowe konto użytkownika musisz mieć do tego odpowiednie uprawnienia. Dlatego albo musisz skorzystać z konta root, albo z sudo.

W prezentowanym przykładzie tworzymy w sposób najprostszy konto użytkownika. Polecenie posiada wiele innych możliwości. Na przykład możemy określić mu niestandardowy katalog domowy. W celu wykonania tej czynności wprowadzamy polecenie:

useradd -d /home/kamil kamil

Jednak jeżeli stworzyliśmy już konto, to prezentowany sposób nie zadziała. Dla przykładu, jeżeli chcielibyśmy przypisać nowy katalog domowy dla użytkownika krzysiek, otrzymamy informację zwrotną:

useradd -d /home/krzysiek krzysiek
useradd: user 'krzysiek' already exists

Dlatego należy zapamiętać, że jeżeli chcemy nadać niestandardowy katalog użytkownikowi, to musimy zrobić w trakcie tworzenia konta. Użyłem słowa niestandardowy, ponieważ bez tej opcji przypisywany jest katalog noszący nazwę użytkownika w katalogu /home.

Istotne jest również słowo przypisywany, ponieważ polecenie go nie tworzy, a jedynie przypisuje. W celu stworzenia katalogi powinniśmy użyć polecenia:

useradd -m karolina

Do innych przydatnych opcji możemy zaliczyć możliwość przypisania do grupy użytkownika. Robimy to przy pomocy polecenia:

useradd -g mysql adam

Jednak wywołanie polecenie w prezentowany sposób nie utworzy grupy noszącego taką samą nazwę co użytkownik.

Kolejną przydatną funkcją jest ustawienie hasła dla użytkownika: 

useradd -p haslo karol

Korzystać z tego polecenia będziesz dość często. Wszystkie możliwe opcje dokładnie opisane odnajdziesz w podręczniku, do którego dostaniesz się za pomocą man useradd.

Drugie polecenie: passwd

Jest to narzędzie systemu Linux, dzięki któremu zmienimy hasło do konta użytkownika. Składnia wygląda w następujący sposób:

passwd [opcje] nazwa-użytkownika

W celu zmiany hasła dla użytkownika krzysiek, utworzonego w poprzednim paragrafie korzystamy z polecenia w następujący sposób:

passwd krzysiek
New password:
Retype new password:
passwd: password updated successfully

Po jego wywołaniu zostaniesz poproszony o wprowadzenie i potwierdzenie nowego hasła. Nowe hasło zostanie zaszyfrowane i zapisane w pliku haseł w systemie, zastępując stare.

Istnieje możliwość całkowitego usunięcia hasła. Robimy to w następujący sposób:

passwd -d krzysiek
passwd: password changed.

Aby zablokować możliwość logowania użytkownika na konto, należy użyć polecenia:

passwd -l karolina
passwd: password changed.

Polecenie posiada bardzo dużo innych opcji. Wszystkie dokładnie opisane odnajdziesz w podręczniku man passwd.

Trzecie polecenie: chmod

Jest to jedno z najważniejszych poleceń w systemie Linux, które musi znać każdy, z podkreśleniem słowa każdy. To dzięki niemu nadajemy uprawnienia do plików oraz katalogów. Zalicza się do najważniejszym, ponieważ to, dzięki niemu jesteś w stanie zwiększyć bezpieczeństwo plików oraz katalogów. Składnia wygląda następująco:

chmod [opcje] uprawnienie nazwa-pliku/nazwa-katalogu

Nadawanie uprawnień, najczęściej wykonuje się na dwa sposoby. Z wykorzystaniem liter lub cyfr. Niemniej jednak najczęściej spotkasz się z rozwiązaniem cyfrowym. Cyfry reprezentują uprawnienia takie jak na poniższej liście:

0 - ---
1 - --x
2 - -w-
3 - -wx
4 - r--
5 - r-x
6 - rw-
7 - rwx

W celu nadania uprawnień wskazane w powyższym przykładzie liczby należy połączyć za pomocą zapisu ósemkowego. Na przykład, aby nadać właścicielowi pliku uprawnienia do odczytu i zapisu, a wszystkim innym uprawnienia tylko do odczytu, można użyć następującego zbioru liczb:

660

Więcej na temat uprawnień w systemie Linux i omawianego polecenia możesz przeczytać w osobnym artykule noszącym nazwę Uprawnienia w systemie Linux (link jak będzie) lub w podręczniku man chmod.

Czwarte polecenie: chown

Dzięki poleceniu chown, zmienisz właściciela pliku lub katalogu. Wspomniana własność określa, który użytkownik i grupa mają do niego dostęp oraz mogą go modyfikować. Składnia polecenia wygląda następująco:

chown [opcja] [właściciel][:[grupa]] plik

Gdzie nazwa użytkownika to nazwa nowego właściciela pliku lub katalogu. Grupa to nazwa grupy, do jakiej ma przynależeć wskazany plik lub katalog. Natomiast słowo użyte w składni jako plik to nazwa pliku, na którym wprowadzamy wymienione zmiany.

Na przykład, aby zmienić właściciela pliku noszącego nazwę plik na użytkownika krzysiek i nadać uprawnienia wszystkim użytkownikom należącym do grupy mysql, konstruujemy polecenie w następujący sposób:

touch plik
chown krzysiek:mysql plik

W celu zmiany właściciela katalogu i wszystkich plików w nim się znajdujących posługujemy się poleceniem w następujący sposób:

mkdir uprawnienia
cd uprawnienia
touch plik1 plik2 plik3
cd ..
chown -R krzysiek:mysql uprawnienia/

Wywołanie powyższych poleceń w prezentowany sposób zmieni właściciela oraz nada uprawnienia grupie dla katalogu, oraz plików w nim się znajdujących.

Tak jak w poprzednich przypadkach musisz korzystać z konta administratora lub sudo. Więcej na temat tego polecenia możesz uzyskać w podręczniku man chown.

Piąte polecenie: sudo

Choć może powinienem napisać o nim jako o pierwszym, to jednak postanowiłem zrobić to dopiero teraz. Sudo jest narzędziem systemu Linux, dzięki któremu wywołujesz polecenia z uprawnieniami administratora. Dzięki niemu wykonasz wszystkie poznane dotychczas w tym materiale.

Aby uzyskać możliwość korzystania z sudo, konto musi zostać dodane do odpowiedniej grupy. Uzyskasz to przy pomocy polecenia:

usermod -a -G sudo <nazwa-użytkownika>

Następnie używasz go w następujący sposób:

sudo <polecenie>

Dla przykładu w celu instalacji pakietu w systemie Red Hat Enterprise Linux możesz użyć następującej formy polecenia:

sudo yum <nazwa-pakietu>

Gdy użyjesz polecenia, zostaniesz poproszony o podanie hasła do twojego konta w celu zweryfikowania tożsamości.

Dzięki poleceniu sudo wykonasz prawie wszystkie czynności bez konieczności korzystania z konta root. Większość dystrybucji, jak i nie wszystkie zalecają korzystanie z niego zamiast root’a.

Szóste polecenie: iptables

Jest to wbudowany firewall w jądro systemu Linux. Umożliwia skonfigurowanie reguł zapory sieciowej. Instaluje się automatycznie z każdą dystrybucją. Dlatego należy do bardzo ważnych narzędzi, które powinien znać każdy administrator. Składnia polecenia wygląda w następujący sposób:

iptables [opcja] -A|D reguła łańcuchowa [opcje]

Dla przykładu, aby umożliwić logowanie za pomocą SSH, musimy odblokować port 22 ( najczęściej ). W celu umożliwienia logowania wprowadzamy polecenie w następujący sposób:

iptables -A INPUT -p tcp --dport 22 -j ACCEPT

Polecenie dodaje regułę do łańcucha INPUT, która określa, że pakiety z protokołem TCP i portem docelowym 22 powinny być akceptowane.

W celu usunięcia reguły możesz posłużyć się poleceniem:

iptables -A INPUT -p tcp --dport 22 -j DROP

Jednak co jest bardzo istotne, reguły iptables są tymczasowe. Dlatego po restarcie urządzenia zostaną one wyczyszczone. Aby tak się nie stało, musisz zapisać wprowadzone zmiany przy pomocy iptables-save, a następnie użyć iptables-restore w celu ich przywrócenia.

Więcej na temat zapór sieciowych możesz przeczytać we wcześniejszym moim artykule noszącym nazwę Sieci i firewall na serwerach Linux (link jak będzie) lub skorzystać z podręcznika man iptables.

Siódme polecenie: ssh

Jest to narzędzie, które zapewnia bezpieczne połączenie zdalne. W obecnej chwili jest używane wszędzie tam, gdzie, istnieje konieczność połączenia zdalnego, ponieważ szyfruje je, co zapewnia bezpieczeństwo zarówno samego połączenia, jak i przesyłanych plików. Składnia wygląda następująco:

ssh [opcje] <nazwa-użytkownika>@<nazwa-hosta> lub <adres-ip>

Dla przykładu, aby zalogować się zdalnie, do konta użytkownika krzysiek znajdującego się na urządzeniu pod adresem ip 10.0.2.6 korzystamy z polecenia w następujący sposób:

ssh krzysiek@10.0.2.6

Zostaniesz poproszony o podanie hasła do konta. Standardowo ssh korzysta z portu 22, jeżeli serwer, z którym się łączysz, ma ustawiony inny, możesz użyć opcji -p.

SSH jest to bardzo potężne i co ważnie nieskomplikowane narzędzie. Jeżeli jesteś zainteresowany szczegółowym zapoznaniem się z nim, to zapraszam do naszego szkolenia znajdującego się pod adresem https://grupadm.pl/product/szkola-admina/ i https://grupadm.pl/product/klucze-publiczne-w-linuxie/.

Ósme polecenie: rkhunter

Narzędzie służy do wyszukiwania rotkitów oraz innego złośliwego oprogramowania w systemie Linux. Wykrywa oznaki złośliwego oprogramowania jak na przykład podejrzane modyfikacje systemu, nieprawidłowe zachowania czy też ukryte pliki. Podstawowa składnia polecenia wygląda następująco:

rkhunter [opcja] --check

Dzięki opcji –check przeprowadzasz skanowanie w poszukiwaniu zagrożeń wspomnianych w poprzednim akapicie. Jednak przed wykonaniem jakiegokolwiek skanowania zawsze należy zaktualizować definicje programu. Wykonujemy to przy pomocy polecenia:

rkhunter --update --check

W ten sposób zaktualizujesz definicje programu, jak i również przeprowadzimy skanowanie. Natomiast możliwe, że program nie jest zainstalowany w dystrybucji, z której korzystasz. Dlatego użyj wbudowanego menadżera pakietów i zainstaluj pakiet rkhunter.

W przypadku gdy otrzymasz błąd:

Invalid WEB_CMD configuration option: Relative pathname: „/bin/false”

Zmodyfikuj plik:

nano -w /etc/rkhunter.conf

I wprowadź w nim następujące zmiany:

MIRRORS_MODE=1 ---> MIRRORS_MODE=0
UPDATE_MIRRORS=0 ---> UPDATE_MIRRORS=1
WEB_CMD="/bin/false" ---> WEB_CMD=""

Po zapisaniu wprowadzonych zmian wszystko powinno funkcjonować, jak należy.

Pełny raport z przeprowadzonego skanowania znajduje się w folderze /var/log/rkhunter.log.

Tak samo, jak w poprzednich przypadkach, jeżeli chcesz poznać więcej informacji, skorzystaj z podręcznika w następujący sposób man rkhunter.

Dziewiąte polecenie: gpg

Polecenie gpg (GNU Privacy Guard) jest narzędziem służącym do szyfrowania i odszyfrowywania plików. Korzysta z dwóch rodzajów kluczy. Pierwszy z nich jest to klucz publiczny, który służy do bezpiecznego szyfrowania plików. Natomiast drugi, klucz prywatny do odszyfrowania.

Standardowa składnia polecenia służąca do szyfrowania plików wygląda następująco:

gpg [opcje] -e -r <ID> <plik>

Opcja -e określa, że chcesz zaszyfrować plik.

Opcja -r określa identyfikator lub adres e-mail odbiorcy.

plik wprowadzasz nazwę pliku, który chcesz zaszyfrować.

Dla przykładu stwórzmy plik noszący nazwę tajny, a następnie zaszyfrujemy go:

touch tajny
gpg -e -r krzysiek tajny

Oczywiście, aby polecenie zadziałało, musimy mieć stworzone klucze gpg. Po wykonaniu polecenia utworzy się nowy plik z końcówką .gpg.

W celu odszyfrowania pliku korzystamy z polecenia:

gpg -d tajny.gpg

Adekwatnie utworzy się nowy plik noszący nazwę tajny.

Polecenie gpg jest bardzo przydatne i rozbudowane. Więcej informacji o nim jesteś w stanie przeczytać w podręczniku man gpg.

Podsumowanie – 9 poleceń systemu Linux

W powyższym materiale przedstawiam 9 poleceń systemu Linux, które uważam, że powinien znać każdy użytkownik czy administrator Linux. Nie wymagają one dość skomplikowanej konfiguracji, a mogą wspomóc nas w codziennych zmaganiach z konfiguracją systemową, jak i zapewnieniem bezpieczeństwa. Oczywiście nie wyczerpuje to tematu co do każdego z poleceń. O większości z nich można napisać oddzielny artykuł, a tak jak wskazałem w przypadku niektórych już na łamach naszej działalności powstały.

Chcesz wiedzieć więcej na temat administracji? Przeczytaj nasze artykuły, a także weź udział w kursach!

 

 

 

Sprawdź, czego nauczysz się dzięki kursowi Grafany!

Udostępniamy darmowo ponad godzinny materiał z kursu. Przekonaj się, że jest idealny dla Ciebie!

Chcesz wziąć udział w kursie? Kliknij w link i obejrzyj co Cię czeka: https://asdevops.pl/demo-grafana/

 
 
 

Lekcja demo kursu Grafany!

X