Telnet

Влизане

Въпреки че услугата Telnet също е услуга на модела клиент/сървър, нейното по-голямо значение е в реализацията на отдалечено влизане (дистанционно интерактивно изчисление), базирано на протокола Telnet, след това ни уведомете за отдалечено влизане.

Дефиниция

Нека първо да разгледаме какво е влизане: Системата за споделяне на време позволява на множество потребители да използват компютър едновременно. За да се гарантира сигурността на системата и удобството на счетоводството, системата изисква всеки потребител да има отделен акаунт като идентификация за влизане, а системата също така задава парола за всеки потребител. Потребителят трябва да въведе ID и парола, преди да използва системата. Този процес се нарича "влизане". Отдалеченото влизане се отнася до процеса, при който потребителите използват Telnet команди, за да направят временно своя компютър терминал за емулация на отдалечения хост. Терминалът за емулация е еквивалентен на неинтелигентна машина. Той е отговорен само за предаването на всеки знак, въведен от потребителя, към хоста и след това отразяването на всяка изведена информация от хоста на екрана.

Генериране и развитие

Първо можем да си представим услуга, която предоставя отдалечено редактиране на текст. Реализацията на тази услуга изисква сървър, който приема заявки за редактиране на файлове и данни, и клиент, който изпраща тази заявка. машина. Клиентът ще установи TCP връзка от локалната машина към сървъра. Разбира се, това изисква отговор от сървъра и след това изпраща въведената информация (информация за редактиране на файл) към сървъра и чете резултата, върнат от сървъра. Горното е стандартна и често срещана услуга за модел клиент/сървър.

Изглежда, че с модела клиент/сървър на обслужване всички отдалечени проблеми могат да бъдат решени. Реалността обаче не е толкова проста, колкото си мислите. Ако трябва само да редактираме файлове от разстояние, тогава услугата, която току-що замислихме, може да бъде адекватна, но ако нашите изисквания не са толкова прости, ние също искаме да реализираме дистанционно управление на потребителите, дистанционно въвеждане на данни и дистанционна поддръжка на системата, ако искате постигнем всички операции, които могат да бъдат реализирани на отдалечения хост, тогава ще имаме нужда от голям брой специализирани сървърни програми и ще използваме сървърен процес за всяка изчислима услуга. Проблемът, който следва, е: отдалечената машина ще бъде много бърза Претоварена от сървърния процес и потопена в море от процеси (тук изключваме най-специализираните отдалечени машини).

Има ли решение? Разбира се, можем да използваме дистанционно влизане, за да решим всичко това. Ние позволяваме на потребителите да установят сесия за влизане на отдалечена машина и след това да изпълняват команди, за да постигнат същото като при локалните операции. По този начин можем да имаме достъп до всички налични команди на отдалечената система и системният дизайнер не трябва да предоставя множество специални сървърни програми.

Проблемът изглежда има светло бъдеще тук. Използването на дистанционно влизане трябва винаги да решава проблема, но не е лесно да се постигне дистанционно влизане. Компютърните системи, които не вземат предвид мрежовия дизайн, очакват потребителите да влизат само от директно свързани клавиатури и монитори. Добавянето на функции за отдалечено влизане към такива машини изисква модифициране на операционната система на машината, което е изключително трудно и ние се опитваме да го избегнем. Следователно трябва да се съсредоточим върху изграждането на сървърен софтуер за отдалечено влизане, въпреки че това също е по-трудно. Защо е по-трудно да се направи това?

Например: По принцип операционната система присвоява специални значения на някои специални клавиши. Например, локалната система интерпретира „Ctrl+C“ като: „Прекратяване на изпълнявания в момента команден процес“. Но да предположим, че вече сме стартирали сървърния софтуер за отдалечено влизане, „Ctrl+C“ може да не бъде предадено на отдалечената машина, ако клиентът наистина предаде „Ctrl+C“ на отдалечената машина, тогава командата „Ctrl+C“ може да не успее да прекрати локалния процес, което означава, че тук е вероятно да възникне объркване. И това е само един от проблемите, които се срещат.

Но въпреки техническите трудности, системните програмисти успяха да конструират сървърен софтуер за отдалечено влизане, който може да бъде приложен към повечето операционни системи, и да конструират приложен софтуер, който действа като клиент. Обикновено клиентският софтуер отменя локалната интерпретация на всички ключове с изключение на един ключ и съответно преобразува тези локални интерпретации в отдалечени интерпретации. Това прави взаимодействието между клиентския софтуер и отдалечената машина точно като седене на отдалечения хост същото както преди, като по този начин се избягва объркването, споменато по-горе. Единственият ключ за изключение може да върне потребителя в локалната среда.

