Финансовый словарь: что такое Shell компания. Шелл-акаунты для начинающих Быстрое удаление файлов с хостинга

В эпоху деоффшоризации банки не могут позволить себе работать со всеми клиентами. Особенно остро эту тенденцию почувствовали клиенты-нерезиденты, которых пристальнейшим образом изучают отделы compliance всех международных банков. Одна из целей таких проверок – выяснить, не является ли юрлицо так называемой shell компанией .

Что такое shell компания?

Shell компания, говоря упрощенно, это юридическое лицо, которое не ведет реальной хозяйственной деятельности по месту регистрации, не имеет сотрудников и существует, де-юре, в виде папки с документами . Банки, проводя проверку юрлиц – потенциальных и действующих клиентов, выделяют три признака, при соответствии хотя бы одному из них фирму, скорее всего, признают shell компанией и процесс открытия на нее нового или обслуживание существующего счета усложнится (а вероятнее всего банк откажется от сотрудничества с такой компанией вообще).

Три признака shell компании: признак первый – юрисдикция регистрации

Если юридическое лицо зарегистрировано в стране, законодательство которой не предусматривает предоставления компаниями годовой отчетности – это может стать причиной признания фирмы shell компанией. Такими юрисдикциями сейчас являются все классические оффшоры, включая БВО, Белиз, Сейшельские острова. Также могут возникнуть дополнительные вопросы к компаниям формы LP (ограниченные партнерства).

Но есть еще одно условие: «родная» юрисдикция юрлица должна быть включена в утвержденный банком список «рисковых» юрисдикций. Каждый банк самостоятельно составляет перечень таких юрисдикций.

Признак второй: отсутствие substance

Фирма без офиса, персонала и партнеров не может вести реальной экономической деятельности. Учтите, что наличие почтового ящика или контактного номера не заменит офис и не обезопасит фирму от статуса shell компании. Банк обязательно попросит компанию предоставить договор аренды офиса. Важно также наличие реальных сотрудников, а в цифровую эпоху – и интернет сайта.

Иными словами, компании нужен substance , узнать больше об этом понятии вы можете по .

Признак третий: нет реальной хозяйственной деятельности

Юрлицо, не предоставившее в банк документальных доказательств реальной экономической деятельности будет признано shell компанией. Банк хочет понять, чем конкретно занимается компания, как она ведет дела, где совершается ее деятельность. Так как в наше время на слово банки не верят, все нужно доказывать документально. Такими подтверждениями могут быть, к примеру, договора с контрагентами или иные оформленные документально сделки, документы, подтверждающие платежи по договору и прочее.

Необходимо учитывать, что банки будут проверять все, что им предоставят и если в учреждении сочтут, что экономическая деятельность юрлица не значительна и не предоставляет ценности – ее признают shell компанией.

Пока что все вышеизложенное актуально, в первую очередь, для Латвии, где ФКТК (Комиссия рынка финансов и капитала) выпустила разъяснения и рекомендации по поводу работы с shell компаниями. Но нет сомнений, что такой подход станет глобальным: согласно предписаниям OECD, с 2019 года банки не смогут обслуживать структуры без substance. Так что самое время привести свои компании в порядок.

Обычно под шеллом подразумевают скрипт, который взломщики загружают на сервер и с его помощью осуществляется дальнейшее управление сервером. По запросу в поисковике можно найти множество шеллов и их популярность неизбежно растет. Всё больше и больше начинающих хакеров стремятся его закачать хоть куда-нибудь. В подтверждение моим словам приведу скриншот с первого попавшегося в поисковой выдаче сайта.

Как видно из статистики скачиваний одного файла на одном сайте, желание похулиганить есть у многих.

У меня в распоряжении есть другой шелл, который у меня остался в качестве трофея, после устранения последствий взлома на одном из серверов клиента. Сейчас я его загружу в одну из папок на локальном сервере и на примере демо сайта покажу его возможности.

Чтобы увеличить изображение, нажмите на него.

После авторизации в шелле мы попадаем непосредственно в его интерфейс. Перед нами всё, что может понадобиться взломщику для управления сервером. Первоначально открывается страница с файлами в которую загружен шелл. При помощи файлового менеджера можно загрузить, изменить или удалить любой файл в любой папке сервера к которой будет доступ.

На одной из вкладок присутствует возможность управления базами данных. На скриншоте видна учетная запись администратора сайта. А это значит, что можно получить доступ к администраторской панели самого сайта.

Присутствует функция перебора паролей для взлома ftp. Видно, что подбирать пароль можно не только для этого сервера, но и для любого другого.

Основные функции, которые необходимы для управления сервером я показал. Шеллы могут быть разными и не обязательно, что он будет выглядеть именно так, но основной функционал неизменен. Выдержка из возможностей одного шелла:

  • Просмотр, hexview, редактирование, скачивание, загрузка файлов
  • Файловый менеджер (Копирование, переименование, перемещение, удаление, чмод, создание файлов и папок)
  • SQL менеджер (MySql, PostgreSql)
  • Выполнение PHP кода
  • Поиск файлов, поиск текста в файлах
  • Антипоисковик (проверяется UserAgent, если поисковый робот, возвращается 404 ошибка) // шеллы умеют маскировать себя

