5 poleceń „chattr”, aby stworzyć ważne pliki niezmienne (niezmienne) w Linux

5 poleceń „chattr”, aby stworzyć ważne pliki niezmienne (niezmienne) w Linux

Chattr (Zmień atrybut) to narzędzie linii poleceń, które jest używane do ustawiania/rozliczania niektórych atrybutów pliku w systemie Linux w celu zabezpieczenia przypadkowego usunięcia lub modyfikacji ważnych plików i folderów, nawet jeśli jesteś zalogowany jako użytkownik root.

W Linux Native FileSystems i.mi. ext2, ext3, ext4, btrfs itp. obsługuje wszystkie flagi, chociaż wszystkie flagi nie będą obsługiwać wszystkich nierodzinnych FS. Nie można usunąć ani modyfikować pliku/folderu, gdy atrybuty są ustawione za pomocą polecenia Chattr, mimo że ma pełne uprawnienia.

5 Przykłady polecenia Chattr

Jest to bardzo przydatne do ustawiania atrybutów w plikach systemowych, takich jak pliki passwd i cienia, w których zawierane są informacje użytkownika.

Składnia Chattr
# chattr [operator] [flagi] [nazwa pliku] 
Atrybuty i flagi

Poniżej znajdują się lista typowych atrybutów i powiązanych flag można ustawić/unset za pomocą polecenia Chattr.

  1. Jeśli dostęp do pliku jest dostępnyA„Zestaw atrybutów, jego rekord ATIME nie jest aktualizowany.
  2. Jeśli plik jest zmodyfikowanyS„Zestaw atrybutów zmiany są aktualizacją synchronicznie na dysku.
  3. Plik jest ustawiany z 'A„Atrybut, można otworzyć tylko w trybie dodatkowym do pisania.
  4. Plik jest ustawiany z 'I„Atrybut, nie można zmodyfikować (niezmienne). Oznacza brak zmiany nazwy, brak symbolicznych tworzenia linków, bez wykonania, bez zapisu, tylko superuser może nie wyznaczyć atrybutu.
  5. Plik z 'J„Atrybut jest ustawiany, wszystkie jego informacje są aktualizowane do czasopisma ext3 przed aktualizacją samego pliku.
  6. Plik jest ustawiany z 'T„Atrybut, bez łączenia ogona.
  7. Plik z atrybutem 'D', nie będzie już kandydata na kopię zapasową podczas uruchomienia procesu zrzutu.
  8. Kiedy plik ma 'u„Atrybut jest usuwany, jego dane są zapisywane. Umożliwia to użytkownikowi poproszenie o jego nierówność.
Operator
  1. + : Dodaje atrybut istniejącego atrybutu plików.
  2. - : Usuwa atrybut istniejącego atrybutu plików.
  3. = : Zachowaj istniejące atrybuty, które mają pliki.

Tutaj zademonstrujemy niektóre przykłady poleceń Chattr, aby ustawić atrybuty/UNSET na plik i foldery.

1. Jak dodawać atrybuty plików, aby zabezpieczyć się od usunięcia

Do celów demonstracyjnych użyliśmy folderu próbny i plik Ważny_file.conf odpowiednio. Przed skonfigurowaniem atrybutów upewnij się, że istniejące pliki mają dowolne atrybuty ustawione za pomocą polecenia „LS -L”. Czy widziałeś wyniki, obecnie nie ustawiono żadnych atrybutów.

[[chroniony e-mail] Tecmint]# ls -l ogółem 0 drwxr-xr-x. 2 Root root 6 sierpnia 31 18:02 Demo -RwxRwxRwx. 1 root root 0 31 sierpnia 17:42.conf 

Aby ustawić atrybut, używamy + podpisać i unset Użyj - Podpisz za pomocą polecenia Chattr. Więc ustawmy niezmienny bit plików za pomocą +I flagi, aby uniemożliwić każdemu usunięcie pliku, nawet użytkownik root nie ma pozwolenia na jego usunięcie.

[[chroniony e -mail] Tecmint]# Chattr +I demo/ [[chroniony e -mail] TecMint]# Chattr +i ważny_file.conf 

Notatka: Niezmienny kawałek +I może być ustawione tylko przez Superuser (i.root e root) Użytkownik lub użytkownik z uprawnieniami sudo może być w stanie ustawić.

Po ustawieniu niezmiennego bitu sprawdźmy atrybut za pomocą polecenia 'lsattr'.

[[chroniony e-mail] Tecmint]# lsattr ---- i----------- ./demo ---- i----------- ./ważny_file.conf 

Teraz próbowałem usunąć mocno, zmienić nazwę lub zmienić uprawnienia, ale nie pozwoli to powiedzieć „operacja niedozwolona".