Сървърът за отдалечено влизане е проектиран като софтуер на ниво приложение и има друго изискване, а именно операционната система трябва да осигурява поддръжка за псевдотерминал (псевдотерминал). Ние използваме псевдотерминали, за да опишем входната точка на операционната система, която позволява на програми като Telnet сървъри да прехвърлят знаци към операционната система и кара знаците да изглеждат като идващи от локална клавиатура. Само чрез използване на такава операционна система сървърът за отдалечено влизане може да бъде проектиран като софтуер на ниво приложение (като сървърен софтуер Telnet), в противен случай локалната операционна система и предаването на отдалечената система няма да могат да идентифицират информацията, предавана от другия страна (тъй като те могат да идентифицират само подчинения. Информацията, въведена на локалната клавиатура), дистанционното влизане ще бъде неуспешно.

Проектирането на сървъра за отдалечено влизане като софтуер на ниво приложение има своите очевидни предимства: по-лесно е да модифицирате и контролирате сървъра, отколкото вграждането на кода в операционната система. Но има и недостатъка на ниската ефективност (съдържанието ще бъде обяснено по-късно). За щастие скоростта, с която потребителите въвеждат информация, не е висока, така че този дизайн все още е приемлив.

Работен процес

Когато използвате Telnet протокол за влизане от разстояние, трябва да бъдат изпълнени следните условия: на локалния компютър трябва да е инсталирана клиентска програма, съдържаща Telnet протокол; IP адреса на отдалечения хост или име на домейн; трябва да знаете ИД за вход и парола.

Услугата за дистанционно влизане в Telnet е разделена на следните 4 процеса:

1) Установете връзка между локалния и отдалечения хост. Процесът всъщност се състои в установяване на TCP връзка и потребителят трябва да знае IP адреса или името на домейна на отдалечения хост;

2) Потребителското име и паролата, въведени на локалния терминал, и всички команди или знаци, въведени по-късно, се преобразуват във формат NVT (NetVirtualTerminal) към отдалечения хост. Този процес всъщност изпраща IP пакет данни от локалния хост към отдалечения хост;

3) Преобразувайте данните в изходен формат NVT от отдалечения хост във формат, приет от локалния, и ги изпратете обратно към локалния терминал, включително входни команди Echo и резултати от изпълнение на команда;

4) Накрая локалният терминал отменя връзката с отдалечения хост. Процесът е да оттеглите TCP връзка.

Съдържанието по-горе обсъжда само най-основните неща за отдалечено влизане. Сложността и трудностите на програмистите са невъобразими за нас. Не знам дали мислите за тях, докато използвате удобно Telnet!

Функция

Използване

Telnet е стандартният протокол и основен метод за услуга за отдалечено влизане в Интернет. Първоначално е разработен от ARPANET и сега се използва главно за интернет сесии. Основната функция е да позволи на потребителите да влизат в отдалечената хост система.

Telnet ни позволява да седнем пред нашия компютър и да влезем в друг отдалечен компютър през Интернет. Този компютър може да е в съседната стая или на другия край на земята. След като влезете в отдалечения компютър, локалният компютър е еквивалентен на терминал на отдалечения компютър. Можем директно да манипулираме отдалечения компютър със собствения си компютър и да се радваме на същата работна власт като локалния терминал на отдалечения компютър.

Основната цел на Telnet е да използва информационните ресурси на отдалечения компютър, с които локалният компютър не разполага. Ако основната цел на дистанционното е да прехвърля файлове между локалния компютър и отдалечения компютър, тогава се използва FTP за сравнение. Ще бъде по-бързо и по-ефективно.

Процес на взаимодействие

Когато използваме Telnet за влизане в отдалечената компютърна система, всъщност се стартират две програми: едната е клиентската програма Telnet, която работи на локалния хост; другата е Telnet сървърна програма, която работи на отдалечения компютър, в който трябва да влезете.

Програмата Telnet клиент на локалния хост изпълнява главно следните функции:

  • Установете TCP връзка с отдалечен сървър.

  • Получаване на локално въведени знаци от клавиатурата.

  • Въведеният низ се преобразува в стандартен формат и се изпраща на отдалечения сървър.

  • Получаване на изходната информация от отдалечения сървър.

  • Покажете тази информация на екрана на локалния хост.