Эта статья призвана ответить на вопрос Что такое шелл , который так часто возникает у владельцев сайтов. Теперь вы знаете как он выглядит и его возможности.

Если повторить всё вкратце, то шелл - это скрипт, который может управлять файлами и базами данных на сервере, а вы даже не будете подозревать о его существовании.

Шелл-код (англ. shellcode) - это часть кода, встроенного во вредоносную программу и позволяющего после инфицирования целевой системы жертвы получить код командной оболочки, например /bin/bash в UNIX-подобных ОС, command.com в черноэкранной MS-DOS и cmd.exe в современных операционных системах Microsoft Windows. Очень часто shellcode используется как полезная нагрузка эксплоита.

Шелл-код

Зачем это нужно?

Как вы понимаете, мало просто инфицировать систему, проэксплуатировать уязвимость или положить какую-нибудь системную службу. Все эти действия во многих случаях нацелены на получение админского доступа к зараженной машине.

Так что вредонос — это всего лишь способ попасть на машину и получить shell, то есть управление. А это уже прямой путь к сливу конфиденциальной информации, созданию ботнет-сетей, превращающих целевую систему в зомби, или просто выполнению иных деструктивных функций на взломанной машине.

Shellcode обычно внедряется в память эксплуатируемой программы, после чего на него передается управление при помощи использования программных ошибок, таких как переполнение стека или переполнение буфера в куче, или использования атак форматной строки.

Управление шелл-коду передается перезаписью адреса возврата в стеке адресом внедренного шелл-кода, перезаписью адресов вызываемых функций или изменением обработчиков прерываний. Результатом всего этого и будет выполнение шелл-кода, который открывает командную строку для использования взломщиком.

При эксплуатации удаленной уязвимости (то есть эксплоита) шелл-код может открывать на уязвимом компьютере заранее заданный порт TCP для дальнейшего удаленного доступа к командной оболочке. Такой код называется привязывающим к порту (англ. port binding shellcode).

Если же шелл-код подключается к порту компьютера атакующего (с целью обхода или просачивания через NAT), то такой код называется обратной оболочкой (reverse shell shellcode).

Способы запуска шелл-кода в память

Существуют два способа запуска шелл-кода в память на исполнение:

  • Метод position-independent code (PIC, позиционно независимый код) - это код, который использует жесткую привязку бинарного кода (то есть кода, который выполнится в памяти) к определенному адресу или данным. Шелл-код - это по сути PIC. Почему жесткая привязка так важна? Шелл не может знать, в каком именно месте оперативной памяти будет располагаться, поскольку во время выполнения различных версий скомпрометированной программы или малвари они могут загрузить шелл-код в разные ячейки памяти.
  • Метод Identifying Execution Location («Определяй свое место выполнения») заключается в том, что шелл-код должен разыменовать базовый указатель при доступе к данным в позиционно независимой структуре памяти. Добавление (ADD) или вычитание (Reduce) значений от базового указателя позволяет безопасно получить доступ к данным, которые входят в состав шелл-кода.

В этом руководстве объясняется, что такое шелл-аккаунт, как получить один, и некоторые основные команды. Если вы думаете, что найдете здесь описание оболочки или трюки с эксплоитами, то вы ошибаетесь. Ждите других руководств. Первая часть представляет собой лишь связку вопросов с ответами. После того, как я сделаю небольшой обзор по теме, я расскажу вам где вы можете бесплатно получить доступ к оболочке. Итак, чего мы ждем?

Вопросы, Которые Все Задают

Q: Что такое шелл-аккаунт?

A: Окей... я думаю, не нужно объяснять, что такое аккаунт, поэтому давайте лучше поговорим о шелле (оболочке). Вы вероятно пользуетесь Windows, значит вашей оболочкой являются command.com и Графическая среда. Более точно будет сказать так: оболочка - подпрограмма, которая переводит и посылает ваши команды ядру системы. Все это нужно поскольку ядро не понимает команды, которые вы даете. Например, когда вы вводите "cd ..", эта команда будет переведена оболочкой на язык низкого уровня и передана ядру (в противном случае, для управления вашим CPU нужно быть как минимум сумасшедшим). Вы представляете себе, каким болезненным занятием было бы использование компьютера, не будь у вас оболочки? Чтобы что-то сделать вам пришлось бы использовать язык низкого уровня, подобный ассемблеру или того похуже (двоичный код). Для выполнения команды "cd .." вам нужно было бы написать: push mem put mem blabla mem или огромный список вида 00101010. Вы и правда думаете, что люди согласились бы так работать? Я так не думаю. Ладно..ладно.. Есть много людей, программирующих на ассемблере, но я говорю об обычных людях.

Q: Итак, вы говорите, что оболочка - это всего лишь "вещь", переводящая вводимые мной команды в код, понятный процессору, подобно тому, чем занимается command.com. Но зачем мне тогда подключаться к удаленному command.com, если у меня есть свой собственный на моей машине.

