Шектелген қабық - Restricted shell

The шектеулі қабық Бұл Unix қабығы интерактивті пайдаланушы сеансына қол жетімді кейбір мүмкіндіктерді немесе а қабықша сценарийі, оның ішінде жүгіру. Бұл қосымша қауіпсіздікті қамтамасыз етуге арналған, бірақ сенімсіз бағдарламалық жасақтаманы орындауға жеткіліксіз. Шектелген режим жұмысы түпнұсқада кездеседі Борн қабығы[1] және оның кейінгі аналогы Баш,[2] және KornShell.[3] Кейбір жағдайларда шектеулі қабық a-мен бірге қолданылады хроот тұтасымен жүйеге қол жеткізуді шектеу үшін түрме.

Шақыру

Борн қабығының шектеулі режимі ш, және оның POSIX-тегі амалдары аудармашы келесі тәсілдердің бірімен шақырылған кезде қолданылады:

  • sh -r    бұл кейбіреулеріндегі «оқу» опциясына қайшы келетінін ескеріңіз ш нұсқалары
  • рш    мұның қайшы келетінін ескеріңіз қашықтағы қабық команда, ол сонымен қатар аталады рш кейбір жүйелерде

Bash режимі Bash келесі тәсілдердің бірімен шақырылған кезде қолданылады:

  • rbash
  • bash -r
  • bash - шектеулі

Сол сияқты KornShell-дің шектеулі режимі оны шақыру арқылы жасалады:

  • ркш
  • ksh -r

Rbash орнату

Кейбір жүйелер үшін (мысалы, CentOS ) арқылы шақыру rbash әдепкі бойынша қосылмаған және пайдаланушы a пәрмен табылмады егер қате тікелей шақырылса, немесе егер кіру сәтсіз болса / etc / passwd файл көрсетеді / bin / rbash пайдаланушының қабығы ретінде.

Атты сілтеме жасау жеткілікті rbash тура бағыттау bash. Бұл Башты тікелей шақырады, бірақ немесе - шектеулі нұсқалары, Bash оны шақырғанын мойындайды rbash және ол шектеулі қабық ретінде пайда болады.

Мұны келесі қарапайым пәрмендермен орындауға болады (root ретінде орындалады, не пайдаланушы түбірі ретінде кіреді, не пайдаланып судо ):

root @ хост: ~ # CD / қоқысroot @ хост: / bin # ln bash rbash

Шектелген операциялар

Шектелген қабықшада келесі операцияларға жол берілмейді:

  • каталогты өзгерту
  • абсолютті жол атауларын немесе көлбеуі бар атауларды көрсету
  • PATH немесе SHELL айнымалысын орнату
  • шығыс бағытын өзгерту

Баш келесі шектеулерді қосады, соның ішінде:[2]

  • функциялар анықтамаларының шектеулері
  • сызылған файл атауларын Bash кіріктірмелерінде қолдануға шектеулер

Шектелген KornShell-дегі шектеулер Bourne шектелген қабықшамен бірдей.[4]

Шектелген қабықтың әлсіз жақтары

Шектелген қабық қауіпсіз емес. Пайдаланушы қабық функциясы бар бағдарламаны іске қосу арқылы шектеулі ортадан шыға алады. Төменде in функциясының мысалы келтірілген VI шектеулі қабықтан қашу үшін пайдаланылатын:

қолданушы @ хост: ~ $ VI
:орнатылды қабық=/ bin /ш:қабық

Немесе жаңа шектеусіз қабықты іске қосу арқылы, егер ол ЖОЛ, мұнда көрсетілгендей:

қолданушы @ хост: ~ $ rbashқолданушы @ хост: ~ $ CD /rbash: CD: шектеуліқолданушы @ хост: ~ $ bashқолданушы @ хост: ~ $ CD /user @ host: / $

Бағдарламалар тізімі

Кәдімгі снарядтардың шектеулі режимдерінен тыс, мамандандырылған снарядтар бағдарламаларына мыналар жатады:

  • rssh - бірге қолданылады OpenSSH, тек белгілі бір файлдарды көшіру бағдарламаларына рұқсат беру, атап айтқанда scp, sftp, rsync, түйіндеме, және рдист
  • смрш, бұл командаларды шектейді sendmail шақыра алады[5]

Сондай-ақ қараңыз

Пайдаланылған әдебиеттер

  1. ^ POSIX sh сипаттамасы
  2. ^ а б GNU Bash нұсқаулығы
  3. ^ ksh нұсқаулығы, Solaris (SunOS 5.10) нұсқаулық беті, Oracle Inc.
  4. ^ ksh (1) нұсқаулық беті, IBM AIX құжаттама жиынтығы
  5. ^ Косталес, Брайан; Ассман, Клаус; Янсен, Джордж; Шапиро, Григорий Нил (2007). Sendmail. Oreilly сериясы (4 басылым). O'Reilly Media, Inc. б. 379. ISBN  9780596510299. Алынған 2012-08-02. [...] шабуылдардың алдын алуға көмек ретінде V8.1 sendmail алдымен ұсынды смрш (сСоңымауыл рэстрикалық шбағдарлама).