Néhány nappal ezelőtt Meséltem nekik Lapos, egy webalkalmazás (CMS), amelyen keresztül blogot vagy hasonlót készíthet adatbázisok használata nélkül, vagy sokat bonyolíthat 🙂
Nos, a laptopomon van egy Lapos a személyes feljegyzésekhez olyan dolgokat, amelyeket nem akarok elfelejteni, és ezért írom ezeket a személyes blogba. De, amint azt már többen tudjátok ... kissé paranoiás vagyok a biztonsággal kapcsolatban, és ha ez összefügg a gondolataim biztonságával, akkor fogalmatok sincs, mennyire paranoid tudok lenni 😀
Tehát szembesültem a problémával: Hogyan védhetem meg a FlatPress használatával a rajta található összes tartalmat?
Számos olyan alkalmazásra gondoltam, amely lehetővé teszi az adatok titkosítását, de ... egyik sem tette pontosan azt, amit akartam, ezért vállaltam azt a feladatot, hogy magam is programozzam.
Most megmutatok egy forgatókönyvet, amelyet készítettem, amely a következőket teszi:
1. Megjelenik egy párbeszédpanel, amely megkérdezi, hogy Ön KZKG ^ Gaara-e, ha a NEM gombot lenyomja, akkor a parancsfájl bezárul, ha a YES billentyűt nyomja meg, akkor minden a szokásos módon folytatódik.
2. Mutasson egy szövegmezőt, amelyben megkérdezi, hogy mi a jelszó:
3. Ha megnyomja a Mégse gombot, a szkript bezárul, most jön az egyik szkripttrükk 😉 ...
3.1. A logika az, hogy a szkript összehasonlítja az általunk írt jelszót egy már előre definiált jelszóval, és ha a jelszavak egyeznek, akkor tovább fut, és ha a jelszavak nem egyeznek, akkor hibaüzenet jelenik meg. A probléma az, hogy ha éppen így tesszük a helyes jelszót a szkriptbe, bárki, aki szövegszerkesztővel nyitja meg a szkriptet, nagyon tisztán láthatja a helyes jelszót .. és ez barátaim, ez egyszerűen megbocsáthatatlan hiba
3.2. Az MD5-et használtam, hogy elkerüljem az ilyen jelszó egyszerű szövegbe való beírását a szkriptbe. Vagyis a szkript elején kijelentettem, hogy a helyes jelszó «2dac690b816a43e4fd9df5ee35e3790d«, És ez a következő MD5:desdelinux«. ... Nem értek semmit!! …😀
Részletezzünk még egy kicsit. Ha most írok egy fájlba (például, ~ / pass.txt) szöveg: desdelinux
Ha egy terminálban azt írom: md5sum ~ / pass.txt
Ez visszatér nekem: 2dac690b816a43e4fd9df5ee35e3790d sum
És ... amint láthatja, az az első oszlop, amely rengeteg számmal és betűvel rendelkezik, látható sorrendben, megegyezik azzal, amelyet fentebb tettem, és a deklarált szkriptben található.
Nos, ez az első oszlop a desdelinux 😉
Ha a következőket teszik, akkor csak az 1. oszlop jelenik meg, amely érdekel minket: md5sum ~/pass.txt | awk '{print $1}'
4. Tehát a szkript működése ebben a részben:
4.1. A szkript a beírt jelszót egy ideiglenes fájlba fogja nevezni temp.txt, és kivonja az MD5 fájlt a fájl tartalmából a következő paranccsal:
md5sum temp.txt | awk '{print $1}'
4.2. Ha az imént írt jelszó MD5 NEM ugyanaz, mint amelyet definiált (vagyis a szkriptbe írt), akkor bezáródik, és hibát okoz:
4.3. Ha a jelszó megegyezik, tökéletes ... a szkript folytatódik 😀
5. Amikor a jelszó megegyezik, a szkript számos lépést hajt végre, az én esetemben:
5.1. Belép a mappába / home / shared / hosted / - » cd / home / shared / hosted /
5.2. A FlatPress mappát "me" -nek hívják, és .RAR-ba van tömörítve jelszóval (a jelszó megegyezik azzal, amelyet korábban be kellett állítani), így a szkript kibontja ezt a fájlt (me.rar) - » rar x me.rar -hp $ MWORD
ritka x - »A fájlok és mappák kicsomagolása ugyanazon sorrendben van.
én.rar - »Ezt a fájlt szeretném kibontani.
-hp $ MWORD - »Itt azt mondom, hogy jelszó használatával kell kibontani a fájlt, és a jelszó a $ MWORD változó (ez a változó az a jelszó, amelyet korábban beírtunk)
5.3. Tehát, ha jól kibontotta, akkor törölöm a me.rar fájlt ... miért? Nos, mert nincs értelme, hogy a .rar létezik, ha a bennem lévő fájlokkal dolgozom, és ezek a fájlok változnak, mert írok új dolgok a blogon - » rm me.rar
5.4. Meg kell változtatnom az engedélyeket, hogy minden jól működjön - » chmod 777 -R me / (ne feledje, hogy a me / mappa tartalmazza a tömörített me.rar)
5.5. Megjelenik egy ablak, amely azt mondja nekem, hogy 10 másodpercem van a "" böngésző megnyitásához. WTF!, Mit jelent ez? ...
5.5 (a). Egyszerű, nagyon egyszerű ... 🙂 ... Megnyitom a böngészőt (ebben az esetben rekonq), és új bejegyzésen dolgozom, de amikor bezárom a böngészőt, a szkript ismét tömöríti az me / mappát .rar fájlban (maradva bennem.rar).
Ez azért lehetséges, mert a szkript 3 másodpercenként ellenőrzi, hogy a Rekonq nyitva van-e vagy sem, ha azt észleli, hogy nyitva van, akkor a szkript nem tesz semmit, de ha azt észleli, hogy NEM nyitott, akkor végrehajtja: rar a me.rar -hp $ MWORD me / * && rm -R me /
Ami azt jelenti, hogy tömöríti a mappát nekem/ en én.rar (és feltesz egy jelszót, amely megegyezik a már látottakkal), és ha tömöríti, és ha nem voltak hibák, akkor törli a mappát nekem/ annak minden tartalmával.
5.5 (b). Hogyan segít ez nekünk? ... egyszerű, így elkerülhető, hogy emlékezzünk arra, hogy újra meg kell védenünk a tartalmainkat, mivel csak abba kell hagynunk a munkát (bezárjuk a böngészőt), és a szkript elvégzi az összes többi munkát 😉
6. Kész, mindezt általános módon elmagyaráztuk 🙂
... bár van még egy részlet 😀
A szkript még nagyobb védelemmel rendelkezik, a tiltott védelem (kommentálva) ezek a sorok:
if [ "$USER" != "$ME" ]; then
rm *.sh
kdialog --error "Sorry but u are not me. Auto-destroying..." --title "Im Me..."
exit
fi
Amit csinál, az egyszerű. A $ USER változó a rendszer globális változója, ha terminálba helyezzük:
echo $USER
Látni fogja, mit mutat a felhasználója ... nos, ezeknek a soroknak a logikája egyszerű.
Ha a (z) $ USER nem egyezik meg a (z) $ ME változóval (és én ezt a szkriptben deklaráltam, és ez: "gaara"), akkor a szkript MINDEN fájlt töröl .SH amelyek abban a mappában vannak, vagyis önpusztít 😉
Ez megakadályozza, hogy valaki más futtassa a szkriptet egy másik számítógépen hehehehe.
Nos, nem hiszem, hogy sokkal többet kellene megmagyarázni, otthagyom a forgatókönyvet:
Tudom, hogy sokan rendkívül összetettnek találják, de valójában félelmetesebb, mint kellene ... a szkript valóban egyszerű működési logikával rendelkezik, egyszerű céllal.
Ezt azért tettem, hogy egy nagyon sajátos igényemet kielégítsem, megosztom abban a reményben, hogy valamilyen más itt kifejtett vonal vagy ötlet valakit szolgálhat 😉
Egyébként a szkript a KDE-hez készült, mert az általa megjelenített párbeszédpanelek (ablakok) a KDE-től származnak (a KDialog használatával), de a Gnome / Unity / Cinnamon / Mate használatához adaptálható zenitás, vagy 100% -ban használja a terminálban, egyszerűen a párbeszéd parancs használatával.
És igen, a szkriptnek van még néhány hibája, például ha a szkript kibontja a .rar csomagot, majd valaki erőszakkal bezárja (megöli) a szkriptet, akkor a .rar tartalma nem lesz védett, van néhány részlet, amelyet csiszolni kell ... de hé, azt is ellenőriznünk kell, hogy senki ne ellenőrizhesse a számítógépünket 😀
Befejezésül szeretném tisztázni, hogy NEM vagyok programozó, még kevésbé, nem tartom magam ilyennek, elképzelem, hogy optimalizálhatod a sorokat a kódban, vagy használhatsz valamilyen funkciót a szkript működésének javítására ... de mondtam, hogy nem vagyok programozó 😉
Bármilyen kérdése van ezzel kapcsolatban, nekem azt mondják, bár a szkript nem biztos, hogy szolgálni fogja őket, mert nincs rá szükségük, mindig tanulhatnak róla más tippet 😀
Üdvözlet
PD: tudom élénk azt fogja mondani, hogy túl paranoiás vagyok ... vagy hogy elpazarolom az időmet, de ez nem ilyen. Szerettem volna valami nagyon specifikusat, egy nagyon specifikus biztonsági rendszert, és magam is beprogramoztam ... mennyire geeky? … LOL !!
Ez érdekes, de szerintem az igen / nem kérdés nagyon fing xD
És mit gondolsz, ahelyett, hogy a saját tulajdonú, valódi biztonságot nem kínáló rar-t használnád, cseréld le egy gpg-re, amely egy biztonsági szoftver, amely az évek során több mint bevált, és gyakorlatilag minden disztribúcióban létezik 😉
Egy másik dolog, átadhat egy md5sum karakterláncot, nem kell ideiglenes fájlt létrehoznia. Itt azt is ajánlom, hogy keresse fel a sha-t, amely sokkal biztonságosabb, próbálja ki a terminálban: shasum
Egészségére!
Helló és köszönöm a megjegyzést 😀
A GPG lehetővé teszi, hogy egy könyvtárat csomagoljak az összes tartalmával? Az, hogy valójában csak egyedi fájlokhoz használtam, alkönyvtárakat és fájlokat tartalmazó könyvtárakhoz nem.
ooo ... nagyszerű a shasum, nem ismertem 😀
Folytatom a szkript módosítását, hogy ezt használjam, és… igen !! igaz, egyszerűen: echo "$ PASSWORD" | shasum Már megkaptam a karakterláncot, valójában nem kell fájlba írni :)
Nagyon köszönöm a megjegyzését, már tanultam valami újat new
Üdvözlet
ugyanaz, amit kérdeztem ...
Amire szükséged lenne, az az, hogy kitaláld, hogyan lehet a GPG-t titkosítani egy fájlt, és átadni a jelszót ugyanazon a soron ... például:
gpg -e file.tar.gz –jelszó elpassword bármi
Van ötlet, hogyan kell csinálni? 🙂
A c / gpg könyvtár titkosításához először csomagolnia kell kátránnyal.
akkor ebben az esetben kényelmes a szimmetrikus titkosítás használata a -c paraméterrel (a szimmetrikus és az aszimmetrikus titkosítás különbségét lásd a wikipédiában).
ez olyasmi lehet:
tar -czf destination.tgz forrás_könyvtár / && echo $ passwd | gpg –batch –tömörített szintű 0 -c –jelszó-fd 0
ezzel létrehoz egy tömörített fájlt, amelynek neve: "destination.tgz", és a titkosított fájl neve: "destination.tgz.gpg". a forrás könyvtárat és magát a tömörítést is el kell távolítani a biztonság kedvéért (ellenőrizze a shred parancsot)
visszafejteni:
echo $ passwd | gpg –batch -d –passphrase-fd 0 titkosítási_fájl.tgz.gpg | tar -xz
amely kibontaná a fájlokat az aktuális könyvtárból (akkor az mv felhasználható máshova)
Ha bármilyen kérdése van, válaszoljon erre a megjegyzésre 🙂
Üdvözlet !!
ehm, vigyázzon a kettős kötőjelekre (-) és az egyes kötőjelekre (-) ... van-e mód arra, hogy valamit úgy írjunk, mintha kód lenne, hogy a formátum ne változzon?
prueba de codigo -- -
[kód] teszt kód - - [/ kód]
Bőbeszédűbben költöm el
tömörítés és titkosítás:
tar -czf destino.tgz directorio_fuente/ && echo $passwd | gpg –batch –compress-level 0 -c –passphrase-fd 0
Vegye figyelembe, hogy itt két lépés van: először hozza létre a tömörített fájlt, majd, ha nem történt hiba, folytassa a titkosítással (láncolás a && segítségével)
visszafejteni és kibontani:
echo $passwd | gpg –batch -d –passphrase-fd 0 archivo_cifrado.tgz.gpg | tar -xz
tiszteleg!
Igen, valójában tegnap otthon olvastam a gpg embert, és minden szükséges volt necesitaba
Igazából nem egészen így tettem, nem használtam visszhangot vagy tömörítést, erről írtam egy bejegyzést, csak feltettem.
Köszönöm szépen a segítő barátomat, tényleg.
Csodálatos! Csak valami ilyesmit kerestem, és rábukkantam a cikkére. Az adataim védelme érdekében tesztelni fogom. Ami a számítógép biztonságát illeti, soha nem lehet túl paranoiás. Köszönöm
Köszi haha.
Megértette a forgatókönyv működését, igaz?
Sokkal összetettebbnek tűnik, mint valójában lol.
Köszönöm a megjegyzést, nagyon 😀
Üdvözlet
PS: Valóban, a biztonság soha nem elég hahaha.
Kicsit költségembe került, hogy megértsem (háromszor olvastam el), mivel régóta nem használom a linuxot. De nagyon egyszerű, és mindig jólesik ilyen dolgokat megtanulni. Üdvözlet és még egyszer köszönet.
A fontos az, hogy megértsd hehe. Megpróbáltam mindent rendkívül részletesen elmagyarázni, de azt hiszem, túl sokat nyújtottam be
Köszönöm you
Hú, nagyon jó forgatókönyv 🙂
PS: A paranoia meghaladja a 9000-et! xD
hahahahahahaha, ez vagyok én ... LOL !!
A szkriptet nézve úgy gondolom, hogy az xdialog segítségével megtehető, ha nincs kde-je :)! Egészségére
Ó, nem tudtam az xdialogról ... szemmel kell tartanom 😀
Köszönöm a tájékoztatást.
rar helyett miért ne használná a tar.xz / gz és a gpg fájlokat?
azért van, mert már ritkán van nálad, ahol a CMS
Kiváló @ KZKG ^ Gaara nappal ezelőtt ilyesmire gondoltam, de vizsgákon vagyok, így semmire sem volt időm, és hirtelen meglátom a cikkét ....
Jövő héten kipróbálom 🙂
Köszönöm, minden részlet itt vagyok 😀
xD Nem értettem semmit uu, de ha azt szeretném, hogy a kdialogot helyesen használjam a szkriptekben, hogyan szerezzek üzenetet a KDE értesítőben
Ha üzeneteket szeretne kapni a KDE értesítéseiben, próbálja meg telepíteni a csomagot: libnotify-bin
Ezután egy terminálba helyezi:
notify-send "texto texto texto"
És meglátod, milyen klassz 😀… és ez működik a KDE, a Gnome, a Unity, a Cinnamon, a Mate és az Xfce esetében 😉
Ebben a szkriptben azonban nem az értesítéseket használom, hanem csak a KDialog ablakokat. Terminál típusban:
kdialog
És meglátja az ottani segítséget 😉
Üdvözlet 😀
Nagyon köszönöm o /
Helló, jó hozzászólás, csak egy javaslat, rendben van, hogy az md5 esetén ez nem szabad szemmel látható, de néhány kíváncsi használhat szivárványos táblázatot, hogy megnézze, van-e ott az md5-vé konvertált jelszó, javasoljuk a bcrypt (http://bcrypt.sourceforge.net/), ez csak egy javaslat, bármilyen alkalomra veheti, Üdvözlet.
Köszönöm 😀
Valójában igen, az MD5 nem tökéletes, és vannak, akiknek sikerült jelszavakat szerezni, megnézem ezt az alkalmazást 😉
Köszönöm a hozzászólásod.
a szimmetrikusal csak a kdialogban kéri a jelszót
az aszimmetrikus pedig egy nyilvános kulcs használatával.
Tisztáznom kell, hogy programozónak nincs nyoma.
Igen, már sikerült titkosítanom a GPG-vel (valójában csak egy bejegyzést tettem erről) hehe.
KZKG ^ Gaara Mindig olvastam a hozzászólásodat.
Készítsen egyet az XFCE használatához.
Csók. Drága
Helló és először is üdvözlöm a blogban 😀
hahaha köszönöm, tudom, hogy néha nehézzé válik, mert kissé technikai dolgokat írok, de mindig megpróbálok mindent a lehető legvilágosabban elmagyarázni 🙂
Kísérletezek egy kicsit az XDialog-szal vagy a Zenity-vel, hátha működik az Xfce haha, a teszteket virtuális Xubuntuban fogom elvégezni 🙂
Üdvözlet
Nagyon hasznos ember, köszönöm!
Üdvözlet!
Köszönöm, nagyon sokat segít megvédeni néhány fájlt
A zenitáshoz kellett alkalmazkodnom, mert jelenleg nincs kde: \
Itt hagyom a csontvázat, amelyet a zenitáshoz igazítva fogok használni
http://paste.desdelinux.net/4641
Még egyszer köszönöm és üdvözletem 😀
óóóó, nagyon köszönöm 😀 😀
Emlékszem, hogy valaki ezt kérte, de az Xfce-hez, a Zenity-vel az Xfce-ben működne, igaz?
Igen, csak a parancs maradt a végrehajtandó parancsok hozzáadásához, miután átadták a shasum vagy az md5 jelszavát
Meg kell változtatni, hogy az egyes személyek különböző szükségleteket kapjanak, hogy különböző útvonalakon, különböző parancsokkal megvédjék a különböző dolgokat
Vagy esetleg hozzáad egy másik részt (GUI) a fájlunk biztonsági konfigurációjának létrehozásához
Üdvözlet 😀
Volt időm és xfce-jem (az Archlinux-ban), és már teljesen adaptáltam a szkriptet, ahogy volt, az xfce-hez a zenity-t használva (azt hiszem), mivel amit fentebb hagytam, csak az a csontváz volt, amelyet
http://paste.desdelinux.net/4644
Szerkeszthető, ha van benne egy hiba a pasztából?
Az történik, hogy több grafikus kagylóm van, és nem tudom, hogy tiszta xfce-ben fog működni, például az xubuntuban
Üdvözlet 😀
Érdekes che !!! Jó hozzájárulás !!!!!!
Nagyon új vagyok a programozásban, apránként megtanulom a BASH-t ... de néhány dolog felmerült bennem, és lehet, hogy nem hasznos számodra.
Amikor azt állítja, hogy a lecsupaszított szkriptbe belefoglalták a jelszót, és megbocsáthatatlan lenne, ha valaki kinyitná és onnan olvassa volna ... akkor javasolja ezt az egész trükköt: az MD5 beágyazását védelmi intézkedésként.
Ami nagyon jó az első lépés annak érdekében, hogy megnehezítse a leendő behatoló életét, de nézze meg a következő ötleteket (amelyek akár egymás tetején is alkalmazhatók)
ÖTLET 1) Mi van, ha a jelszót egy fájlba menti a gépére, és nem tárolja azt a szkriptben?
EJ: txt-be tedd a kulcsot és mentsd el a / home / könyvtárba /bla/bla/key.txt
A szkriptben a kulcsot KEY = "$ (cat $ HOME / blah / bla / key.txt)" néven hívja, majd dobja az if $ questionkey = $ KEY szót, majd .. stb stb
Ily módon 3 dolog +1 előnyt ér el:
1) A jelszó soha nem volt a szkriptben. (Kerüli az MD5-öt)
2) A jelszó elérési útja a felhasználónévtől függ. (Aki meg akarja nyitni, bárhova átirányítja) Az esetek 99.9% -ában a szkript meghiúsul.
3) Ha nagyobb biztonságra vágyik, távolítsa el az összes engedélyt a key.txt fájlhoz az összes többi felhasználó számára, kivéve az Önét.
4) Előny: Hordozhatóság a jelszó megváltoztatásához, amikor csak akarja, szkript szerkesztése nélkül. Mivel az ellenőrzés külső fájlon keresztül.
2. ÖTLET. Mit szólnál ahhoz, ha elhomályosítanád az egész bash szkriptet, így nem is lehet megnyitni?
Ennek egyik módja az, hogy kihasználja azt a tényt, hogy C-ben fordítania kell.
Ezután bevezeti a szkriptet egy C-kód belsejébe, és csak annyit tesz, hogy hívja azt a szkriptet (de ez a programon belül van). A fordítás idején ... minden benne van, és a kimenete futtatható ... és nincs több szkript. Van olyan ember, aki már készített egy "forgatókönyvet", amely elvégzi az elhomályosítási folyamatot, ami nagyon praktikus.
További információ itt: http://es.wikibooks.org/wiki/El_Manual_de_BASH_Scripting_B%C3%A1sico_para_Principiantes/Compilar_%28ofuscar%29_BASH_scripts_con_C_-_SHC
ÖTLET 3) Mi lenne, ha egy virtuális feltételt adna a szkriptbe, ahol rendszergazdai jelszóra van szüksége?
Például hajtson végre egy feltételt a "sudo" használatával, majd folytassa a szkript használatával, ha nem állítsa le.
Ily módon az összes védelem hídként esik át a ROOT jelszó felett.
Nos, semmi több ...
Egészségére!!!!!!!! és tartsa a BASH gombot.
HAHAHAHA köszönöm 😀
Valójában most az SHA512-et használom, mivel sokkal jobb, mint az MD5: https://blog.desdelinux.net/como-saber-la-suma-md5-o-sha-de-una-palabra-oracion-o-archivo/
Valamint a GPG mint védelmi eszköz a .RAR használatával történő tömörítés helyett: https://blog.desdelinux.net/como-proteger-datos-con-gpg-de-forma-simple/
A jelszó más fájlba helyezésével az a probléma, hogy akkor egy másik helyre tenné a jelszót igen, de egyszerű szövegben lenne? Ha titkosítanom kell (ami ajánlott), akkor ugyanabban a szkriptben hagyom, nos ... annyi kétségem, hogy valaki meg tudja törni az SHA512 hahahaha-t (nézd meg az 1. linket, és megérted)
Ami az engedélyeket illeti, ha valaki LiveCD-t használ, akkor megnyithatja a .txt fájlt a LiveCD gyökérzete segítségével, így az engedélyek nem teljesen a legjobbak.
A Bash kód elhomályosításáról ... igen, gondoltam erre, és az ötlet NAGY, a probléma az, hogy nem tudom, hogyan kell csinálni, sőt azt sem tudom, hogy meg lehet-e csinálni HAHAHA.
Ó, várj ... most elolvastam a megjegyzés többi részét O_O ... hehe, nem tudtam, hogy meg tudod csinálni. Fogalmam sincs a C-ről vagy a C ++ -ról, de lehet, hogy megér egy próbát lol.
A 3. ötletről, nem rossz 😀
A bejegyzés közzététele óta számos fejlesztést hajtottam végre a szkriptben, 2-et említek a megjegyzés elején található linkekben, a másik az, hogy ha megváltoztat bármely karaktert a szkriptben, akkor az törlődik. És most ezt kell kipróbálnom, hogy elhomályosítsam a hahahaha kódot.
Köszönöm a megjegyzésedet, és… igen, tartsd magad, bash HAHA
WTF !!!
Az SHC-t már használtam ... GE-NI-AL !!!! O_O
Nagyon jó szkript, hé, és ha gyökérellenőrzőt használsz, hogy sudo ./script néven futtathasd a szkriptet
Csak hozzá kell adnia ezt a kódot az elején
http://paste.desdelinux.net/4663
A köszöntés
KZKG ^ Gaara, barátom, úgy gondolom, hogy a magyarázat kiterjesztése nem a probléma, ez jó nekünk, akiknek nincs annyi tudásunk. Azok a cikkek, amelyek nem tanítanak, itt jelentek meg, csak a létezőről adnak információt. Tehát ne mentegesse magát, és legyen még bővebb magyarázat.
Ilyen dolgokhoz használom http://www.truecrypt.org/
Meg tudná osztani valaki a forgatókönyvet? Kíváncsi vagyok, és az összes link nem működik. 🙁
Köszönöm.