LIS508
This presentation is the property of its rightful owner.
Sponsored Links
1 / 60

LIS508 using Debian GNU/Linux PowerPoint PPT Presentation


  • 65 Views
  • Uploaded on
  • Presentation posted in: General

LIS508 using Debian GNU/Linux. Thomas Krichel 2010-01 -10. ssh. The main protocol we use to communicate with the server is the secure shell “ssh”. The server has to have ssh server software installed. Any rented server will have this. Otherwise run “aptitude install openssh-server”.

Download Presentation

LIS508 using Debian GNU/Linux

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


Lis508 using debian gnu linux

LIS508using Debian GNU/Linux

Thomas Krichel

2010-01-10


Lis508 using debian gnu linux

ssh

  • The main protocol we use to communicate with the server is the secure shell “ssh”.

  • The server has to have ssh server software installed.

  • Any rented server will have this.

  • Otherwise run “aptitude install openssh-server”


Lis508 using debian gnu linux

installing putty

  • Go to your favorite search engine to search for putty.

  • If you have administrator rights install the installer version.

  • Since you have already installed winscp, you should have no further problems.


Lis508 using debian gnu linux

putty options

  • In the window/translation choose UTF-8, always.

  • Find out what the size of your screen for the font that you are using, and save that in your session.

  • For wotan, the port is 22, ssh.

  • You can choose to disable the annoying bell.


How is ssh secure

how is ssh secure

  • ssh uses public key cryptography.

  • It can cope with serveral crytographic algorithm. The most common one is rsa.

  • In public key cryptography, you have two keys.

  • One is the private key.

  • The second is the public key.


Private key

private key

  • Using the private key, I can decrypt a message that has been encrypted using my public key.

  • Somebody can check that I am who I claim to be because by keeping the private key private, I am the only one who can decrypt it.


Authorizing keys

authorizing keys

  • If you want to give your friend access to an account, you can ask her for her public key.

  • You will then authorize the public key by storing it in a file with authorized keys.

  • When an somebody comes along and pretends to be your friend you can challenge her to decode a message encoded with your friends public key.


Public key

public key

  • Using the public key, I can encrypt a message and send it to you.

  • Once the message is encrypted, I can not decode it any more. The public key can not be used to decode a message.

  • This is the reason why the encryption key can be made public.


Lis508 using debian gnu linux

communication with the server

  • Assume we are using a Microsoft Windows client.

  • For file editing and manipulation, we use putty.

  • For file transfer, we use winscp.

  • Both are available on the web.


Lis508 using debian gnu linux

password authentication

  • When we login to a machine, we give a password for the user that we login as.

  • This a common form of authenticiation.

  • The idea is that we keep the password secret.


Lis508 using debian gnu linux

key authenticatiton

  • ssh uses public key

  • This a common form of authenticiation.

  • The idea is that we keep the password secret.


Lis508 using debian gnu linux

key creation

  • “ssh-keygen” is the command to use to create a key. Answer all questions with the <ENTER> key.

  • “cd .ssh” and “ls -l” shows you the contents of the directory .ssh created in the first step.

  • The file “id_rsa.pub” has your public key.


Lis508 using debian gnu linux

authorized_keys

  • In .ssh, you can maintain a file “authorized_keys” that contains the public keys of all users you authorize to access the account, one line per user.

  • “cp id_rsa.pub authorized_keys” will authorize yourself. Then “ssh [email protected] will allow you to login again as you on wotan.

  • You can also create a public key with putty.


Lis508 using debian gnu linux

issuing commands

  • While you are logged in, you talk to the computer by issuing commands.

  • Your commands are read by command line interpreter.

  • The command line interpreter is called a shell.

  • You are using the Bourne Again Shell, bash.


Lis508 using debian gnu linux

bash features

  • bash allows to browse the command history with the up/down arrow keys.

  • bash allows to edit commands with the left/right arrow keys.

  • You can complete command and file names with <TAB>.

  • bash comes with a language of commands that allows to write batch files.

  • “exit” is the command to leave the shell.