"Обслужващата" програма на отдалечения хост обикновено се нарича "елф". Обикновено чака тихо на отдалечения хост и получава заявка от локалния хост. , Той веднага ще стане активен и ще изпълни следните функции:

  • Уведомете локалния хост, че отдалеченият хост е готов.

  • Изчакайте локалният хост да въведе команди.

  • Отговаря на команди от локалния хост (като показване на съдържанието на директория или изпълнение на програма и т.н.).

  • Изпратете резултата от изпълнението на командата обратно на локалния компютър за показване.

  • Изчакайте отново командата от локалния хост.

В Интернет много услуги приемат такава структура клиент/сървър. За потребителя обикновено е достатъчно да разбере програмата на клиента.

Опасности за сигурността

Въпреки че Telnet е относително прост, практичен и удобен, Telnet не се използва повторно в съвременните мрежови технологии, които обръщат специално внимание на сигурността. Причината е, че Telnet е протокол за предаване на ясен текст, който предава цялото потребителско съдържание, включително потребителски имена и пароли, в ясен текст в интернет, което крие определени рискове за сигурността. Поради това много сървъри избират да деактивират услугата Telnet. Ако искаме да използваме отдалечено влизане в Telnet, трябва да проверим и зададем функцията за разрешаване на услугата Telnet на отдалечения сървър преди употреба.

Протокол

Знаем, че Telnet сървърният софтуер е най-често използваният сървърен софтуер за отдалечено влизане. Това е типична услуга за модел клиент/сървър, която използва протокола Telnet за работа. И така, какво представлява протоколът Telnet? Какви характеристики притежава?

Основно съдържание

Telnet е протокол, разположен на 7-ия слой на OSI модела --- слоя на приложението. Това е протокол, който осигурява емулация на терминал за свързване към отдалечен хост чрез създаване на виртуален терминал TCP/IP протокол. Този протокол изисква удостоверяване чрез потребителско име и парола и е стандартен протокол за услуги за отдалечено влизане в Интернет. Протоколът Telnet може да превърне компютъра, използван от локалния потребител, в терминал на отдалечената хост система. Предлага три основни услуги:

1) Telnet дефинира мрежов виртуален терминал, за да осигури стандартен интерфейс за отдалечената система. Клиентските програми не трябва да познават отдалечената система в детайли, те трябва само да конструират програми, които използват стандартни интерфейси;

2) Telnet включва механизъм, който позволява на клиента и сървъра да договарят опции, и също така предоставя набор от стандартни опции; .

3) Telnet обработва двата края на връзката симетрично, тоест Telnet не принуждава клиента да въвежда от клавиатурата, нито принуждава клиента да показва изход на екрана.

Адаптиране към разнородни

За да се направи възможна интерактивната работа на Telnet между множество операционни системи, е необходимо да имате подробно разбиране на разнородните компютри и операционни системи. Например, някои операционни системи изискват всеки ред текст да завършва с ASCⅡ контролен символ за връщане на каретката (CR), други системи изискват ASCⅡ подаване на ред (LF), а някои системи изискват поредица от два знака за връщане на ред за връщане на каретката (CR ). -LF); За друг пример, повечето операционни системи предоставят на потребителите клавиш за бърз достъп за прекъсване на изпълнението на програмата, но този клавиш за бърз достъп може да е различен във всяка система (някои системи използват CTRL+C, докато други системи използват ESCAPE). Ако хетерогенността между системите не се вземе предвид, знаците или командите, издадени локално, вероятно ще бъдат неточни или грешни, след като бъдат предадени на отдалеченото място и интерпретирани от отдалечената система. Следователно протоколът Telnet трябва да реши този проблем. За да се адаптира към разнородната среда, протоколът Telnet дефинира метода на предаване на данни и команди в Интернет. Тази дефиниция се нарича мрежов виртуален терминал NVT (NetVirtualTerminal). Процесът на неговото приложение е както следва: За изпратени данни: клиентският софтуер преобразува натисканията на клавиши и командните последователности от потребителския терминал в NVT формат и ги изпраща на сървъра, а сървърният софтуер преобразува получените данни и команди от NVT формат към отдалечени места . Изискваният от системата формат; за върнатите данни: отдалеченият сървър преобразува данните от формата на отдалечената машина във формат NVT, а локалният клиент преобразува получените данни във формат NVT в локален формат. За подробната дефиниция на формата NVT, приятелите, които се интересуват, могат да намерят подходяща информация.

Предаване на дистанционни команди