A: Люди, заводящие себе шелл-аккаунты, подключаются не к Windows машинам, а к *nix машинам. Если у вас нет linux или любой другой *nix системы на домашней машине, то вы могли бы получить шелл-аккаунт и начать играть с linux так, как будто он стоит на вашей тачке.

Q: Мой друг, *nix гуру, сказал мне, что многие из таких оболочек - отстой, потому что они имеют ограниченные возможности. Что это означает?

A: Существует два типа оболочек - ограниченные и неограниченные. Различия между ними - за ограниченные оболочки обычно платить не нужно, они раздаются бесплатно, но в таких оболочках вы можете выполнить далеко не каждую команду (например, они могут запретить вам пользоваться nslookup и telnet программами). Совсем другая ситуация обстоит с неограниченными оболочками, вы можете выполнить любую команду, какую только захотите, но этот тип оболочек - платен (иногда неограниченные оболочки дают студентам университетов). Но даже если у вас есть только ограниченная оболочка, то не стоит расстраиваться - некоторые из них и вправду хороши.

Q: Итак, вы хотите сказать, что я могу получить оболочку, ничего не заплатив за это?

A: Да, можете. Я считаю лучшим местом, где можно ее получить, nether.net (еще один хост, раздающий бесплатные шеллы - это freeshell.org), я расскажу об этом процессе позже. Иногда ISP также дают шелл-аккаунты своим пользователям, так что, возможно, у вас уже есть доступ к шеллу, просто вы об этом не знаете. Позвоните в службу технической поддержки вашего ISP и спросите об этом.

Q: Я позвонил своему ISP с требованием предоставить мне шелл-аккаунт, и они спросили зачем он мне нужен. Что я должен ответить?

A: Просто скажите, что вам нравится серфить Интернет при помощи Lynx, и что вы хотите изучить Unix. Это должно сработать. Но если они вас пошлют, то просто сходите и получите бесплатную оболочку.

Q: Эй, у меня есть оболочка, но как мне узнать хорошая она или нет?

A: Я думаю, что однозначного ответа на этот вопрос быть не может, все зависит от человека, который его задал. Лично для меня хорошей оболочкой является та, в которой я могу делать все ниже перечисленные вещи.
-> Telnet (эмулятор терминала)
-> Nslookup (Дает вам информацию о хосте)
-> FTP (Протокол Передачи Файлов, комментарии излишни, так ведь?)
-> Finger (Дает информацию о конкретном пользователе)
-> Traceroute (То же, что и tracerT.exe в Windows, но гораздо лучше)
-> Dig (вероятно, многие оболочки не позволяют использовать это, но
не стоит об этом беспокоиться)
-> Netstat (как и в windows, список всех сокетов и их статус)
-> GCC (c компилятор, круто для создания собственных программ)
-> Gzip (утилита для расзапаковки файлов)
-> Lynx (Лучший Браузер в Мире)

Это отнюдь не означает, что для вас оболочка с такими возможностями будет хорошей. Возможно для вас хорошей оболочкой будет та, которая позволит вам всего лишь использовать telnet, как я уже говорил раньше - трудно дать однозначный ответ на этот вопрос. Но если ваш шелл-аккаунт не позволяет вам использовать telnet, FTP и GCC, то вам нужно получить другой шелл-аккаунт.

Ну, я думаю, вы уже достаточно раздражены, прочитав кучу глупых вопросов и еще более глупых ответов, поэтому позвольте мне перейти к следующему
разделу. Давайте поговорим немного о разновидностях шелл-аккаунтов.

Быстрый Обзор Разновидностей Шелл-Аккаунтов

Здесь представлены возможные типы шелл-аккаунтов, одни из них мы называем домашними оболочками, другие "стандартными" оболочками. Давайте поговорим о "стандартных" оболочках.

Просто для общего развития

Домашние оболочки - это оболочки, созданные системным оператором, владеющим системой, и они просто работают на его системе. Как я уже сказал выше, существует много оболочек. Вы имеете:
-> shell: Bourne Shell
-> Bash: Bourne Again Shell
-> Cshell: C Shell
-> Tcsh: Technical C Shell
-> Ksh: Kourne Shell
И многие другие. (Я указал только эти, потому что только их вы можете получить на nether.net). Каждая оболочка имеет преимущества и недостатки. Например, Cshell позволяет вам вводить C команды так, как если бы они были обычными командами, то есть если вводите printf Hello, то результат этой команды будет такой же как и у команды echo в других оболочках (для тех, кто не знаком с языком C, поясняю, printf отображает на экране текст, идущий следом за этой командой). Я не смогу описать преимущества и недостатки каждой оболочки, это вам придется выяснить самим. Просто получите одну из них на хостах, предоставляющих бесплатный доступ к оболочке и начинайте изучение. Я лишь могу вам порекомендовать Bash - это лучшая оболочка для начинающих пользователей, но если вы хотите обзавестись более мощной оболочкой, то получите доступ к C оболочке. Начните с bash, изучите систему, научитесь писать скрипты для bash, а затем приступайте к использованию других оболочек. Поговорите с вашими друзьями, спросите какие оболочки используют они, чем они им нравятся. Ну что, поняли идею?;) Если у вас уже есть одна оболочка, но вы не знаете что это за оболочка, то просто введите echo $shell и это, вероятно, покажет тип используемой вами оболочки. Так как это краткий обзор, то на этом я закончу разговор по этой теме. Это должно помочь вам получить реально крутой шелл-аккаунт.