Lis508 using debian gnu linux

environment variables

  • These are variables used by the shell.

  • Two important ones are

    • $HOME your home directory

    • $PATH the location where bash will search for executable files.

  • echo $HOME will show you your home directory.

  • “env” is a command that can be used to see all environment variables.


Lis508 using debian gnu linux

bash initialization

  • Files that start with a dot are hidden. They are only seen with “ls -a”.

  • .bashrc is a file written in bash language that is run every time bash is started.

  • .bash_profile or .profile is run when the shell is started at login.

  • You can customize these files.


Lis508 using debian gnu linux

files, directories and links

  • Files are continuous chunks data on disks that are required for software applications.

  • Directories are files that contain other files. Microsoft calls them folders.

  • In UNIX, the directory separator is “/”

  • The top directory is “/” on its own.


Lis508 using debian gnu linux

home directory

  • When you first log in to wotan you are placed in your home directory /home/username

  • “cd” is the command that gets you back to the home directory.

  • The home directory is also abbreviated as “~“

  • cd ~user gets you to the home of user user.

  • “cd ~” does what?


Lis508 using debian gnu linux

~/public_html

  • The web server on wotan will map requests to http://wotan.liu.edu/~user to show the file ~user/public_html/index.html

  • The web server will map requests to http://wotan.liu.edu/~user/file to show the file ~user/public_html/file

  • The server will do this by virtue of a configuration option.


Lis508 using debian gnu linux

changing directory, listing files

  • “cd directory” changes into the directory directory

  • the current directory is “.”

  • its parent directory is “..”

  • “ls” lists files


Lis508 using debian gnu linux

users and groups

  • “root” is the user name of the superuser.

  • The superuser has all privileges.

  • There are other physical users, i.e. persons using the machine

  • There are users that are virtual, usually created to run a daemon. For example, the web sever in run by a user www-data.

  • Arbitrary users can be put together in groups.


Lis508 using debian gnu linux

permission model

  • Permission of files are given

    • to the owner of the file

    • to the group of the file

    • and to the rest of the world

  • A group is a grouping of users. Unix allows to define any number of groups and make users a member of it.

  • The rest of the world are all other users who have access to the system. That includes www-data!


Lis508 using debian gnu linux

listing files

  • “ls” lists files

  • “ls -l” make a long listing. It contains

    • elementary type and permissions (see next slide)‏

    • owner

    • group

    • size

    • date

    • name


Lis508 using debian gnu linux

first element in ls -l

  • Type indicator

    • d means directory

    • l means link

    • - means ordinary file

  • 3 letters for permission of owner

  • 3 letters for permission of group

  • 3 letters for permission of rest of the world

  • r means read, w means write, x means execute

  • Directories need to be executable to get in them.


Lis508 using debian gnu linux

change permission: chmod

  • usage: chmod permission file

  • file is a file

  • permission is three numbers, first for owner, 2nd for group and 3rd rest of the world.

  • Each number is sum of

    • 4 for read- 2 for write

    • 1 for execute - 0 for no permission

  • Example: chmod 764 file


Lis508 using debian gnu linux

general structure of commands

  • commandname –flag --option

  • Where commandname is a name of a command

  • flag can be a letter

  • Several letters set several flags at the same time

  • An option can also be expressed with - - and a word, this is more user-friendly than flags.


Lis508 using debian gnu linux

example command: ls

  • ls lists files

  • ls -l makes a long listing

  • ls -a lists all files, not only regular files but some hidden files as well

    • all files that start with a dot are hidden

  • ls -la lists all files is long listing

  • ls --all is the same as ls -a. --all is known as a long listing.


Lis508 using debian gnu linux

copying and removing files

  • cp file copyfile copies file file to file copyfile. If copyfile is a directory, it copies into the directory.

  • mv file movedfile moves file file to file movedfile. If movedfile is a directory, it moves into the directory.

  • rm file removes file,there is no recycling bin!!