Знаем, че повечето операционни системи предоставят различни клавишни комбинации за прилагане на съответните контролни команди. Когато потребителят въведе тези клавишни комбинации в локалния терминал, локалната система ще изпълни съответните контролни команди, без да използва тези клавишни комбинации като вход. И така, за Telnet, какво използва, за да реализира дистанционно предаване на контролни команди? Telnet също използва NVT, за да дефинира как да прехвърля контролни функции от клиента към сървъра. Знаем, че наборът от символи ASCⅡ включва 95 печатни знака и 33 контролни кода. Когато потребителят въведе локално общ знак, NVT ще го предаде според първоначалното му значение; когато потребителят въведе клавиш за бърз достъп (комбиниран клавиш), NVT ще го преобразува в специален ASCⅡ знак за предаване в мрежата и след това ще достигне до отдалечената машина, след което ще се преобразува в съответните контролни команди.

Причината за разграничаване на нормалния ASCⅡ набор от символи от контролната команда:

1) Това разграничение означава, че Telnet има по-голяма гъвкавост: може да се предава между клиента и сървъра Всички възможни ASCⅡ символи и всички контролни функции;

2) Това разграничение позволява на клиента да специфицира сигнализирането без двусмислие, без да причинява объркване между контролните функции и обикновените знаци. .

Поток на данни

Както споменахме по-горе, има недостатък в проектирането на Telnet като софтуер на ниво приложение, тоест той не е ефективен. Защо е това? Потокът от данни в Telnet е даден по-долу:

Информацията за данни се въвежда от потребителя от локалната клавиатура и се предава на клиентската програма чрез операционната система. Клиентската програма го обработва и го връща на операционната система, а операционната система минава през нея. Мрежово предаване Изпратете данните на отдалечената машина, отдалечената операционна система предава получените данни на сървърната програма и се връща към входната точка на псевдотерминала на операционната система, след като бъде обработена отново от сървърната програма. И накрая, отдалечената операционна система предава данните към приложната програма, която потребителят изпълнява. , Това е пълен процес на въвеждане; изходът ще бъде предаден от сървъра към клиента по същия път. Заради всеки вход и изход компютърът ще превключва средата на процеса няколко пъти и това е много скъпо. За щастие скоростта на въвеждане на потребителя не е висока и все още можем да приемем този недостатък. .

Принудителна команда

Трябва да разгледаме такава ситуация: Да предположим, че локалният потребител изпълнява безкраен цикъл от грешни команди или програми на отдалечената машина и тази команда или програма е спряла да чете входа, тогава буферът на операционната система може да бъде запълнен. Ако е така, отдалеченият сървър вече не може да записва данни на псевдо терминала и евентуално да спре да чете данни от TCP връзката, буферът на TCP връзката В крайна сметка той ще бъде пълен, което ще попречи на потока от данни да потече в тази връзка. Ако горните неща се случат, локалният потребител ще загуби контрол над отдалечената машина.

За да разреши този проблем, протоколът Telnet трябва да използва външно сигнализиране, за да принуди сървъра да прочете контролна команда. Знаем, че TCP използва механизъм за спешни данни, за да приложи външно сигнализиране на данни, така че Telnet трябва само да прикачи запазен октет, наречен дата, и да уведоми сървъра, като позволи на TCP да изпрати сегмент с зададени битове за спешни данни. Това е всичко, сегментът на съобщението, носещ спешни данни, ще заобиколи контрола на потока и ще достигне директно до сървъра. Като отговор на аварийно сигнализиране, сървърът ще прочете и изхвърли всички данни, докато не намери таг за данни. Сървърът ще се върне към нормална обработка, след като срещне знака за данни.

Поради хетерогенността на машините и операционните системи в двата края на Telnet е невъзможно и не трябва да се определя стриктно подробната конфигурация на всяка telnet връзка, в противен случай това ще повлияе значително на адаптивността на Telnet към хетерогенността. Следователно Telnet използва механизъм за договаряне на опции, за да реши този проблем.

Диапазонът от опции на Telnet е много широк: някои опции разширяват общата посока на функцията, а някои системи от опции включват някои незначителни детайли. Например: има опция за контрол дали Telnet работи в режим полудуплекс или пълен дуплекс (голяма посока); има и опция да се позволи на сървъра на отдалечената машина да определи типа на потребителския терминал (малки подробности).