Получение Шелл-Аккаунта На Nether.net

Итак, вы готовы получить свой первый шелл-аккаунт? Ну конечно готовы. Единственная вещь, которую я не люблю в nether.net - это время оффлайна, то есть сервер иногда бывает недоступен. Если сможете подключиться, то можете дальше не беспокоиться, просто иногда на nether.net отвисает слишком много народу - он становится переполнен и уходит в оффлайн. Просто подождите какое-то время и подключайтесь снова.

Шаг 1. (Подготовка вашей терминальной программы)

Откройте вашу telnet программу, вы можете обнаружить ее в директории windows под именем telnet.exe

Шаг 2. (Подключение)

Теперь, вы уже вероятно успели запустить свой Telnet-клиент, если так, то выберите меню Подключить, затем там же Удаленная Система. Появится другое окошко, спрашивающее у вас имя узла, порт и тип терминала. Введите в эти поля следующую информацию:

Имя узла: nether.net
Порт: Telnet (или 23 - это то же самое)
Тип терминала: vt100 (это значение должно быть установлено по умолчанию)

Подождите немного и...

Шаг 3. (Подключение)

Теперь вы увидите nether.net банер. Он сообщает:

Kernel SunOS 5.6 Generic_105181-17 on a sun4d
Welcome to nether.net

New to the system? Login as newuser

Теперь, как они и сказали, введите newuser в качестве логина. Программа, называющаяся newuser запустится, и поможет вам в создании аккаунта.

Шаг 4. (Изменение назначения клавиш)

После всего этого дерьма, программа newuser предложит вам изменить функциональные клавиши под свои нужды. Будет запрошена клавиша удаления (^H)
и клавиша прерывания (^C). В скобках клавиши, установленные по умолчанию, но если вы хотите, то вы можете изменить их на любые другие. ^H - это клавиша удаления (та, на которой нарисован символ <-), и ^C - это комбинация клавиш ctrl+c. Внимание, не пишите ^H или ^C, просто нажимайте соответствующие клавиши, и эти символы будут появляться на экране.

Шаг 5. (Выбор Типа Терминала)

После того, как вы измените назначение функциональных клавиш, вас попросят ввести тип вашего терминала, вы можете выбрать? и программа выведет все доступные типы терминалов, но вы должны выбрать vt100 или просто нажать кнопку enter. Нажатие кнопки enter означает, что вы выбрали "немой" терминал. Но это не проблема, потому что позже вы можете его изменить.

Шаг 6. (Персональные Данные)

У вас будут запрошены некоторые вещи, подобно вашему полному имени, номеру телефона, дате рождения, полу, блаблабла, ну, я думаю, понятно. Если вы хотите, то вы можете на все вопросы ввести, например, символ "." и нажать на кнопку enter. Вы также можете вводить ненастоящие данные, и я уверен,
что так делает 98% пользователей nether.net. В конце всех вопросов вас спросят: хотите ли вы скрыть эту информацию от других пользователей. Просто ответьте да или нет, я рекомендую ответить - да.

Шаг 7. (Выбор Оболочки)

Теперь вам покажут список доступных оболочек, просто выберите одну из них, как я уже говорил выше - если вы новичок, то выбирайте оболочку bash.

Шаг 8. (Выбор Логина)

Просто выберите себе логин, максимальная длина - 8 символов.

Шаг 9. (Выбор Пароля)

Выберите пароль, это будет запрошено два раза, чтобы подтвердить правильность введенного вами пароля. Позже вы сможете изменить пароль, используя команду passwd.

Шаг 10. (Подтверждение указанных данных)

На этот раз вашему взору предстанет что-то вроде этого:
full name: Полное Имя
loginid: ваш логин password: <не показывается>
address: ваш адрес, который вы указали
telephone: номер телефона, который вы указали
other e-mail addresses: ваш адрес e-mail, который вы указали
occupation: то, что вы указали
computers: то, что вы указали
birthdate: указанная дата sex: указанный вами пол
interests: что-нибудь
how (did you find out about us): как вы узнали о них
Privacy switch on/off
shell: ваш шелл-аккаунт terminal: тип вашего терминала
erase "^H" kill "^U" interrupt "^C"

Type "help" for a list of things you can change.

Select thing to change or "done"?

Теперь, если вы соглашаетесь со всеми введенными вами данными, нажмите кнопку enter, или, если вы хотите что-либо изменить просто введите то, что вы хотите поменять.

Шаг 11. (Заключительные манипуляции)

Теперь программа проверит, не зарегистрирован ли уже такой логин, вы должны будете увидеть связку меняющихся чисел, все нормально - не пугайтесь... Теперь если пользователь с таким логином уже зарегистрирован, то вам предложат выбрать другой, а если нет, то система зашифрует ваш пароль и вам придется провести еще какое-то время в разглядывании меняющихся чисел. После этого...

