Shell
Accounts For Newbies |
This is a tutorial explaining what a shell account is, how you can
get one and some basic commands. If you are thinking that you can
find here shell scripting or exploit hints, you are wrong. Wait
for further tutorials. The first part is just a bunch of questions
with answers. After that I'll do a quick view about shell flavours
and where can you get shells for free.
So here we go.
|
The
Questions That Everybody Asks |
Q:What is a shell account?
A:Ok...I think I won't be needing to explain what an account
is, but let's talk about the shell. You probably are using Windows,
so your shell is command.com and all that cute (crashing) Graphic
environment. Being more precise a shell is the program that translates
and sends your commands to your system's core. This happens because
the core doesn't understand the commands you give. For example,
when you type "cd ..", this command will be first translate to a
low language level by the shell and just after that, sent to the
core (or your CPU would drive mad). Do you imagine how painful would
be using a computer if you hadn't a shell? You needed to use a low
language level, like assembler or even worst (binary) to do something.
If you wanted to do "cd .." you would have to write a bunch of push
mem put mem blabla mem or a huge list of 00101010. Do you really
think that this would work with people? I don't think so. Ok..Ok..
There are many persons that code in assembler, but I'm talking about
ordinary people.
Q:So you are saying that a shell is just a "thing" that translates
my inputs to the core, like command.com. But why do I want to connect
to a remote command.com, I've got my own in my box.
A: People like Shell Accounts because you don't connect
to a Windows box, but to a *nix box. If you can't have linux or
any other *nix System at home, you could get a Shell Account, and
start playing with linux like if it was in your own box.
Q:My friend is a *nix guru and he told me that some shells suck
because they are restricted what's that?
A:There are two kind of shells, the restricted shells and the non-restricted
shells. The difference between both is that usually restricted shells
aren't rented, they are free shells, but in those shells you can't
execute every command you want (for example, using a free shell
they can keep you out of dig, nslookup and telnet programs). On
the therhand using non-restricted shells, you can run any command
you want but these kind of shells are paid (sometimes universities
give non-restricted shells to the students). Hey, but even if you
have a restricted shell don't be worried, some of them are really
good.
Q: So you are saying that I can get a shell without paying for
it?
A: Yes you can. For me the best place is at nether.net (other
host that is a free shell provider is freeshell.org), I'll guide
you through the all process later. Sometimes ISPs also give shell
accounts to their users, so you may have already a shell account
and you don't know, phone to yours ISP's Support and talk with them.
Q: I phoned my ISP asking for a shell account, and they asked
why did I want one. What should I say?
A: Just tell that you really love to surf with Lynx, and
that you want to learn Unix. That should do. If they hang up, just
go for the free shells.
Q: Hey I've got a shell, but how can I know if it's a good shell?
A: I think the answer is relative, it depends from the person who
answer, for me the things that make a good shell are listed below.
-> Telnet (terminal emulator)
-> Nslookup (Gives you information about the host)
-> FTP (File Transfer Protocol, do I need to say anything else?)
-> Finger (gets information about some user)
-> Traceroute (The same as tracerT.exe in Windows, but much better)
-> Dig (probably many of the restricted shells won't let you
use, but don't worry)
-> Netstat (like in windows, lists all sockets and their status)
-> GCC (c compiler, cool to do your own coding)
-> Gzip (to [un]pack stuff)
-> Lynx (Best Browser in the World)
This doesn't mean that a good shell for you needs to have this.
For you a good shell could be just a shell that allows you to telnet,
like I said it's very relative. But if your shell account doesn't
let you use telnet, FTP and GCC, you should get other shell account.
By now you should be getting bored of reading stupid questions,
and even more stupid answers, so let's get in another section. Let's
talk a little about the flavours of Shell Accounts.
|
Quick
View about flavours of Shell Accounts |
There are may kinds of shell accounts, some of them are what we
call home made shells, other are the "standard" shell. Let's talk
about the "standard" shells.
Just for your information
Home made shells are shells that are made by the sysop that owns
the system,
and it's just running in his system.
Like I said there are plenty of shells.You've got:
-> shell: Bourne Shell
-> Bash : Bourne Again Shell
-> Cshell: C Shell
-> Tcsh: Technical C Shell
-> Ksh: Kourne Shell
And many others. (I just listed those because it's the ones you
can get at nether.net)
Each shell has their strong and weak points. For example the Cshell
allows you to type in C commands like if it were normal commands,
that means that if you type printf Hello it will be the same as
echo in other shells(for the ones who don't know C language, printf
stands for printing in the screen the input given). I won't explain
the strong and weak points in each shell, you should be the one
doing that. Just get them at free shell providers at start exploring.
The only hint I'll give you is that Bash is the best shell for beginners,
if you want a more powerful shell just go to the C shell. Start
with bash, explore the system, learn some bash scripting, then start
using other shells. Talk with your friends that have others shells,
ask what they think about it, you're getting the idea, aren't you?;)
If you already have one shell and doesn't know which shell is it,
just type in echo $shell and it will probably be shown your shell's
type. Since this is a quick view, I'll end here. Gonna help you
getting a real cool shell account.
|
Getting
a Shell Account At Nether.net |
So are you ready to get your first shell account? Of course you
are. The only thing I don't like in nether.net is the offline time
that the server sometimes stays. So if you can connect to nether.net
don't worry, since there are plenty of people in that host sometimes
he overflows and goes offline. Just wait some hours and you probably
can go online again.
------ Accessing nether.net ------
Step 1. (Getting your terminal emulator ready to roll)
Open your telnet program, you can find it in windows directory
under the name telnet.exe
Step 2. (Connecting)
Now that you are probably looking to the Telnet Window, select
the Connect menu, and in that menu select Remote System. It will
be shown another box asking you for the hostname, port and term
type. Fill those fields with the information below.
Hostname: nether.net
Port: Telnet (or 23 it's the same)
Term Type: vt100 (it should be already in this value)
You wait a little and...
------ Getting the account ------
Step 3. (Logging in)
Now you should be looking at the nether.net banner. That says:
Kernel SunOS 5.6 Generic_105181-17 on a sun4d
Welcome to nether.net
New to the system? Login as newuser
login:
Now like they say use newuser as login. A program called newuser
will start, helping you creating an account.
Step 4. (Customising Keys)
After a bunch of crap, the newuser program will ask you to Customise
keys. It will be asked the delete key (^H) and the break key (^C).
What is in brackets are the default if you want you can choose
any other. The ^H stands for the delete key (the one that has
the <- symbol on it), and the ^C stands for ctrl+c. Attention
don't write ^H or ^C just press the keys, and that will be the
output.
Step 5. (Selecting Terminal Type)
After you customise the keys you'll be asked to enter your terminal
type, you can select ? and the program will print you all the
terminals support by it, but you should select vt100 or just press
enter. Pressing enter the program will assume that your terminal
is a dumb terminal. There is no problem to select the dumb terminal
because you can change it later.
Step 6. (Personal Data)
It will be asked things like your full name, phone number, birth
date, sex, blablab, your getting the idea. If you want you can
just put a . and press enter. You can also give fake information,
I think that 98% of the users at nether.net did that. In the end
of all the questions you'll be asked if you want to hide the information
from other users. Just say yes or no, I suggest you to say yes.
Step 7. (Selecting Shell)
Now it will be shown a list with the legal shells, just select
one, like I said before if you are new to shell accounts choose
bash shell.
Step 8. (Selecting Login)
Just select your login, like always 8 chars is the max length.
Step 9. (Selecting Password)
Select a password, it will be asked two times to see if the password
is correct. You can change the password later using the passwd command
later.
Step 10. (Accepting Choices)
At this time you should be looking to something like:
full name: |
Full Name |
loginid: your username password: |
<suppressed> |
address: |
your address if you gave any |
telephone: |
your phone number if you gave any |
other e-mail addresses: |
your e-mail address if you gave any |
occupation: |
The same here |
computers: |
Same |
birthdate: |
Some date sex: Also something here |
interests: |
Something how (did you find out about us): How do you find
them |
Privacy switch |
on/off |
shell: |
your shell account terminal: your terminal type erase '^H'
kill '^U' interrupt '^C' |
Type "help" for a list of things you can change.
Select thing to change or "done"?
Now if you agree with all the data just type done and press enter,
or if you want to change something just type the you want to change
field.
Step 11. (After You type Done)
Now the program is checking if there is already your username,
you should be seeing a bunch of numbers scrolling, it's normal don't
get scared... Now if your Login name already exists will be asked
another, if there isn't the system will encrypt your password, and
you'll stay for some time watching a bunch of numbers scrolling.
After that....
Step 12. (Congratulations You have a shell account)
Yep you've got a shell account, now you should be again in the
login sequence and your login name is already written just type
in the password, press enter and have fun.Remember that you can
have many shells has you want. So if you want you can login again
with newuser but instead of choosing a bash shell choose a Cshell
and all the others or a shell bash again...
|
The
commands |
Hi won't talk about of every command that exists in *nix systems,
if I did that the file would become huge. If you want to a big amount
of information about commands check the final notes section. The
basic commands are listed below with their function.
Syntax: command [switches] -> description
man [command] -> display the manual entry about the [command]
you gave.
cd [directory] -> like in DOS it changes your current directory,
to go one directory up you also use .., if you want to return to
your home directory just type cd without the [directory] parameter.
ls [-al] -> ls makes the same as dir in DOS, it lists every
file in the directory, the -al is some of the switch you can use.
Using this two switch the listing will be displayed with hidden
files, file permission, group and owner. To know all the other switches
man ls.
cat [file] -> it's the same as the command type in DOS, it displays
the
content of the [file] given.
logout -> Logs you out from your shell account.
who -> Shows who's online, with information about those users.
There are programs that make you invisible to the who command, but
that's another story, probably in another tutorial.
ps [-aux] -> ps shows every procedure that is running, something
like ctrl+alt+del in windows (not to reboot, but to show what's
running) but much more powerful since it isn't known how we can
run a program without being display in ps. If you run ps with no
switches it will just show your own processes, if you use the switch
-aux it will list every process that is running in the machine.
joe [file] -> joe is a text editor, it edits or creates the
[file] given.
Sometimes the shell providers haven't joe but they should have
vi (another text editor).
This command should be enough for you to start. Also use man command
in the commands that we talk to get a bigger and more detailed description
about it. Good surfing!
|
Final
Notes |
Now what you need is a little of practice, and good books to get
in touch with the commands. One of the best *nix books is UNIX IN
A NUTSHELL. You can find it in the books section at BSRF WWW page
(http://blacksun.box.sk/). For me, this is the best book about
the subject, and since it's free I strongly recommend you to get
it. Another good thing is man. For example, if you want to get some
information about telnet, and how to use it, you just type in:
man telnet
And it will be prompt the manual page about telnet. If you are
using a shell in the freeshell server (freeshell.org) you can also use the command help without any
options. This will call you a menu with the options you can call.
And keep in mind that *nix is Case Sensitive so Man, man and MaN
or .profile and .Profile isn't the same thing.
Appendixes
----------
A) Can I run IRC bots on free shell accounts? (by R a v e N) No!!
Unless you intend to be logged into your shell 24 hours a day. Free
shell providers will kill all of your running processes (running
programs in the Windows world) once you log off.
B) Are there are other places in which I can get a shell account?
(by R a v e N) Of course!
Try
http://www.astalavista.com/privacy/
http://www.astalavista.com/privacy/proxy/
http://www.astalavista.com/privacy/wingate/list.shtml
|
Credits |
Written by:Ghost_Rider
http://blacksun.box.sk/
|
|