Понекогаш програмираме скрипта во Баш и ние сакаме кодот за ова да не биде видлив, односно да не е обичен текст. Кога зборуваме за криење на кодот, точниот поим е замаглување, во мојот случај сакав да го замавнам кодот сценарио што го направив пред извесно време, алатката што ја најдов за ова се нарекува: шц
шц Тоа ни овозможува да го замаглиме кодот, еве ги чекорите за да го користиме:
1. Прво, мора да го преземеме
2. Откако ќе ја преземеме, кликнуваме со десното копче на компресираната датотека и изберете ја опцијата што вели „Екстракт тука“или нешто слично. Ова ќе нè натера да видиме папка наречена shc-3.8.9, еве ви прикажувам скриншот од нејзината содржина
3. Добро, да речеме дека папката е во /home/usuario/Downloads/shc-3.8.9 Па, отвораме терминал и одиме на таа рута (cd "/home/usuario/Downloads/shc-3.8.9"), и инсталацијата започнува тука.
4. Во терминалот што се наоѓа (како што веќе ви реков) во папката shc-3.8.9, за да ја инсталираме оваа апликација, треба да направиме симболична врска на датотеката shc-3.8.9.c a с.ц.ц. затоа го извршуваме следново:
ln -s shc-3.8.9.c shc.c
4. Откако ќе се направи врската, ние извршуваме make install со дозволи за корен (ќе користиме судо):
sudo make install
4. Usе ни ја побара лозинката и ќе почека момент, ќе чека да го притиснеме копчето [И] и притиснете [Внесете], односно дека потврдуваме дека сакаме да го инсталираме софтверот. Откако ова ќе се заврши, ќе се инсталира без проблеми. Ви оставам скриншот од целиот процес на подготовка и инсталација:
sudo make install
es ПОТРЕБНО инсталирајте ги пакетите: gcc y направи5. Готово, ова е за инсталација
Кога ќе го инсталираме, треба само да научиме како да го користиме. Да претпоставиме дека имаме скрипта во нашиот дом наречена скрипта.ш и дека нејзината содржина е следна:
#!/bin/bash
echo "Script de prueba para DesdeLinux.net"
exit
При извршување на оваа скрипта, таа очигледно ќе ни ја покаже пораката во терминалот: «Тест скрипта за FromLinux.net„или не? … Но, сега ќе го замаглиме тој код.
Во терминал го ставаме следново и притиснете [Внесете]:
shc -v -f $HOME/script.sh
И бинго !! спремен
Ова ни создаде две нови датотеки заедно со нашата скрипта, сега ги имаме скрипта.ш.х y скрипта.sh.xc
скрипта.ш.х - » Ова е наша заматена скрипта за баш, ова кога ќе го извршиме ќе го стори истото како и првото што го создадовме, разликата помеѓу нив е што првото ако го отворивме со уредник на текст (нано, Кејт, Гедит, итн.) Може да го видиме јасно нејзината содржина, додека ако се отвориме кон скрипта.ш.х јасно ќе видиме дека не гледаме ништо ... ЛОЛ !!!, односно кодот е „шифриран“ 🙂
скрипта.ш.хк - » Ова е наша скрипта, но на Ц јазик ... можеме да го избришеме ова без да се грижиме затоа што навистина не ни треба, добро, барем не би ми требаше воопшто
Нема што многу друго што навистина да се додаде од техничката страна, само за да појаснам дека колку што знам со овој (криење или замаглување на кодот за баш-скрипта) не ги крши лиценците или нешто слично. Ова го разјаснувам затоа што пред неколку месеци на Фејсбук кога спомнав дека научив да го опсипувам баш-кодот, некои корисници ме предупредија дека со ова се кршат лиценци или нешто слично ... добро, колку што разбрав, лиценците не се нарушуваат со ова
Ништо повеќе за додавање, какво било сомневање или прашање, поплака или предлог, известете ме.
Поздрав
44 коментари, оставете ги вашите
Не дека се кршат лиценците, туку тој престанува да биде слободен софтвер ...
Да секако. Поентата е дека постојат одредени мои лични скрипти кои не сакам другите да ги гледаат, на пример затоа што едно од овие скрипти има обична лозинка за текст од мојот локален MySQL или нешто слично.
НЕ! Не зачувувајте ги вашите лозинки во скрипти!
http://technosophos.com/content/dont-script-your-password-add-simple-prompts-shell-scripts
Всушност, јас ги чувам моите лозинки „скриени“ користејќи SHA (https://blog.desdelinux.net/como-saber-la-suma-md5-o-sha-de-una-palabra-oracion-o-archivo/), тогаш во скриптата ја чувам хаш-лозинката и она што го правам е да ја споредувам лозинката што ја внесува корисникот (ја зачувувам со прочитана), ја добивам збирката SHA и ги споредувам и двете на крајот
Како и да е, ви благодарам многу за врската, веќе ја разгледувам
Со почит
Точно! Предлог-барањето за лозинка е добра алтернатива.
На здравје! Павле.
Но, тоа не обезбедува автоматско и без надзор извршување како што тоа го прави на друг начин. 🙂
Ставањето лозинки и друг пристап или компромитирање податоци во скриптата е голема грешка. Оваа информација треба да биде зачувана во друга датотека, со соодветни дозволи, така што нема да мора да ја замаглувате скриптата за баш. Лесно а?
Проблемот со поседувањето на податоците (променливи за најавување, конф. И сл.) Во друга датотека е што тогаш на „системот“ или „апликацијата“ му требаат 2 датотеки за да функционира, додека ако складирам сè на „безбеден“ начин што е можно поединечна датотека , добро, само би ми требало ... единствена датотека.
Добра практика е да се оддели апликацијата од податоците.
Или поточно, тоа е страшна практика да се кодираат податоците!
http://es.wikipedia.org/wiki/Hard_code
Нема никаква врска со безбедноста ставање код и податоци во иста датотека. И уште повеќе, токму спротивното ако ги имате вашите лозинки таму !!
Трошоците за читање чувствителни информации од друга датотека се занемарливи веднаш до трошоците на процесорот потребни за „враќање“ на вашиот код.
Од друга страна, фрлате цела парадигма на модуларен развој, обложувајќи се на монолитен модел кој, повеќе од докажано, има повеќе проблеми отколку решенија.
И, исто така, ако користите дозволи кои нужно вклучуваат други групи / корисници, исто така ќе ви треба почетна лозинка за да ја извршите првата скрипта.
@KZKG коментарот погоре е одговор на вашиот коментар
@morpheus: тоа е апсолутно во однос на одредена потреба.
Но, има бесплатен софтвер составен во бинарен карактер (што е повеќе од заматено). Фактот дека е бесплатен, значи дека има и извор, но нема никаква врска со замаглување (или составување, што е од суштинско значење ако сакам да стартувам програма C, на пример)
Во случај на компајлиран слободен софтвер, станува збор за барање на јазикот што се користи (ако програмирате во Ц, мора да компајлирате за да работи вашата апликација). И истото, секогаш, ако навистина е слободен софтвер, изворниот код ќе биде достапен.
хум, јас означувам одреден степен на апатија да споделувам код lol за да видам колку на крај почнаа да ги „замаглуваат своите кодови“ за да нè направат позависни од нивните решенија ...
Не велам дека кодот треба да биде заматен или не ... Јас им давам на алатките, секој да ги користи според нивните потреби.
Да се замагли кодот на оваа страница?
Мислам дека е добра идеја да се дистанцираат читателите, бидејќи сметам дека многу од луѓето што го посетуваат овој блог се следбеници на слободен софтвер и затоа не ја споделуваме практиката на затскривање на кодот.
Вие очигледно не ја прочитавте причината за која се расправа KZKG и зошто ја објаснува нејзината потреба да го замагли своето сценарио.
Ви благодариме на KZKG за споделување на откритието!
И така, вирусите почнаа да циркулираат во Линукс ...
Јас лично НИКОГАШ не би користела замаглени скрипти. Не само поради вклучените безбедносни ризици, туку затоа што ако вашата скрипта е премногу скапоцена за споделување, подобро ставете ја во * ulo; сигурно можам да најдам некој што сака да го сподели своето знаење.
Никогаш не би користел заматена скрипта? Па, МНОГУ добро за тебе, НИКОГАШ не би користел замаглено сценарио ... деталот е дека, НИКОГАШ не сум споделил заматено сценарио, далеку од тоа, и таму, драг пријател, е каде грешката е присутна
Кога и да направам нешто во Баш, го споделувам тоа без да ме оптоварува или да ме вознемирува, што веќе го направив во многу написи овде
Добредојдовте на блогот, задоволство е да ве прочитам
Габриел, KZKG ^ Гаара веќе споделува знаење, тој не создава никаков Linux пакет со замаглени скрипти што може да биде повреда на лиценцата, тој открива само апликации што можат или не се корисни за сопствена употреба, не е потребно да се биде груб, што се однесува до вирусите во Linux не е толку едноставна, еве еден добар напис за тоа https://blog.desdelinux.net/virus-en-gnulinux-realidad-o-mito/.
KZKG ^ Gaara Би сакал да напишеш пост за encfs и криптографија користејќи слики, тоа е тема што навистина ми се допаѓа.
На здравје !!!
Ви благодарам
Всушност, не е дека имам доволно знаење за енсф и криптографија, барем не се чувствувам доволно сигурен за да објавам објава и да претпоставам сомнежи дека корисниците можат да имаат
Во оваа тема не е дека јас сум напреден корисник ...
Најмногу што сум направил е да користам GPG за криптирање датотеки, а што се однесува до сликите, најмногу што направив е да „вметнам“ или да сокријам датотека во слика, со што станува очигледно дека кога ќе се отвори сликата со прегледувач на слики, сè е прикажано правилно, дали ова го мислите?
Уште еднаш, многу ви благодарам за вашиот коментар
Ако добро се сеќавам, има заматено првенство во Ц, но не вреди да се користи „опфаскатор“, но тие мораат да ги замаглуваат своите извори без грб.
Што се однесува до shc и вашата скрипта со лозинки ... многу лош начин на работа!
Интересна статија, како и секогаш.
Да, повеќе од еден веќе ми рекоа ЛОЛ !!
Ви благодариме за коментарот
Во суштина, ако ја споделите апликацијата без да ја споделите видливата скрипта, вие би го прекршиле GPL, што бара сè што е генерирано со GPL апликација, да биде GPL. Затоа SHC генерира C, бидејќи тоа е кодот што можете да го споделите.
Со почит
Се согласувам со коментарите на другите читатели: не само што не е добра практика да се чуваат податоци и скрипти заедно, но исто така не е погодна за развој на слободен софтвер.
Прегратка! Павле.
Здраво Пабло
Имам некоја друга заматена скрипта што работи внатрешно на мојот лаптоп, ја замаглувам затоа што едноставно не сакам ако некој од некоја причина успеа да ја копира мојата скрипта на друг компјутер, едноставно не сакам да можат да видат што е тоа содржи, тоа е „безбедносна мерка“ што ја преземам.
Сепак, тука во DesdeLinux објавувам јавно сè или скоро сè што програмирам на Баш, што може да биде интересно.
Како и да е, не е дека сега за замаглување на лична скрипта, за тоа што го правам за лични цели, јас сум непочитувач на SWL далеку од тоа it
Поздрав пријателе
Добри информации. Освен полемиките што се генерираат во коментарите, ми се чини дека информациите треба да продолжат да истражуваат уште малку.
Мислам дека авторот во ниту еден момент од статијата не ни кажува дали е добро или лошо направено или дали треба или не треба да го сториме тоа, тој едноставно ни ја кажува алатката со која може да се направи во случај да биде од корист за некого.
Честитка.
коделаб
Во блоговите на Linuxeros сè е контроверзно, хаха отсекогаш било така.
@ F3niX toе пресечам скриншот со твојот коментар за да го ставам секој пат кога некој ќе направи глупаво споменување на темата.
Забелешка: да видиме кога ќе те најдам на форумите за irc и чакра
ТОЧНО !!
Јас едноставно покажувам / учам / објаснувам нешто ново што научив, на вас е да го искористите ова знаење или не, не ве присилувам далеку од тоа.
Колку што знам, споделувањето знаење е добра работа, нели? 0_oU
Ви благодариме за вашиот коментар, добро е да знаете дека има повеќе од еден или двајца кои ја разбираат вистинската цел на овој напис.
Таму ме стави во тесно xD, пред неколку недели подготвував пост со наслов «Инсталирање и тестирање на Crux» и покрај тоа што инсталацијата беше успешно извршена, јас сум нормален корисник и не знам дали ќе успеам да се справам со сомнежите од трети страни, намерата е да послужам како инструмент за дискусија за доблестите и дефектите на ова дистрибуција и можните решенија за проблемите што можат да се појават помагајќи ни меѓу сите корисници и читатели. Кога ќе го завршам и ќе го испратам на преглед, вие (администраторите) ќе одлучите. Што се однесува до проблемот со криптографијата на сликите, тоа беше исто, благодарам KZKG ^ Гаара за одговорот.
Честитки!
Добро од задоволство, ќе направам објава за тоа
одличен туто брат, сметав дека е многу корисен: 3
за оние кои сакаат да го инсталираат во манџаро линукс и деривати на архлинукс пакетот е во аур со име: shc
Со почит
Извини, пријателе, имав мала скрипта што ги претвораше КАПИТАЛНИТЕ Писма во мали букви што беа во таблата со исечоци (xclip)
сценариото работи нормално кога не е заматено
#! / корпа за отпадоци / баш
xclip -o> R1.txt
мачка R1.txt | tr [: горниот:] [: долниот:]
исфрли ""
rm R1.txt
но кога сакам да ја извршам заматената скрипта
ми вели
./M2м.ш: Операцијата не е дозволена
Завршено (убиено)
Ве молам, помогнете
Дали имате инсталирано xclip?
Треба да се напомене дека тоа е всушност баш компајлер, бидејќи има компајлери .bat или .php.
Не знам дали кодот што произведува е шифриран и затскриен и не издржува на декомпајлер, би требало да се обиде, бидејќи не е моја област не велам да или не, но она што го гледам дека прави е да состави баш, во .c тоа е Можете да го видите кодот, кој, во рамките на заматениот, гледам дека е во редови што личат на експлоатирачка школка, не знам дали тие навистина се замаглени, бидејќи не е побарана лозинка или не знам, master.config каде претходен клучен збор.
пријатели се случува кога ќе ја замаглам мојата скрипта тој да ја креира новата скрипта со поранешна завршница, да ја извршам и дури има и совршено. Но, кога ќе го однесам на друг компјутер со линуз, тој не работи, тој веќе ги има сите дозволи, создавам фрлач и му кажувам дека е терминална апликација, но не работи, ве молиме почекајте навремен одговор
Дали го составивте и дали го извршувате на систем со иста архитектура? Тоа е, ќе ви даде грешка ако ја составивте за да ја замаглите на 32-битен систем, а потоа се обидете да ја извршите на 64-битен систем, или обратно. Ти разбираш?
Не, но јас веќе обезбедив форматирање на истиот компјутер, со ист оперативен систем и тој не работи, дури не испраќа ниту грешка.
Го нарекувам вака со конзола: sudo /home/operations/script.x и ја добив оваа грешка
/home/operaciones/script.x: e } 8- q , K
цел случај
Обидете се да го стартувате БЕЗ компајлирање за да видите дали станува збор за грешка во кодот
За да ја извршите заматената скрипта на други компјутери, треба да ја компајлирате со опцијата «-r Опуштете се на безбедноста. Направете бинарна редистрибуција ', во спротивно таа ќе работи само на машината каде што сценариото беше заматено со SHC.
Пример:
shc -r -f script.sh
Здраво, имам барање, shc може да се инсталира во кој било вид дистрибуција на Linux?, На пример, црвена капа, како би била инсталацијата за оваа?
Ви благодариме!
Здраво на сите, вашите коментари многу ми помогнаа, но јас го имам следниов проблем, кога зафатеноста не ми работи во истиот систем, но со различна архитектура, односно ако го сторам во 32 бита не може да работи во 64 бита . Дали некој знае дали навистина може да се работи на различни архитектури (32 и 64 бита)?