Шаг 12. (Поздравляю, у вас теперь есть шелл-аккаунт)

Да, теперь у вас есть шелл-аккаунт, теперь вам нужно снова зайти в систему, ввести свой новый логин, точный пароль, нажать enter и хорошо провести время. Запомните, что вы можете иметь столько оболочек, сколько захотите. Так, если вы хотите, вы можете заново зарегистрироваться в системе как новый пользователь, только вместо выбора bash оболочки выбрать оболочку Cshell или еще какую, или снова выбрать оболочку bash, если вам нужно две..

Команды

Естественно, я не буду описывать все команды, существующие в *nix системах, если бы я сделал это, то этот файл получился бы действительно огромным. Ес-
ли вы хотите получить большое количество информации о командах, то просто не забудьте заглянуть в секцию Заключительные Примечания. Ниже приводятся основные команды с описанием их функций.

Синтаксис: команда [ключи] -> описание

man [команда] -> отображение информации по [команде], которую вы указали.

cd [директория] -> так же, как и в DOS эта команда сменяет текущую директорию, с которой вы работаете, если вы хотите вернуться в домашнюю директорию просто введите cd без параметра [директория].

ls [-al] -> ls выполняет ту же функцию, что и dir в DOS, она выводит список каждого файла в директории, -al - это пара ключей, которые вы можете использовать. Использование этой пары ключей позволяет выводить список всех файлов в директории, включая скрытые, также будут отображены права доступа к файлам, группа и их владельцы. Чтобы узнать все остальные ключи введите man ls.

cat [файл] -> аналогично команде type в DOS, она отображает содержимое указанного [файла].

logout -> Отключает вас от вашего шелл-аккаунта.

who -> показывает, кто в данный момент находится в системе, выводит информацию об этих пользователях. Существует множество программ, делающих вас невидимыми по команде who, но это тема для другого руководства.

ps [-aux] -> ps показывает все запущенные процессы, почти то же, что и ctrl+alt+del в windows (не перезагрузка, а список запущенных программ), но более мощное, неизвестно, как можно запустить программу, чтобы она не отображалась по команде ps. Если вы запустите ps без ключей, то вы увидите только те процессы, которыми владеете непосредственно вы, если вы используете ключ -aux, то будут показаны все процессы, запущенные на машине.

joe [файл] -> joe - это текстовый редактор, он редактирует или создает указанный [файл]. Иногда на хостах поставщиков бесплатных шеллов нет joe, но должен быть другой редактор, например vi.

Этих команд вам должно хватить для начала. Также используйте команду man для получения больших и подробных описаний команд, рассмотренных нами.
Удачного серфинга!

Заключительные Замечания

Теперь все, что вам нужно это побольше практиковаться и обзавестись хорошими книгами, содержащими описание команд. Одной из лучших *nix книг является эта:

UNIX IN A NUTSHELL. Вы можете найти ее в разделе, посвященному книгам на веб-странице BSRF (http://blacksun.box.sk/). Как мне кажется, это лучшая книга по нашей с вами теме, а так как она абсолютно бесплатна, то я настоятельно рекомендую вам обзавестись ею. Другая хорошая вещь - это man. К примеру, если вы хотите получить некоторую информацию о telnet, и о том как его использовать, просто введите:

И вы получите страницу с подсказкой по telnet. Если вы используете оболочку на сервере freeshell (freeshell.org) вы также можете использовать команду help без каких-либо опций. Это вызовет меню с опциями, которые вы можете выбрать. И имейте в виду, что *nix чувствителен к регистру, таким образом Man, man и MaN или.profile и.Profile - это не одно и то же.

Приложения

A) Могу ли я запустить IRC-ботов на бесплатном шелл-аккаунте?
Нет!! Если только вы не собираетесь провисать на шелле 24 часа в сутки. Поставщики бесплатных оболочек прибивают все запущенные вами процессы, сразу же как только вы отключитесь от системы.

B) А есть еще какие-нибудь места, где я могу получить шелл-аккаунт?
Конечно! Попробуйте

В этом руководстве объясняется, что такое шелл-аккаунт, как получить один,
и некоторые основные команды. Если вы думаете, что найдете здесь описание оболочки или трюки с эксплоитами, то вы ошибаетесь. Ждите других
руководств. Первая часть представляет собой лишь связку вопросов с ответами. После того, как я сделаю небольшой обзор по теме, я расскажу
вам где вы можете бесплатно получить доступ к
оболочке. Итак, чего мы
ждем?

Вопросы, Которые Все Задают

Q: Что такое шелл-аккаунт?

A: Окей... я думаю, не нужно объяснять, что такое
аккаунт, поэтому давайте
лучше поговорим о шелле (оболочке). Вы вероятно пользуетесь Windows, значит вашей оболочкой являются command.com и Графическая среда. Более точно
будет сказать так: оболочка - подпрограмма, которая переводит и посылает
ваши команды ядру системы. Все это нужно поскольку ядро не понимает команды, которые вы даете. Например, когда вы вводите "cd ..", эта команда будет переведена оболочкой на язык низкого уровня и передана ядру (в противном случае, для управления вашим CPU нужно быть как минимум сумасшедшим).
Вы представляете себе, каким болезненным занятием было бы использование
компьютера, не будь у вас оболочки? Чтобы что-то сделать вам пришлось бы
использовать язык низкого уровня, подобный ассемблеру или того похуже
(двоичный код). Для выполнения команды "cd .." вам нужно было бы написать:
push mem put mem blabla mem или огромный список вида 00101010. Вы и правда
думаете, что люди согласились бы так работать? Я так не думаю. Ладно..ладно.. Есть много людей, программирующих на ассемблере, но я говорю об обычных людях.

