Линук / Уник наредба: ссхд

Име

ссхд - ОпенССХ ССХ даемон

Синопсис

ссхд [- деиктД46 ] [- б битс ] [- ф цонфиг_филе ] [- г логин_граце_тиме ] [- х хост_кеи_филе ] [- к кеи_ген_тиме ] [- о опција ] [- п порт ] [- у лен ]

Опис

ссхд (ССХ Даемон) је програм даемон за ссх (1). Заједно ови програми замењују рлогин и рсх , и обезбедити сигурне шифроване комуникације између два неповерена домаћина преко несигурне мреже. Програми су намијењени да буду што једноставнији за инсталацију и коришћење.

ссхд је демон који слуша везе са клијентима. Обично се покреће приликом покретања из / етц / рц За сваку долазну везу форксује нови демон. Одговарајући демони рукују размјеном кључева, шифрирањем, аутентикацијом, извршавањем команди и размјеном података. Ова имплементација ссхд подржава и протокол ССХ верзија 1 и 2 истовремено.

ССХ протокол Верзија 1

Сваки хост има РСА кључ специфичан за хост (обично 1024 бита) који се користи за идентификацију хоста. Поред тога, када се покрене демон, генерише се серверски РСА кључ (обично 768 бита). Овај кључ се обично регенерише сваког сата ако се користи и никада се не складишти на диску.

Кад год клијент споји демон, одговара својим јавним хост серверима и серверима. Клијент упоређује кључ РСА домаћина са сопственом базом података како би потврдио да се то није променило. Клијент затим генерише 256-битни случајни број. Он шифрира овај случајни број помоћу кључа домаћина и кључа сервера и шаље шифрован број на сервер. Обе стране затим користе овај случајни број као кључ сесије који се користи за шифровање свих даљих комуникација у сесији. Остатак сесије је шифрован помоћу конвенционалне шифре, тренутно Бловфисх или 3ДЕС, а 3ДЕС се користи подразумевано. Клијент бира алгоритам шифровања који ће се користити од оних које нуди сервер.

Затим, сервер и клијент уносе дијалог за потврду идентитета. Клијент покушава да се аутентификује користећи аутентификацију .рхостс, аутентикацију .рхостс у комбинацији са аутентификацијом хоста РСА, аутентификацијом за изазов-одговор РСА или аутентификацијом заснованом на лозинки .

Аутентификација Рхостс је нормално онемогућена јер је у основи несигурна, али се може омогућити у конфигурационој датотеци сервера ако је то потребно. Безбедност система није побољшана, осим ако су рсхд рлогинд и рекецд онемогућени (чиме се потпуно онемогућава рлогин и рсх у машину).

ССХ протокол Верзија 2

Верзија 2 ради слично: Сваки хост има кључ специфичан за хост (РСА или ДСА) који се користи за идентификацију хоста. Међутим, када се покрене демон, не генерише кључ сервера. Обезбеђивање даље се обезбеђује путем Диффие-Хеллман споразума о кључу. Овај кључни споразум резултира кључем за заједничку сесију.

Остатак сесије је шифрован помоћу симетричне шифре, тренутно 128 АЕС, Бловфисх, 3ДЕС, ЦАСТ128, Арцфоур, 192 бит АЕС или 256 бит АЕС. Клијент бира алгоритам шифровања који ће се користити од оних које нуди сервер. Поред тога, интегритет сесије је обезбеђен преко кода за потврду идентификације криптографске поруке (хмац-сха1 или хмац-мд5).

Протокол 2 верзија пружа корисничку базу података (ПубкеиАутхентицатион) или хост клијента (ХостбаседАутхентицатион), методу за потврђивање конвенционалне лозинке и методе засноване на изазову.

Извођење команди и прослеђивање података

Ако се клијент успешно потврди аутентичност, уноси се дијалог за припрему сесије. У овом тренутку клијент може затражити ствари као што су алокација псеудо-тти, прослеђивање Кс11 веза, прослеђивање ТЦП / ИП веза или просљеђивање везе за провјеру аутентичности преко сигурног канала.

Коначно, клијент или захтева шаку или извршење наредбе. Странице затим уносе режим сесије. У овом режиму, било која страна може послати податке у било које вријеме, а такви подаци се прослеђују у / из схелл-а или команде са сервера и корисничког терминала на страни клијента.

Када се кориснички програм прекине и сви прослеђени Кс11 и друге везе су затворене, сервер шаље статус команде за излаз клијенту и обе стране излазе.

ссхд се може конфигурисати помоћу опција командне линије или конфигурационе датотеке. Опције командне линије надређују вриједности наведене у конфигурацијској датотеци.