Lis508 using debian gnu linux

directories and files

  • mkdir directory makes a directory

  • rmdir directory removes an empty directory

  • rm -r directory removes a directory and all its files

  • more file

    • Pages contents of file, no way back

  • less file

    • Pages contents of file, “u” to go back, “q” to quit


Lis508 using debian gnu linux

soft links

  • A link is a file that contain the address of another file. Microsoft call it a shortcut.

  • A soft link can be created with the command

  • ln -s file link_to_file where file is a file that is already there and link_to_file is the link.


Lis508 using debian gnu linux

file transfer

  • You can use winscp to upload and download files to wotan.

  • If uploaded files in the web directory remain invisible, that is most likely a problem with permission. Refer back to permissions.

  • chmod 644 * will put it right for the files

  • chmod 755 . (yes with a dot) will put it right for the current directory

  • * is a wildcard for all files.

  • rm -r * is a command to avoid.


Lis508 using debian gnu linux

editing

  • There are a plethora of editors available.

  • For the neophyte, nano works best.

  • nano file edits the file file.

  • nano -w switches off line wrapping.

  • nano shows the commands available at the bottom of the screen. Note that ^letter, where letter is a letter, means pressing CONTROL and the letter letter at the same time.


Lis508 using debian gnu linux

emacs

  • This is another editor that is incredibly rich and complex.

  • Written by Richard M. Stallman, of GNU and GPL fame.

  • Get an emacs cheat sheet of the web before you start it. Or look at next slide.


Lis508 using debian gnu linux

emacs commands

  • (here ^ stands for the control character)‏

  • ^x^s saves buffer

  • ^x^c exits emacs

  • ^g escapes out of a troublesome situation

  • control+space sets the mark

  • ^w removes until the mark (cut)‏

  • ^y pastes


Lis508 using debian gnu linux

common emacs/bash commands

  • ^k kills until the end of the line or removes empty line

  • ^y yank what has been killed (paste)‏

  • ^a get to the beginning of the line

  • ^e get to the end of the line

  • These commands also work in the shell.


Lis508 using debian gnu linux

emacs modes

  • Just like people get into different moods, emacs gets into different modes.

  • One mode that will split your pants is the PHP mode.

  • Then look how emacs checks for completion of parenthesis, braces, brackets, and the ; and use the tab character to indent.


Lis508 using debian gnu linux

copy and paste

  • Putty allows to copy and paste text between windows and wotan.

  • On the windows machine, it uses the windows approach to copy and paste

  • On wotan machine,

    • you copy by highlighting with the mouse’ left button

    • you paste using the middle button

    • if you don't have a middle button, use left and right together


Lis508 using debian gnu linux

man

  • man is the manual lookup command

  • You usually say “man command” if you want to have an overview over the command.

  • man -k keyword looks up the man pages on the computer for pages with the keyword keyword. I don't find this very effictive ;-(


Lis508 using debian gnu linux

echo

  • echo is a command to desplay a line of text.

  • Example: echo foo


Lis508 using debian gnu linux

cat

  • This is a program that displays the contents of a file.

  • Use like “cat file” to display the contents of the file file.


Lis508 using debian gnu linux

more

  • This is a paging utility.

  • It is mostly used as part of a pipe.

  • You take the output of a command and pipe it to the input of the next command

  • Example “cat longfile | more”

  • | is the piping operator.


Lis508 using debian gnu linux

less

  • This is a paging utility. It does more than more.

  • You can use the command “u” to go up.

  • You must use the command “q” to leave the page.


Lis508 using debian gnu linux

du

  • du is a command to look at disk usage.

  • du -s makes a summary, rather than listing the usage of every.

  • The size is give in kilobytes. A kilobyte is 1024 bytes, not 1000 bytes.


Lis508 using debian gnu linux