Методът на договаряне на Telnet опциите също е много интересен. Той обработва всяка опция симетрично, т.е. всяка страна може да изпрати заявление за преговори; всяка страна може да приеме или отхвърли приложението. Освен това, ако едната страна се опита да договори опция, която другата страна не разбира, страната, приемаща заявката, може просто да откаже преговорите. Следователно е възможно да се съвместят по-нови, по-сложни версии на Telnet клиентски сървър с по-стари, по-малко сложни версии. Ако и клиентът, и сървърът разбират новите опции, взаимодействието може да се подобри. В противен случай всички те ще преминат към по-малко ефективен, но работещ режим за работа. Всички тези дизайни са за подобряване на адаптирането към хетерогенността, което показва колко важен е Telnet за неговото приложение и развитие.

Някои принципи са разгледани по-горе. Въпреки че ни е трудно да се докоснем до това ниво при използването на Telnet, мисля, че е смислено да ги разберем и това ще ни донесе много просветление. . Нека да разгледаме услугата Telnet на Win2000.

Договаряне на подопция

Някои опции не могат да бъдат изразени просто чрез „активиране“ или „забрана“. Указването на типа терминал е пример. Клиентският процес трябва да изпрати ASCII низ, за ​​да посочи типа терминал. За да се справим с такива опции, трябва да дефинираме механизъм за договаряне на подварианти.

RFC1091[VanBokkelen1989] дефинира как да се изрази механизмът за договаряне на подопция на типа терминал. Първата свързана страна (обикновено клиентският процес) изпраща 3-байтова последователност от знаци, за да поиска активирането на тази опция.

24 (десетичен) тук е идентификационният номер на опцията за тип терминал. Ако получаващата страна (обикновено процесът на сървъра) е съгласна, данните за отговор са:

След това сървърният процес изпраща следния низ:

Този низ пита за типа терминал на клиентския процес. SB е началният команден флаг за преговори на подопция. „24“ в следващия байт означава, че това е подопция на опцията тип терминал (обикновено стойността на опцията след SB е съдържанието, което трябва да бъде изпратено за подопцията). „1“ в следващия байт означава „изпратете вашия тип терминал“. Крайният команден флаг за договаряне на подопция също е IAC, точно както SB е началният команден флаг. Ако типът на терминала е ibmpc, командата за отговор на клиентския процес ще бъде:

Четвъртият байт "0" представлява "моят тип терминал е" (документът AssignedNumbersRFC има формална стойност за дефиницията на типа терминал, но поне между Unix системите типът терминал може да бъде представен от всякакви данни, които другата страна могат да разберат. Докато тези данни са дефинирани в базата данни termcap или terminfo). По време на процеса на договаряне на подопцията на Telnet, типът на терминала се изразява с главни букви и когато сървърът получи низа, той автоматично ще бъде преобразуван в малки букви.

Конфигурация

Всъщност от ниво на приложение Win2000 Telnet услугата няма какво да се каже, по-голямата част от съдържанието може да бъде получено от HELP файла, аз просто поставих Току-що го подредих малко. Win2000 ни предоставя Telnet клиентски и сървърни програми: Telnet.exe е клиентската програма (Клиент), tlntsvr.exe е сървърната програма (сървър) и също така ни предоставя програмата за управление на Telnet сървър tlntadmn.exe.

Услугата Telnet е инсталирана по подразбиране в Windows 2000, но не се стартира по подразбиране. Следното е част от настройките по подразбиране на услугата Telnet във файла HELP:

AllowTrustedDomain: дали да се разреши достъп на потребителите на домейна. Стойността по подразбиране е 1, което позволява достъп на потребителите в надеждни домейни. Може да се промени на 0: потребителите на домейна нямат право на достъп (разрешени са само локални потребители).

Домейн по подразбиране: Можете да зададете всеки домейн, който има доверителна връзка с компютъра. Стойността по подразбиране е ".".

DefaultShell: Показване на местоположението на пътя на инсталацията на shell. Стойността по подразбиране е: %systemroot%\System32\Cmd.exe/q/k

MaxFailedLogins: Показва максималния брой неуспешни опити за влизане, преди връзката да бъде прекъсната. По подразбиране е 3.

LoginScript: Показване на местоположението на пътя на скрипта за влизане в Telnet сървъра. Местоположението по подразбиране е "%systemroot%\System32\login.cmd". Можете да промените съдържанието на скрипта, така че началният екран за влизане в Telnet да бъде различен.

NTLM: NTLM опция за удостоверяване. По подразбиране е 2. Може да има следните стойности:

0: Не използвайте NTLM удостоверяване.