ссхд преименује своју конфигурацијску датотеку када прими сигнал хангуп-а, СИГХУП се извршава с именом кога је започео, односно, / уср / сбин / ссхд

Опције су следеће:

битс

Одређује број битова у кључу сервера за вероватни протокол верзија 1 (подразумевано 768).

Дебуг мод. Сервер шаље вербосе излазну грешку у системски дневник и не поставља се у позадину. Сервер такође неће радити и само ће процесирати једну везу. Ова опција је намењена само за отклањање грешака за сервер. Вишеструке -д опције повећавају ниво дебаговања. Максимално је 3.

Када је ова опција назначена, ссхд ће послати излаз на стандардну грешку уместо системског дневника.

цонфигуратион_филе

Одређује име конфигурационе датотеке. Подразумевана вредност је / етц / ссх / ссхд_цонфиг ссхд одбија да започне ако не постоји конфигурациона датотека.

логин_граце_тиме

Омогућава аутентичност времена за клијенте (подразумевано 120 секунди). Ако клијент не успе да потврди аутентичност корисника током ових неколико секунди, сервер се прекида и излази. Вредност нуле не указује на ограничење.

хост_кеи_филе

Одређује датотеку са које се чита кључ домаћина. Ова опција мора бити дата ако се ссхд не покрене као роот (пошто нормалне датотеке кључа домаћина обично не могу читати нико осим роот). Подразумевана вредност је / етц / ссх / ссх_хост_кеи за протокол верзија 1 и / етц / ссх / ссх_хост_рса_кеи и / етц / ссх / ссх_хост_дса_кеи за протокол 2. Вероватно је да имате више кључева кључева домаћина за различите верзије протокола и кључ алгоритми.

Одређује да се ссхд покреће из инетд-а. ссхд се обично не покреће од инетд-а, јер мора да генерише кључ сервера пре него што може одговорити клијенту, а то може трајати десет секунди. Клијенти би морали дуго чекати ако се кључ регенерише сваки пут. Међутим, са малим величинама кључева (нпр. 512) помоћу ссхд-а од инетд-а може бити изводљиво.

кеи_ген_тиме

Одређује колико често се регенерише тастер сервера верзија 1 верзија 1 (подразумевано 3600 секунди или један сат). Мотивација за регенерацију кључа прилично често јесте да се кључ не складишти нигдје, а након око сат времена, немогуће је повратити кључ за дешифровање пресретнутих комуникација чак и ако је машина пукнута или физички одузета. Вредност нуле означава да кључ никада неће бити регенерисан.

опција

Може се користити за давање опција у формату који се користи у конфигурационој датотеки. Ово је корисно за спецификацију опција за које не постоји посебна заставица за наредбу.

-п порт

Одређује порт на којем сервер слуша везе (подразумевано 22). Дозвољене су више опција за портове. Портови наведени у конфигурационој датотеки су игнорисани када је специфициран порт за наредбу.

Тихи режим. Ништа се не шаље у системски дневник. Обично је записан почетак, потврђивање аутентичности и прекидање сваке везе.

Тест Моде. Само проверите ваљаност конфигурационог фајла и разумљивост кључева. Ово је корисно за поуздано ажурирање ссхд-а, јер се опције конфигурације могу промијенити.

лен

Ова опција се користи за одређивање величине поља у утмп структури која држи име удаљеног хоста. Ако је ријешено име хоста дуже од лен , умјесто тога ће се користити децимална вриједност са тачкама. Ово омогућава домаћинима која имају веома дуга имена хостова која прелазе ово поље и још увијек се идентификују јединствено. Навођење - у0 означава да само децималне адресе са тачкама треба ставити у утмп датотеку. - у0 такође се користи да спречи ссхд да изводи ДНС захтеве осим ако механизам или конфигурацију за потврђивање то не захтева. Механизми за аутентификацију који могу захтевати ДНС укључују РхостсАутхентицатион РхостсРСААутхентицатион ХостбаседАутхентицатион и користећи опцију од = паттерн-лист у кључној датотеци. Опције конфигурације које захтевају ДНС укључују кориштење УСЕР @ ХОСТ шема у АлловУсерс или ДениУсерс

Када је ова опција специфицирана, ссхд се неће одвојити и не постаје демон. Ово омогућава једноставно праћење ссхд-а

-4

Сила ссхд користи само ИПв4 адресе.

-6

Напади ссхд користе само ИПв6 адресе.

Конфигурациони фајл

ссхд чита податке конфигурације из / етц / ссх / ссхд_цонфиг (или фајл специфициран са - ф на командној линији). Формат датотеке и опције конфигурације описани су у ссхд_цонфиг5.

Процес пријављивања