ln -s

  • ln -s origin target makes a link from a target file target to an original file origin.

  • Then when you access target you get the same contents as in origin.

  • This concept is knows as a shortcut in Microsoft windows.


Lis508 using debian gnu linux

ssh

  • ssh [email protected] logs you in as user user on the host host. host can be a DNS name or an IP address.

  • If you don't have you public keys in the remote account's .ssh/autorized_keys file, you will be prompted for a password.


Lis508 using debian gnu linux

slogin

  • slogin is a bit of a synonym for ssh.

  • I use it often “slogin host -l user”.


Lis508 using debian gnu linux

scp

  • This copies files from one host to another. You can use it has complicated as “scp [email protected]:file1 [email protected]:file2.

  • But often one of the users is the current user on thee current host. In that case the [email protected]: bit can be left out.

  • If you don't have permissions via keys you will be prompted for passwords.


Lis508 using debian gnu linux

date

  • date says what time it is.

  • This depends on the locale, as set of conventions to deal with language issues.


Lis508 using debian gnu linux

find

  • find finds file in a directory.

  • This is a very important and powerful command.

  • Example: “find . -type f -name '*.deb'” finds all regular files ending with “deb”

  • The most powerful feature is “-exec command \;” that executes a command on the files found. Each file is represented by {}


Lis508 using debian gnu linux

find examples

  • find ~/public_html -name '*.html' -exec cp {} {}.org

  • find ~/public_html -name '*.css' -exec cat {} >> /tmp/master.css


Lis508 using debian gnu linux

output and error

  • In programs that ran on the shell, there are two concepts, the output and the error.

  • The output is what is written by the command in normal operation, e.g. a list of files for ls. The output is often empty, for example for the cp command.

  • The error of a command is what is reported when an error occurs. Example “cp foo bar” will generate an error when there is no file foo.


Lis508 using debian gnu linux

output redirection

  • The redirect the output of a command to a file, use > or >>

  • Example “echo foo > /tmp/foo.file”

  • When you use “>” the file will be created anew.

  • When you use “>>” the output will be appended to an existing file, if any.


Lis508 using debian gnu linux

error redirection

  • The redirect the output of a command to a file, use “2>” or “2>>”

  • Example “cp foo 2> /tmp/error.file”

  • When you use “2>” the file will be created anew.

  • When you use “2>>” the error will be appended to an existing file, if any.


Lis508 using debian gnu linux

pipes

  • The piping operator | connects the output of one command to the input of another.

  • Example: echo “hi thomas” | mutt [email protected]


Lis508 using debian gnu linux

grep

  • grep is a very important utility to look up a pattern in a file, as in “grep patternfile”.

  • Pattern is often just a string of what we want to find.

  • But in the pattern, the following will have special meaning: ( ) \ + . ? * [].

  • grep -r finds the pattern recursively.


Lis508 using debian gnu linux

sort and uniq

  • sort sorts entries in it's inputExample: “last | cut -f 1 | sort” gives you a sorted list of last users.

  • uniq gives uniq values in an sorted list. The list has to be sorted first. Example “last | cut -f 1 | sort | uniq”


Lis508 using debian gnu linux

crontab files

  • /etc/crontab is the system wide crontab.

  • /etc/cron.d, /etc/cron.monthly, /etc/cron.daily, /etc/cron.weekly have more cron examples for your viewing pleasure.

  • Output and error from a crontab entry is sent by local mail to the user.

  • This is one reason of having mail at least set up locally, i.e. from the machine to users on the same machine.


Lis508 using debian gnu linux

crontab entries

  • You can create a file that contains commands you want to schedule regularly, and the schedule

  • The file cantains lines of the form minutes hour day_of_month month day_of_week. There day_of_week ranges form 0 to 6 with 0 being Sunday.

  • Save this in a file say etc/crontab.


Lis508 using debian gnu linux

http://openlib.org/home/krichel

Thank you for your attention!

Please switch off machines before leaving!


  • Login