1: Първо опитайте NTLM удостоверяване, ако не успее, използвайте потребителското име и паролата.

2: Използвайте само NTLM удостоверяване.

TelnetPort: Показва порта, на който telnet сървърът слуша telnet заявки. По подразбиране е: 23. Можете също да промените към други портове.

Можете да използвате tlntadmn.exe (програма за управление на Telnet сървър), за да конфигурирате много удобно горните настройки. След конфигуриране трябва да рестартирате услугата Telnet.

NTLM

Когато споменавате telnet, трябва да споменете NTLM. Мисля, че това е и най-неприятното нещо за натрапниците. Дори и да получите администраторския акаунт и парола, мислете просто. Преминаването на NTLM не е лесно и telnet в win2000 използва само NTLM за проверка на самоличността по подразбиране, което ни кара да обръщаме внимание на NTLM, така че какво е NTLM?

Ранният SMB протокол предава пароли в чист текст в мрежата. По-късно се появи и механизмът за удостоверяване "LANManagerChallenge/Response" или накратко LM. Той е много прост и лесен за кракване. Microsoft впоследствие предложи WindowsNT удостоверяване на предизвикателство/отговор. Механизъм, а именно NTLM. Сега има актуализирана система за удостоверяване NTLMv2 и Kerberos.

Процес

1. Клиентът първо криптира локално паролата на текущия потребител, за да стане хеш на паролата

2. Клиентът изпраща собствен акаунт на сървъра. Този акаунт не е криптиран и се предава директно в обикновен текст.

3. Сървърът генерира 16-битово произволно число и го изпраща на клиента като предизвикателство (парола за въпрос; предизвикателство)

4. След това клиентът използва шифрования хеш на паролата, за да шифрова предизвикателството и след това го връща на сървъра. Като отговор (отговор)

5. Сървърът изпраща трите неща на потребителското име, предизвикателството към клиента и отговора, върнат от клиента, към домейн контролера

6. Домейн контролерът използва това потребителско име, за да намери хеша на паролата на потребителя в базата данни за управление на пароли на SAM и след това използва този хеш на паролата, за да шифрова предизвикателството.

Telnet

7. Домейн контролерът сравнява двете криптирани предизвикателства и ако те са еднакви, удостоверяването е успешно.

От горния процес можем да видим, че NTLM изпраща заявка за влизане към Telnet сървъра като текущия потребител, вместо да влиза с акаунта и паролата на администратора на другия, който сте сканирали. Очевидно няма да успеете да влезете. Например вашата домашна машина се казва A (локална машина), машината, която сте хакнали, се казва B (отдалечена машина), вашият акаунт на A е xinxin и паролата е 1234, вие сканирате към управлението на B Потребителският акаунт е Administrator и паролата е 5678. Когато искате да свържете Telnet към B, NTLM автоматично ще използва акаунта и паролата на текущия потребител като идентификационни данни за влизане, за да извърши горните 7 операции, тоест да използва xinxin и 1234 вместо сканиране. Администраторът и 5678, които са пристигнали и всички те се извършват автоматично, изобщо не ви дават възможност да се намесите, така че вашата операция за влизане ще се провали.

Дисплей

Тъй като Telnet сървърът има 3 опции за използване на NTLM, когато свържете Telnet към отдалечена машина, ще се покаже една от следните ситуации:

< p>1) Когато опцията за удостоверяване=0

======================== ===== ======

Microsoft(R)Windows(TM)Версия 5.00(Build2195)

Добре дошли в MicrosoftTelnetService

TelnetServerBuild5.00.99201 .1

вход:

парола:

Когато \ е 0, NTML удостоверяването не се използва, директно въведете потребителското име и паролата, например можете да въведете сканирания администратор и 5678

2) Когато опция за удостоверяване=1

================== ====================

NTLMAuthenticationfailedduetoinsufficientcredentials.Pleaseloginwithcleartextusernameandpassword

Microsoft(R)Windows(TM)Версия 5.00(Build2195)

Добре дошли в MicrosoftTelnetService

TelnetServerBuild5.00.99201.1

вход:

парола:

\Първо опитайте проверка с NTLM идентичност, ако не успее, използвайте потребителското име и паролата. Всъщност за нас този метод не се различава от предишния метод.

3) Когато опцията за удостоверяване=2< /p>

======================================

NTLMAuthenticationfailedduetoinsufficientcredentials.Pleaseloginwithcleartextusernameandpassword

Сървърът позволява само NTL-удостоверяване

Сървърът е затворил връзката

Липсваща връзка с хост.