Q: Итак, вы говорите, что оболочка - это всего лишь "вещь", переводящая
вводимые мной команды в код, понятный процессору, подобно тому, чем занимается command.com. Но зачем мне тогда подключаться к удаленному
command.com, если у меня есть свой собственный на моей машине.

A: Люди, заводящие себе шелл-аккаунты, подключаются не к Windows машинам, а
к *nix машинам. Если у вас нет linux или любой другой *nix системы на домашней машине, то вы могли бы получить шелл-аккаунт и начать играть с linux
так, как будто он стоит на вашей тачке.

Q: Мой друг, *nix гуру, сказал мне, что многие из таких оболочек - отстой,
потому что они имеют ограниченные возможности. Что это означает?

A: Существует два типа оболочек - ограниченные и неограниченные. Различия
между ними - за ограниченные оболочки обычно платить не нужно, они раздаются бесплатно, но в таких оболочках вы можете выполнить далеко не каждую
команду (например, они могут запретить вам пользоваться nslookup и telnet
программами). Совсем другая ситуация обстоит с неограниченными оболочками,
вы можете выполнить любую команду, какую только захотите, но этот тип оболочек - платен (иногда неограниченные оболочки дают студентам университетов). Но даже если у вас есть только ограниченная оболочка, то не стоит
расстраиваться - некоторые из них и вправду хороши.

Q: Итак, вы хотите сказать, что я могу получить оболочку, ничего не заплатив за это?

A: Да, можете. Я считаю лучшим местом, где можно ее получить,
nether.net (еще один хост, раздающий бесплатные шеллы - это
freeshell.org), я расскажу об этом процессе позже. Иногда ISP также дают шелл-аккаунты своим пользователям, так что, возможно, у вас уже есть доступ к шеллу, просто вы об
этом не знаете. Позвоните в службу технической поддержки вашего ISP и спросите об этом.

Q: Я позвонил своему ISP с требованием предоставить мне шелл-аккаунт, и они
спросили зачем он мне нужен. Что я должен ответить?

A: Просто скажите, что вам нравится серфить Интернет при помощи Lynx, и
что вы хотите изучить Unix. Это должно сработать. Но если они вас пошлют,
то просто сходите и получите бесплатную оболочку.

Q: Эй, у меня есть оболочка, но как мне узнать хорошая она или нет?

A: Я думаю, что однозначного ответа на этот вопрос быть не может, все
зависит от человека, который его задал. Лично для меня хорошей оболочкой является та, в которой я могу делать все
ниже перечисленные вещи.
-> Telnet (эмулятор терминала)
-> Nslookup (Дает вам информацию о хосте)
-> FTP (Протокол Передачи Файлов, комментарии излишни, так ведь?)
-> Finger (Дает информацию о конкретном пользователе)
-> Traceroute (То же, что и tracerT.exe в Windows, но гораздо лучше)
-> Dig (вероятно, многие оболочки не позволяют использовать это, но
не стоит об этом беспокоиться)
-> Netstat (как и в windows, список всех сокетов и их статус)
-> GCC (c компилятор, круто для создания собственных программ)
-> Gzip (утилита для рас\запаковки файлов)
-> Lynx (Лучший Браузер в Мире)

Это отнюдь не означает, что для вас оболочка с такими возможностями
будет хорошей. Возможно для вас хорошей оболочкой будет та, которая
позволит вам всего лишь использовать telnet, как я уже говорил раньше - трудно дать однозначный ответ на этот вопрос.
Но если ваш шелл-аккаунт не позволяет вам использовать telnet, FTP и
GCC, то вам нужно получить другой шелл-аккаунт.

Ну, я думаю, вы уже достаточно раздражены, прочитав кучу глупых вопросов
и еще более глупых ответов, поэтому позвольте мне перейти к следующему
разделу. Давайте поговорим немного о разновидностях шелл-аккаунтов.

Быстрый Обзор Разновидностей Шелл-Аккаунтов

Здесь представлены возможные типы шелл-аккаунтов, одни из них мы называем
домашними оболочками, другие "стандартными" оболочками. Давайте поговорим
о "стандартных" оболочках.

Просто для общего развития