Када се корисник успешно пријављује, ссхд уради следеће:

  1. Ако је пријављивање на тти-у, а ниједна команда није специфицирана, одштампа се последње време за пријављивање и / етц / мотд (осим ако је спречено у конфигурацијском фајлу или $ ХОМЕ / .хусхлогин погледајте одељак Ск ФИЛЕС).
  2. Ако је пријављивање на тти, забиљежите вријеме пријављивања.
  3. Проверава / етц / нологин ако постоји, штампа садржај и излази (осим роот).
  4. Промене које треба покренути са нормалним корисничким привилегијама.
  5. Подешава основно окружење.
  6. Чита $ ХОМЕ / .ссх / околину ако постоји и корисницима је дозвољено да промијене своје окружење. Погледајте опцију ПермитУсерЕнвиронмент у ссхд_цонфиг5.
  7. Промјене кућног директоријума корисника.
  8. Ако $ ХОМЕ / .ссх / рц постоји, покреће га; иако постоји / етц / ссх / ссхрц, покреће га; у супротном ради каутх. Датотекама `` рц '' добијају протокол Кс11 провјере аутентичности и колачиће у стандардном улазу.
  9. Покреће корисничку школу или команду.

Аутхоризед_Кеис Филе Формат

$ ХОМЕ / .ссх / аутхоризед_кеис је подразумевана датотека која садржи јавне кључеве који су дозвољени за аутентификацију РСА у протоколу верзије 1 и за аутентичност јавног кључа (ПубкеиАутхентицатион) у верзији верзија 2. АутхоризедКеисФиле се може користити за одређивање алтернативне датотеке.

Свака линија датотеке садржи један кључ (празне линије и линије почевши од `# 'су игнорисане као коментари). Сваки јавни кључ РСА се састоји од следећих поља, одвојених размацима: опцијама, битовима, експонентима, модулима, коментарима. Сваки јавни кључ за сваку верзију 2 се састоји од опција, кључа, кодног кључа, коментара. Поље опција је опционо; његово присуство одређује се да ли линија почиње са бројем или не (поље за опције никада не почиње бројем). Поља бита, експонента, модула и коментара дају РСА кључ за протокол верзија 1; поље за коментар се не користи за било шта (али може бити корисно да корисник идентификује кључ). За протокол 2 верзија је `` ссх-дсс '' или `` ссх-рса ''

Имајте на уму да су линије у овој датотеци обично дугачке неколико стотина бајтова (због величине јавног кључа кодирања). Не желите да их упишете; уместо тога, копирајте идентитет.пуб ид_дса.пуб или ид_рса.пуб датотеку и уредите је.

ссхд примењује минималну величину РСА кључног модула за протокол 1 и протокол 2 кључа од 768 бита.

Опције (ако постоје) састоје се од спецификација опција које су одвојене зарезом. Није дозвољено размацивање простора, осим у двоструким наводницима. Подржане су следеће опције за спецификације (обратите пажњу на то да су кључне речи опције неосетљиве):

из = листа образаца

Наводи да поред аутентичности јавног кључа, канонско име удаљеног хоста мора бити присутно у листи шаблона одвојених од зареза (`* 'и`?' Служе као џокер картице). Листа такође може садржавати шаблоне негиране префикцијом их са `! ' ; ако име канонског домаћина одговара негираном образцу, кључ се не прихвата. Сврха ове опције је опционално повећати сигурност: аутентикација јавног кључа сама по себи не верује мрежама или серверима имена или било чему (већ кључу); Међутим, ако неко некако украде кључ, кључ дозвољава уљез да се пријављује са било ког места на свијету. Ова додатна опција чини отежаним коришћењем украденог кључа (поред имена кључа морају бити компромитовани име сервери и / или рутери).

цомманд = команда

Одређује да се команда извршава сваки пут када се овај кључ користи за потврду идентитета. Команда коју пружа корисник (ако постоји) се занемарује. Команда се покреће на пти ако клијент захтева пти; у супротном се води без тти. Ако је потребан 8-битни чист канал, не треба се тражити пти или требати навести но-пти. У команду се може унети цитат цитирајући га са косом сапом. Ова опција би могла бити корисна за ограничавање одређених јавних кључева за обављање само одређене операције. Пример може бити кључ који дозвољава удаљену сигурносну копију, али ништа друго. Имајте на уму да клијент може одредити ТЦП / ИП и / или Кс11 прослеђивање, осим ако су изричито забрањени. Имајте на уму да се ова опција односи на извршавање схелл-а, наредбе или подсистема.

околина = НАМЕ = вредност

Одређује да се стринг додати у окружење приликом пријављивања помоћу овог кључа. Варијабле околине постављају на овај начин надмашују друге вриједности уобичајеног окружења. Дозвољене су више опција овог типа. Обрада животне средине је подразумевано онемогућена и контролише се преко опције ПермитУсерЕнвиронмент . Ова опција је аутоматски онемогућена ако је УсеЛогин омогућен.

но-порт-форвардинг

Забрањује ТЦП / ИП прослеђивање када се овај кључ користи за потврду идентитета. Сви захтеви за пријем портова клијента ће вратити грешку. Ово се може користити, нпр. У вези са командном опцијом.

но-Кс11-прослеђивање

Забрањује Кс11 прослеђивање када се овај кључ користи за аутентификацију. Сваки клијентски захтев Кс11 ће вратити грешку.

но-агент-форвардинг

Забрањује прослеђивање посредника за провјеру аутентичности када се овај кључ користи за потврду идентитета.

но-пти

Спречава алокацију тти-а (захтев за додељивање пти-а неће успети).

пермитопен = хост: порт

Ограничите локално шифрирање `` ссх -Л '' порта тако да се може повезати само са наведеним хостом и портом. ИПв6 адресе се могу специфицирати са алтернативном синтаксом : хост / порт Опције дозвола за дозволе могу се применити одвојене заповијима . Не подударање узорака се обавља на наведеним именима хостова, они морају бити дословни домени или адресе.

Примери

1024 33 12121 ... 312314325 ило@фоо.бар

фром = "*. никсула.хут.фи,! пц.никсула.хут.фи" 1024 35 23 ... 2334 ило @ никсула

цомманд = "думп / хоме", но-пти, но-порт-форвардинг 1024 33 23 ... 2323 бацкуп.хут.фи

алловопен = "10.2.1.55:80", алловопен = "10.2.1.56:25" 1024 33 23 ... 2323

Ссх_Кновн_Хостс Филе Формат

Датотеке / етц / ссх / ссх_кновн_хостс и $ ХОМЕ / .ссх / кновн_хостс садрже јавне кључеве домаћина за све познате хостове. Глобални фајл треба да припреми администратор (опционо), а датотека за корисника се одржава аутоматски: кад год се корисник повезује са непознатим хостом, његов кључ се додаје у датотеку по кориснику.

Свака линија у овим датотекама садржи следећа поља: имена домаћина, битови, експонент, модул, коментар. Поља су раздвојена размацима.

Хостнами су листе шаблона издвојених од зареза ('*' и '?' Делују као џеме); сваки образац, пак, одговара канонском имену домаћина (када се аутентификује клијент) или против корисничког имена (када се аутентикује сервер). Образцу такође може претходити `! ' да указује на негацију: ако се име домаћина подудара са негираним шаблоном, није прихваћено (према тој линији), чак и ако се упореди са другим образцем на линији.