C:\

\Погледнете внимателно горния дисплей, изобщо няма възможност да въведете вашето потребителско име и парола, така че можете да прекъснете връзката директно и да сканирате паролата като бяло сканиране

Така че за натрапника NTLM е планина пред нас, трябва да се отървем от него. Като цяло имаме следните методи:

1 Променете telnet, като промените конфигурацията на сървъра за отдалечен регистър, променете режима на удостоверяване от 2 на 1 или 0;

2 Използвайте NTLM.exe, стартирайте директно след качване и променете режима на удостоверяване на telnet сървъра от 2 на 1;

3 Създайте сканиран потребител локално, отворете telnet клиента като този потребител и влезте отдалечено;

4 Използвайте софтуер, като opentelnet.exe (необходими са администраторски права и IPC каналът е отворен)

p>

5 Използвайте скриптове като RTCS (изисква администраторски разрешения, но не разчита на IPC канали)

По принцип, горните 5 вида, от които последните два са нашите по-често използвани методи за отваряне на telnet и методът на използване е много прост, командата е както следва:

OpenTelnet.exe\serverusernamepasswordNTLMAuthortelnetport

OpenTelnet.exe\сървър адрес администратор потребителско име парола метод за удостоверяване (попълнете 0 или 1) telnet порт

cscriptRTCS.vbetargetIPusernamepasswordNTLMAuthortelnetport

cscriptRTCS.vbe

Отдалечено влизане

Telnet се използва за дистанционно влизане в Интернет. Може да накара потребителя да седне в Интернет. Пред клавиатурата на компютъра друг компютър, който е влязъл в интернет през мрежата, ги свързва един с друг. Тази връзка може да се случи с компютри в една и съща стая или компютри, които са били онлайн във всички части на света. Традиционно те са свързани. Компютърът и компютърът, който предоставя услуги за всички потребители в мрежата, се нарича сървър (Server), а машината, която използвате, се нарича клиент (Client). Веднъж свързан, клиентът може да се възползва от всички услуги, предоставяни от сървъра. Потребителите могат да изпълняват обичайния интерактивен процес (регистрация за влизане, изпълнение на команди) и могат също така да имат достъп до много специални сървъри, като например търсене на индекси на книги. Могат да се използват различни услуги, предоставяни от различни хостове в Интернет.

Telnet

(telnet)(n.)AterminalemulationprogramforTCP/IPnetworkssuchastheInternet.TheTelnetprogramrunsonyourcomputerandconnectsyourPCtoaserveronthenetwork.YoucanthenentercommandsthroughtheTelnetprogramandtheywillbeexecutedasifyouwereenteringthemdirectlyontheserverconicate ssword.TelnetisacommonwaytoremotelycontrolWebservers.

Команда Telnet

Най-лесният начин да използвате Telnet е да въведете в командния ред:

%telnetremote-име-компютър(илиIP)< /p>

Тук се използва Cshell на системата UNⅨ, тъй като изборът на команда е знакът за процент „%“. Ако използвате команди на други компютърни системи (като: Dos, VAX/VMS, Macintosh), само Има някои разлики в детайлите, но същността е подобна. Ето един основен пример за използване на Telnet:

telnetporky.math.

Опитвам 129.237.128.11...

Connectedtoporky.math

Escapecharacteris'^]'.

SunOSUNⅨ (свински)

вход: wl

парола: xxxxxxx

Последно влизане: вторник, 2805:35 от

SunOSRelease4.1.3_U1(SLIPPERY1)#3:Sun Nov2023:47:23CST1999

Несъответствие.

if:Синтаксис на изрази.

porky/serv/wl%ls

здравей

свинско/serv/wl%

porky/serv/ wl%cd/

свинско/%ls

Mail/dev/home/mnt/sbin/

usr/

Новини/ домейн/home1/net/serv/

променлива/

Запис/etc/kadb*pcfs/sys@

vmunix*

bin@export/lib@printtmp/

bootgofer/lost+found/recordtmp_mnt/

свинско/%

Горният пример е да използвате Telnet за намиране на отдалечен компютър, наречен porky .math. След като открие този компютър, компютърът на потребителя, който е бил онлайн, става един от неговите терминали. В този момент диалоговият прозорец, който се появява на екрана, е същият като терминала, който потребителят свързва към хоста. Потребителят трябва да влезе (login) и да излезе (logout). След влизане може да се даде всяка команда, подходяща за отдалечената система, тъй като "за UNⅨ системата могат да се използват всички стандартни UNⅨ команди (като ls и pwd). Когато потребителят излезе от отдалечената система, той също излиза от Telnet, и може да управлява собствената си локална система.Всъщност Telnet е инструмент, който може да бъде регистриран в отдалечената компютърна система.