Домашние оболочки - это оболочки, созданные системным оператором, владеющим
системой, и они просто работают на его системе.
Как я уже сказал выше, существует много оболочек. Вы имеете:
-> shell: Bourne Shell
-> Bash: Bourne Again Shell
-> Cshell: C Shell
-> Tcsh: Technical C Shell
-> Ksh: Kourne Shell
И многие другие. (Я указал только эти, потому что только их вы
можете получить на nether.net). Каждая оболочка имеет преимущества и недостатки. Например, Cshell позволяет
вам вводить C команды так, как если бы они были обычными командами, то есть
если вводите printf Hello, то результат этой команды будет такой же как и у
команды echo в других оболочках (для тех, кто не знаком с языком C, поясняю,
printf отображает на экране текст, идущий следом за этой командой).
Я не смогу описать преимущества и недостатки каждой оболочки, это вам придется выяснить самим. Просто получите одну из них на хостах, предоставляющих
бесплатный доступ к оболочке и начинайте изучение. Я лишь могу вам порекомендовать Bash - это лучшая оболочка для начинающих пользователей, но если вы
хотите обзавестись более мощной оболочкой, то получите доступ к C оболочке.
Начните с bash, изучите систему, научитесь писать скрипты для bash, а затем
приступайте к использованию других оболочек. Поговорите с вашими друзьями,
спросите какие оболочки используют они, чем они им нравятся. Ну что, поняли
идею?;) Если у вас уже есть одна оболочка, но вы не знаете что это за оболочка, то
просто введите echo $shell и это, вероятно, покажет тип используемой вами
оболочки. Так как это краткий обзор, то на этом я закончу разговор по этой
теме. Это должно помочь вам получить реально крутой шелл-аккаунт.

Получение Шелл-Аккаунта На Nether.net

Итак, вы готовы получить свой первый шелл-аккаунт? Ну конечно готовы. Единственная вещь, которую я не люблю в nether.net - это время оффлайна, то
есть сервер иногда бывает недоступен. Если сможете подключиться, то можете дальше не беспокоиться, просто иногда на nether.net отвисает слишком
много народу - он становится переполнен и уходит в оффлайн. Просто подождите какое-то время и подключайтесь снова.

Шаг 1. (Подготовка вашей терминальной программы)

Откройте вашу telnet программу, вы можете обнаружить ее в директории
windows под именем telnet.exe

Шаг 2. (Подключение)

Теперь, вы уже вероятно успели запустить свой Telnet-клиент, если так, то
выберите меню Подключить, затем там же Удаленная Система. Появится другое
окошко, спрашивающее у вас имя узла, порт и тип терминала. Введите в эти
поля следующую информацию:

Имя узла: nether.net
Порт: Telnet (или 23 - это то же самое)
Тип терминала: vt100 (это значение должно быть установлено по
умолчанию)

Подождите немного и...

Шаг 3. (Подключение)

Теперь вы увидите nether.net банер. Он сообщает:

Kernel SunOS 5.6 Generic_105181-17 on a sun4d
Welcome to nether.net

New to the system? Login as newuser

Теперь, как они и сказали, введите newuser в качестве логина. Программа,
называющаяся newuser запустится, и поможет вам в создании
аккаунта.

Шаг 4. (Изменение назначения клавиш)

После всего этого дерьма, программа newuser предложит вам изменить функциональные клавиши под свои нужды. Будет запрошена клавиша удаления (^H)
и клавиша прерывания (^C). В скобках клавиши, установленные по
умолчанию, но если вы хотите, то вы можете изменить их на любые другие. ^H - это клавиша удаления (та, на которой нарисован символ <-), и ^C - это комбинация
клавиш ctrl+c. Внимание, не пишите ^H или ^C, просто нажимайте соответствующие клавиши, и эти символы будут появляться на экране.

Шаг 5. (Выбор Типа Терминала)

После того, как вы измените назначение функциональных клавиш, вас попросят
ввести тип вашего терминала, вы можете выбрать? и программа выведет все
доступные типы терминалов, но вы должны выбрать vt100 или просто нажать
кнопку enter. Нажатие кнопки enter означает, что вы выбрали "немой" терминал. Но это не проблема, потому что позже вы можете его изменить.

Шаг 6. (Персональные Данные)

У вас будут запрошены некоторые вещи, подобно вашему полному имени, номеру
телефона, дате рождения, полу, блаблабла, ну, я думаю, понятно. Если вы
хотите, то вы можете на все вопросы ввести, например, символ "." и нажать
на кнопку enter. Вы также можете вводить ненастоящие данные, и я уверен,
что так делает 98% пользователей nether.net. В конце всех вопросов вас
спросят: хотите ли вы скрыть эту информацию от других пользователей. Просто ответьте да или нет, я рекомендую ответить - да.

Шаг 7. (Выбор Оболочки)

Теперь вам покажут список доступных оболочек, просто выберите одну из них,
как я уже говорил выше - если вы новичок, то выбирайте оболочку bash.

Шаг 8. (Выбор Логина)

Просто выберите себе логин, максимальная длина - 8 символов.

Шаг 9. (Выбор Пароля)

Выберите пароль, это будет запрошено два раза, чтобы подтвердить
правильность введенного вами пароля. Позже вы сможете изменить
пароль, используя команду passwd.

Шаг 10. (Подтверждение указанных данных)