Битови, експонент и модул се узимају директно из кључа РСА домаћина; могу се добити, нпр., из /етц/ссх/ссх_хост_кеи.пуб Поље опционалног коментара наставља се до краја линије и не користи се.

Линије које почињу са `# 'и празне линије се игноришу као коментари.

Приликом извођења аутентичности домаћина, потврда аутентичности се прихвата ако било која одговарајућа линија има одговарајући кључ. Стога је дозвољено (али не препоручује се) да има неколико линија или различите кључеве домаћина за исте називе. Ово ће се неизбежно догодити када се кратки облици имена хоста из различитих домена стављају у датотеку. Могуће је да датотеке садрже конфликтне информације; аутентикација се прихвата ако се у било којој датотеци могу пронаћи валидне информације.

Имајте на уму да су линије у овим датотекама обично стотине знакова и да дефинитивно не желите да ручно уносите кључеве домаћина. Уместо тога, генеришите их скриптом или узимајући /етц/ссх/ссх_хост_кеи.пуб и додајући имена домаћина на предњој страни.

Примери

цлосенет, ..., 130.233.208.41 1024 37 159 ... 93 цлосеенет.хут.фи цвс.опенбсд.орг, 199.185.137.3 ссх-рса АААА1234 ..... =

Такође видети

сцп (1), сфтп (1), ссх (1), ссх-адд1, ссх-агент1, ссх-кеиген1, логин.цонф5, модули (5), ссхд_цонфиг5, сфтп-сервер8

Т. Илонен Т. Кивинен М. Сааринен Т. Ринне С. Лехтинен "Архитектура ССХ протокола" драфт-иетф-сецсх-архитектура-12.ткт Јануар 2002. радови у току материјал

М. Фриедл Н. Провос ВА Симпсон "Диффие-Хеллман група за проток протокола транспортног слоја ССХ" драфт-иетф-сецсх-дх-гроуп-екцханге-02.ткт јануар 2002 радови у току материјал

Важно: Користите команду човјека ( % човјек ) да бисте видели како се на вашем рачунару користи команда.