[[e -mail chroniony] Tecmint]# rm -rf demo/ rm: nie można usunąć âdemo/ â: Operacja niedozwolona 
[[e -mail chroniony] Tecmint]# mv demo/ demo_alter mv: nie można się poruszyć âdemo/ â do âdemo_alterâ: Operacja niedozwolona 
[[chroniony e -mail] TecMint]# CHMOD 755 WAŻNY_FILE.COND CHMOD: Zmiana uprawnień âimportant_file.confâ: Operacja niedozwolona 

2. Jak Unset Atrybut na plikach

W powyższym przykładzie widzieliśmy, jak ustawić atrybut w celu zabezpieczenia i zapobiegania plikom przed przypadkowym usunięciem, tutaj w tym przykładzie zobaczymy, jak zresetować uprawnienia (atrybut niezapomniane) i umożliwia uczynienie plików zmiennych lub zmiennych za pomocą za pomocą za pomocą za pomocą plików za pomocą za pomocą -I flaga.

[[chroniony e -mail] Tecmint]# Chattr -i Demo/ Ważne_file.conf 

Po zresetowaniu uprawnień zweryfikuj niezmienny status plików za pomocą 'lsattr' Komenda.

[[chroniony e -mail] Tecmint]# lsattr ---------------- ./próbny ---------------- ./ważny_file.conf 

Widzisz w powyższych wynikach, że '-I„Usunięto flagę, oznacza to, że możesz bezpiecznie usunąć cały plik i folder w folderze TecMint.

[[e -mail chroniony] Tecmint]# rm -rf * [[chroniony e -mail] TecMint]# ls -l ogółem 0 

3. Jak zabezpieczyć pliki /etc /passwd i /etc /shadow

Ustawienie niezmiennego atrybutu na plikach /etc/passwd Lub /itp./Shadow, zapewnia ich bezpieczeństwo przed przypadkowym usuwaniem lub manipulacją, a także wyłączy tworzenie konta użytkownika.

[[chroniony e -mail] Tecmint]# Chattr +i /etc /passwd [[chroniony e -mail] Tecmint]# chattr +i /etc /shadow 

Teraz spróbuj utworzyć nowego użytkownika systemu, otrzymasz komunikat o błędzie „Nie można otworzyć /etc /passwd'.

[[chroniony e -mail] TecMint]# useradd TecMint UserAdd: Nie można otworzyć /etc /passwd 

W ten sposób możesz ustawić niezmienne uprawnienia do ważnych plików lub plików konfiguracyjnych systemu, aby zapobiec usunięciu.

4. Dołącz dane bez modyfikowania istniejących danych w pliku

Załóżmy, że chcesz tylko zezwolić wszystkim na dołączanie danych w pliku bez zmiany lub modyfikowania już wprowadzonych danych, możesz użyć ''A„Atrybut w następujący sposób.

[[chroniony e -mail] Tecmint]# Chattr +przykład.txt [[chroniony e -mail] TecMint]# lsattr Przykład.TXT ----- A ----------.tekst 

Po ustawieniu trybu dołączania pliku można otworzyć do zapisywania danych tylko w trybie dodatkowym. Możesz rozwinąć atrybut dodatkowy w następujący sposób.

[[chroniony e -mail] Tecmint]# Chattr -a Przykład.tekst 

Teraz spróbuj wymienić już istniejącą treść w pliku przykład.tekst, dostaniesz błąd powiedzeniaoperacja niedozwolona'.

[[chroniony e -mail] TecMint]# echo "zamień zawiera w pliku."> Przykład.txt -bash: przykład.TXT: Operacja niedozwolona 

Teraz spróbuj dołączyć nową treść do istniejącego pliku przykład.tekst i zweryfikuj to.

[[chroniony e -mail] TecMint]# echo "zamień zawiera w pliku.">> Przykład.tekst 
[[chroniony e -mail] TecMint]# CAT Przykład.TXT Oto przykład testowania „A atrybut”. Wymień zawiera w pliku. 

5. Jak zabezpieczyć katalogi

Aby zabezpieczyć cały katalog i jego pliki, używamy ”-R„(rekurencyjnie) przełącz się z”+I„Flaga wraz z pełną ścieżką folderu.

[[chroniony e -mail] Tecmint]# Chattr -r +i MyFolder 

Po ustawieniu atrybutu rekurencyjnego spróbuj usunąć folder i jego pliki.

[[e -mail chroniony] Tecmint]# rm -rf myFolder/ rm: Nie można usunąć „myFolder/”: Operacja niedozwolona 

Aby Unset, używamy tego samego „-r” (rekurencyjnego) z flagą „-i” wraz z pełną ścieżką folderu.

[[chroniony e -mail] Tecmint]# Chattr -r -i MyFolder 

Otóż ​​to! Aby dowiedzieć się więcej o atrybutach polecenia Chattr, flagach i opcjach, użyj stron Man.