На этот раз вашему взору предстанет что-то вроде этого:
full name: Полное Имя
loginid: ваш логин password: <не показывается>
address: ваш адрес, который вы указали
telephone: номер телефона, который вы указали
other e-mail addresses: ваш адрес e-mail, который вы указали
occupation: то, что вы указали
computers: то, что вы указали
birthdate: указанная дата sex: указанный вами пол
interests: что-нибудь
how (did you find out about us): как вы узнали о них
Privacy switch on/off
shell: ваш шелл-аккаунт terminal: тип вашего терминала
erase "^H" kill "^U" interrupt "^C"

Type "help" for a list of things you can change.

Select thing to change or "done"?

Теперь, если вы соглашаетесь со всеми введенными вами данными, нажмите кнопку
enter, или, если вы хотите что-либо изменить просто введите то, что вы хотите
поменять.

Шаг 11. (Заключительные манипуляции)

Теперь программа проверит, не зарегистрирован ли уже такой логин, вы должны
будете увидеть связку меняющихся чисел, все нормально - не пугайтесь... Теперь если пользователь с таким логином уже зарегистрирован, то вам предложат
выбрать другой, а если нет, то система зашифрует ваш пароль и вам придется
провести еще какое-то время в разглядывании меняющихся чисел. После этого...

Шаг 12. (Поздравляю, у вас теперь есть шелл-аккаунт)

Да, теперь у вас есть шелл-аккаунт, теперь вам нужно снова зайти в систему,
ввести свой новый логин, точный пароль, нажать enter и хорошо провести
время. Запомните, что вы можете иметь столько оболочек, сколько захотите. Так, если
вы хотите, вы можете заново зарегистрироваться в системе как новый
пользователь, только вместо выбора bash оболочки выбрать оболочку Cshell или еще какую,
или снова выбрать оболочку bash, если вам нужно две..

Команды

Естественно, я не буду описывать все команды, существующие в *nix системах,
если бы я сделал это, то этот файл получился бы действительно огромным. Ес-
ли вы хотите получить большое количество информации о командах, то просто
не забудьте заглянуть в секцию Заключительные Примечания.
Ниже приводятся основные команды с описанием их функций.

Синтаксис: команда [ключи] -> описание

man [команда] -> отображение информации по [команде], которую вы указали.

cd [директория] -> так же, как и в DOS эта команда сменяет текущую директорию, с которой вы работаете, если вы хотите вернуться в домашнюю директорию просто введите cd без параметра [директория].

ls [-al] -> ls выполняет ту же функцию, что и dir в DOS, она выводит список каждого файла в директории, -al - это пара ключей, которые вы можете
использовать. Использование этой пары ключей позволяет выводить список
всех файлов в директории, включая скрытые, также будут отображены права
доступа к файлам, группа и их владельцы. Чтобы узнать все остальные ключи
введите man ls.

cat [файл] -> аналогично команде type в DOS, она отображает содержимое
указанного [файла].

logout -> Отключает вас от вашего шелл-аккаунта.

who -> показывает, кто в данный момент находится в системе, выводит информацию об этих пользователях. Существует множество программ, делающих
вас невидимыми по команде who, но это тема для другого руководства.

ps [-aux] -> ps показывает все запущенные процессы, почти то же, что и
ctrl+alt+del в windows (не перезагрузка, а список запущенных программ),
но более мощное, неизвестно, как можно запустить программу, чтобы она
не отображалась по команде ps. Если вы запустите ps без ключей, то вы
увидите только те процессы, которыми владеете непосредственно вы, если
вы используете ключ -aux, то будут показаны все процессы, запущенные
на машине.

joe [файл] -> joe - это текстовый редактор, он редактирует или создает
указанный [файл]. Иногда на хостах поставщиков бесплатных шеллов нет joe,
но должен быть другой редактор, например vi.

Этих команд вам должно хватить для начала. Также используйте команду man
для получения больших и подробных описаний команд, рассмотренных нами.
Удачного серфинга!

Заключительные Замечания

Теперь все, что вам нужно это побольше практиковаться и обзавестись хорошими
книгами, содержащими описание команд. Одной из лучших *nix книг является эта:

UNIX IN A NUTSHELL. Вы можете найти ее в разделе, посвященному книгам на веб-странице BSRF
(http://blacksun.box.sk). Как мне кажется, это лучшая книга по
нашей с вами теме, а так как она абсолютно бесплатна, то я настоятельно рекомендую вам обзавестись ею.
Другая хорошая вещь - это man. К примеру, если вы хотите получить некоторую
информацию о telnet, и о том как его использовать, просто введите:

И вы получите страницу с подсказкой по telnet. Если вы используете оболочку
на сервере freeshell (freeshell.org) вы также можете использовать команду
help без каких-либо опций. Это вызовет меню с опциями, которые вы можете
выбрать. И имейте в виду, что *nix чувствителен к регистру, таким образом Man, man и
MaN или.profile и.Profile - это не одно и то же.

Приложения

A) Могу ли я запустить IRC-ботов на бесплатном шелл-аккаунте?
Нет!! Если только вы не собираетесь провисать на шелле 24 часа в сутки. Поставщики бесплатных оболочек прибивают все запущенные вами процессы, сразу же
как только вы отключитесь от системы.

B) А есть еще какие-нибудь места, где я могу получить шелл-аккаунт?
Конечно! Попробуйте