Weboldal keresés

Ismerje meg, hogyan hozhat létre és ellenőrizhet fájlokat az MD5 ellenőrzőösszeggel Linux alatt


Az ellenőrző összeg olyan számjegy, amely az adatok helyes számjegyeinek összegeként szolgál, és később felhasználható az adatok tárolás vagy átvitel során előforduló hibáinak észlelésére. Az MD5 (Message Digest 5) összegek használhatók ellenőrző összegként a fájlok vagy karakterláncok ellenőrzésére Linux fájlrendszerben.

Az MD5 összegek 128 bites karakterláncok (számok és betűk), amelyek az MD5 algoritmus egy adott fájlon történő futtatásából származnak. Az MD5 algoritmus egy népszerű hash-függvény, amely 128 bites üzenetkivonatot generál, amelyet hash értéknek neveznek, és amikor egy adott fájlhoz generál egyet, az pontosan változatlan marad bármely gépen, függetlenül attól, hogy hányszor jön létre.

Általában nagyon nehéz két különálló fájlt találni, amelyek ugyanazt a karakterláncot eredményezik. Ezért az md5sum segítségével ellenőrizheti a digitális adatok integritását, ha megállapítja, hogy a letöltött fájl vagy ISO a távoli fájl vagy ISO bitenkénti másolata.

Javasolt olvasmány: Haladás – A (cp, mv, dd, tar stb.) parancsok előrehaladásának figyelése Linux rendszeren

Linux alatt az md5sum program kiszámítja és ellenőrzi egy fájl MD5 hash értékeit. Ez a GNU Core Utilities csomag része, ezért a legtöbb, ha nem az összes Linux disztribúción előre telepítve van.

Vessen egy pillantást a /etc/group fájl tartalmára, amely groups.cvs néven van elmentve alább.

root:x:0:
daemon:x:1:
bin:x:2:
sys:x:3:
adm:x:4:syslog,aaronkilik
tty:x:5:
disk:x:6:
lp:x:7:
mail:x:8:
news:x:9:
uucp:x:10:
man:x:12:
proxy:x:13:
kmem:x:15:
dialout:x:20:
fax:x:21:
voice:x:22:
cdrom:x:24:aaronkilik
floppy:x:25:
tape:x:26:
sudo:x:27:aaronkilik
audio:x:29:pulse
dip:x:30:aaronkilik

Az alábbi md5sums parancs a következőképpen generál egy hash értéket a fájlhoz:

md5sum groups.csv

bc527343c7ffc103111f3a694b004e2f  groups.csv

Amikor megpróbálja megváltoztatni a fájl tartalmát az első root:x:0: sor eltávolításával, majd másodszor is futtatja a parancsot, próbálja meg megfigyelni a hash értéket:

md5sum groups.csv

46798b5cfca45c46a84b7419f8b74735  groups.csv

Észre fogja venni, hogy a hash értéke megváltozott, ami azt jelzi, hogy a fájl tartalma megváltozott.

Most tegye vissza a fájl első sorát, root:x:0:, és nevezze át group_file.txt-re, majd futtassa az alábbi parancsot a hash értékének újra generálásához:

md5sum groups_list.txt

bc527343c7ffc103111f3a694b004e2f  groups_list.txt

A fenti kimenet alapján a hash értéke még akkor is ugyanaz, ha a fájlt átnevezték, az eredeti tartalommal.

Fontos: az md5 összegek csak a fájl tartalmát ellenőrzi/működik, nem pedig a fájlnévvel.

A groups_list.txt fájl a groups.csv másolata, ezért próbálja meg egyszerre generálni a fájlok hash értékét az alábbiak szerint.

Látni fogja, hogy mindkettőnek azonos hash értéke van, mert pontosan ugyanaz a tartalom.

md5sum groups_list.txt  groups.csv 

bc527343c7ffc103111f3a694b004e2f  groups_list.txt
bc527343c7ffc103111f3a694b004e2f  groups.csv

A fájl(ok) hash értékét átirányíthatja egy szöveges fájlba, és tárolhatja, megoszthatja másokkal. A fenti két fájl esetében az alábbi paranccsal átirányíthatja a generált hash értékeket egy szöveges fájlba későbbi felhasználás céljából:

md5sum groups_list.txt  groups.csv > myfiles.md5

Ha ellenőrizni szeretné, hogy a fájlok nem módosultak-e az ellenőrző összeg létrehozása óta, futtassa a következő parancsot. Meg kell tudnia nézni az egyes fájlok nevét az „OK ” mellett.

Javasolt olvasmány: Keresse meg a 15 legnépszerűbb folyamatot memóriahasználat alapján Linux alatt

A -c vagy --check opció arra utasítja az md5sums parancsot, hogy olvassa be az MD5 összegeket a fájlokból, és ellenőrizze azokat.

md5sum -c myfiles.md5

groups_list.txt: OK
groups.csv: OK

Ne feledje, hogy az ellenőrző összeg létrehozása után nem nevezheti át a fájlokat, különben „Nincs ilyen fájl vagy könyvtár” hibaüzenetet kap, amikor megpróbálja ellenőrizni a fájlokat új néven.

Például:

mv groups_list.txt new.txt
$ mv groups.csv file.txt
$ md5sum -c  myfiles.md5
md5sum: groups_list.txt: No such file or directory
groups_list.txt: FAILED open or read
md5sum: groups.csv: No such file or directory
groups.csv: FAILED open or read
md5sum: WARNING: 2 listed files could not be read

A koncepció stringeknél is működik, az alábbi parancsokban a -n azt jelenti, hogy nem adja ki a záró újsort:

echo -n "Tecmint How-Tos" | md5sum - 

afc7cb02baab440a6e64de1a5b0d0f1b  -
echo -n "Tecmint How-To" | md5sum - 

65136cb527bff5ed8615bd1959b0a248  -

Ebben az útmutatóban megmutattam, hogyan hozhat létre hash értékeket a fájlokhoz, és hogyan hozzon létre ellenőrző összeget a fájl integritásának későbbi ellenőrzéséhez Linuxban. Bár az MD5 algoritmus biztonsági réseit észlelték, az MD5 kivonatok továbbra is hasznosak maradnak, különösen akkor, ha megbízik az őket létrehozó félben.

A fájlok ellenőrzése ezért fontos szempont a rendszer fájlkezelésében, hogy elkerülhető legyen a sérült fájlok letöltése, tárolása vagy megosztása. Végül, de nem utolsósorban, a szokásos módon keressen fel minket az alábbi megjegyzés űrlapon keresztül, hogy segítséget kérjen, és néhány fontos javaslatot is tehet a bejegyzés javítására.