Команда

помощ онлайн помощ

отваряне, последвано от IP адреса или името на домейна, за да влезете отдалечено

close обикновено приключва отдалечената сесия и се връща към командния режим

дисплей Показване на работни параметри

mode въведете команден ред или режим на знаци

изпращане изпращане на специални знаци до отдалечения хост (напишете изпращане? за показване на подробни знаци)

задаване на работни параметри (напишете set? за показване на подробни параметри)

информация за състоянието на дисплея на състоянието

превключете, за да промените работните параметри (напишете превключете?, за да покажете подробни параметри)

^] Escape символ (escapecharacter), излезте от сесията при необичайни обстоятелства и се върнете към командния режим

излезте Излезте от telnet и се върнете към локалната машина

z накарайте telnet да влезе в състояние на пауза

< p>; Прекратете командния режим и се върнете към режима на telnet сесия

Проблеми със сигурността на telnet.exe

Препоръчително е да промените разрешенията, да изтриете всички потребители и да запазите само администратори и SYSTEM като всички разрешения

p>

Често задавани въпроси

1. Какво е Telnet? Отговор: Telnet е съкращението на teletypenetwork, което сега се е превърнало в собствено име, указващо протокола и метода за отдалечено влизане, разделени на Telnet клиент и програма Telnet Server. Telnet позволява на потребителите дистанционно да влизат в отдалечения Telnet сървър на локалния Telnet клиент.

2. Каква е функцията на Telnet? Отговор: Telnet предоставя функция за отдалечено влизане, което позволява на потребителите да бъдат на локалния хост. Стартирайте Telnet клиент, можете да влезете в отдалечения Telnet сървър. Командите, въведени локално, могат да се изпълняват на сървъра и сървърът ще върне резултатите на локалния, точно както работите директно на сървърната конзола. По този начин можете да управлявате дистанционно и да работите локално. Контролен сървър.

3. Какви са режимите на работа на Telnet? Отговор: Има четири работни режима за Telnet:

1) Полудуплекс: Клиентът трябва да започне от Процесът на сървъра получава командата GOAHEAD(GA). Сега се използва рядко.

2) Знаци един по един: Клиентът изпраща всеки знак, въведен от потребителя, на сървъра поотделно и сървърът повтаря знака обратно на клиента. Това е методът по подразбиране на повечето Telnet програми. Опцията SUPPRESSGOAHEAD и опцията ECHO трябва да са валидни едновременно.

3) Режим Kludgeline (kludgelinemode): Всеки път, когато потребителят въведе ред с информация, клиентът го изпраща на сървъра веднъж. Този режим се използва, когато една от горните две опции е невалидна.

4) Линеен режим: подобен Методът на квази-пътуване коригира недостатъците на метода на квази-пътуване. По-новата програма Telnet поддържа този метод.

4. Какви са функциите и значенията на опциите SUPPRESSGOAHEAD и ECHO?

Отговор: Ако опцията "GOAHEAD" е активирана, това е полудуплексен режим. За да работите в "един знак наведнъж", трябва да потиснете тази опция, т.е. да активирате" Опцията SUPPRESSGOAHEAD.ECHO прави функцията ехо ефективна.

Когато и двата са активирани едновременно, това означава, че се приема режимът на работа „един знак наведнъж“.

5. Защо понякога Telnet връзката не може да бъде успешно установена? Как да го решим

Отговор: Ако сървърът не е на порт 23, а чака потребителите да се свържат на други портове, Telnet ще се провали в този момент и клиентът трябва да промени свързания порт.

p>

В допълнение Telnet е протокол за прехвърляне на обикновен текст. От съображения за сигурност много защитни стени го деактивират. Ако трябва да влезете отдалечено, можете да настроите защитна стена, за да разрешите Telnet.

6. Telnet се предава в обикновен текст, което крие рискове за сигурността. Какво трябва да направя?

О: Telnet предава цялото потребителско съдържание, включително потребителски имена и пароли, в ясен текст в Интернет, което крие рискове за сигурността, така че много сървъри са дезактивирани Telnet услугата. Но понякога е необходимо да влезете отдалечено в сървъра за работа. Понастоящем можете да изберете програмата SSH (SecureShell) с функция за криптиране.

Related Articles
TOP