Linux-Windows

**Utprøving av SSH**

 * Installasjon:**

aptitude install ssh

Enkel ssh: ssh username@server

ssh anderaun@gremlin.stud.aitel.hist.no


 * Overføring av filer med kommandoen scp og sftp**

//**SCP:**//

Hente fil fra remote server. scp -P yourport yourusername@yourserver:/home/yourusername/examplefile.

Kopiere fra RemoteHost til din PC scp screenlog.0 phettz@158.38.56.75:/home/phettz/ phettz@158.38.56.75's password: screenlog.0 100% 20 0.0KB/s 00:00

//Hente et folder med innhold:// scp -r yourusername@yourserver:/home/yourusername/.

//Bandwidthlimit:// scp -l bandwidthlimit yourusername@yourserver:/home/yourusername/*.


 * //SFTP://**

sftp username@server - Tast inn passordet

Eksempel på bruk av sftp: sftp> put /home/atle/Testmappe/* Stash/ - Her kopierer den alle filene i testmappe over til mappen Stash.

sftp prompts for a password, and on successful authentication, presents a shell with an sftp> prompt. Once in the sftp shell, you can run [|commands] similar to those available on FTP, such as __cd, lcd, ls, chmod, chgrp, get, put, rename, and rmdir__. You can end the session by typing __exit__ at the prompt.

Forklar hvorfor det er en bestemt sikkerhetsrutine først gang du logger deg inn med ssh:

Første gang du logger på en annen maskin, får du tilbud om å permanent lagre fingeravtrykket til serveren. (Det gjør man som oftest.) Dette fingeravtrykket trenger du får å kunne kommunisere med serveren (altså kryperingen over ssh). Fingeravtrykket blir lagt inn i filen ~/.ssh/known_hosts.

Hvis man her vil ha en passord-løs innlogging kan man kopiere over nøkkelen til serveren. Setter ingen passord her Etter dette er det bare å kjøre en Eventuellt kan man gjøre det enkelt og automatisert ved å installere pakken ssh-copy-id:
 * ssh-keygen -t rsa**
 * scp .ssh/id_rsa.pub cizu@server:/home/cizu/.ssh/authorized_keys**
 * ssh cizu@server**
 * ssh-copy-id user@host**


 * Åpning og stening av aksess via ssh**

"//OpenSSH has two directives for allowing and denying ssh user access.// //**DenyUsers user1 user2 user3**// //Use to block user login. You can use wild cards as well as user1@somedomain.com (user1 is not allowed to login from somedomain.com host) pattern.// //**DenyGroups group1 group2** A list of group names, if user is part of primary of supplementary group login access is denied. You can use wildcards.// //Please note that you cannot use a numeric group or username ID. If these directives are not used, default is to allow everyone.// //**AllowUsers user1 user2** This directive is opposite of DenyUsers directive.// //**AllowGroups group1 group2** This directive is opposite of DenyGroups directive.// //You should always block access to root user/group: Open /etc/ssh/sshd_config file:// //# vi /etc/ssh/sshd_config// //Append following names (directives):// //DenyUsers root finadmin DenyGroups root finadmin// //Make sure at least one user is allowed to use 'su -' command.// //Save the file and restart the sshd.// //This is a secure setup and you are restricting the users allowed to access the system via SSH with four above directives//."

Prøv også ssh mellom Windows­pc og Linux. Før du er ferdig med denne oppgaven skal du altså ha prøvd følgende:

1. ssh mellom Linuxmaskiner Her er et bare å apt-get install ssh, og starte tjenesten med /etc/init.d/sshd start Kjør kommando: ssh bruker@server så er du inne og kan gjøre det du selv vil

2. ssh fra Windows til Linux

Her kan en installere putty, så er det bare å taste inn ipadresse til linuxmaskinen. Blir prompta om brukernavn og passord

3. ssh fra Linux til Window

Her må det installeres en "server" på windowsmaskinen. Feks openSSH. Konfigurer denne med riktig port, og sørg for at porten får tilgang gjennom brannmuren. Så er det bare å åpne en terminal i linux, skrive den vanlige ssh-kommandoen: ssh bruker@ipadresse

**ssh ­X**
Enable the **AllowTcpForwarding** option in sshd_config on the **server** Enable the **X11Forwarding** option in sshd_config on the **server** Set the **X11DisplayOffset** option in sshd_config on the **server** to 10 Enable the **X11UseLocalhost** option in sshd_config on the **server**

Enable the **ForwardX11** option in ssh_config on the **client

kjør $xclock for å sjekke at det fungerer.**
 * Vi sjekket også med $startkde og det funket også!**

Hvordan bruke ssh x:

Installer xnest.

Kjør følgende kommandoer for å kjøre ssh x i Xnest(eget vindu)

$ Xnest :1 #Starte XNest-serveren på et annet display. åpne en ny terminal siden den første blir brukt til å kjøre xnest

$ DISPLAY=:1 ssh -X brukernavn@maskin

$ openbox

Slik startes openbox via ssh -X

Sette restriksjoner:

/etc/ssh/sshd_config

Spesifikke settings for brukere ved bruk av Math User

Eks:

Match User phettz X11Forwarding no AndreSettings AndreSettings

Her kan man også installere freeNX/nomachine som er en mye bedre løsning På denne kan man gjøre båndbredde trottleing, lyd-support osv... http://freenx.berlios.de/

rdesktop

 * rdesktop -u hallvag -f terminator.stud.aitel.hist.no**
 * -f for fullscreen**
 * -u for bruker**
 * -g om man vil sette geometri manuellt. 800x640**

● Forskjellige størrelser på vinduet ● Fullskjerm ● Virker alle tastene som de skal. Også de norske? Fiks dette hvis de ikke virker ● Spille av lyd via rdesktop ● .... andre ting Før du er ferdig med denne oppgaven skal du ha prøvd følgende: remote­login fra Linux til Window


 * rdesktop til windows. I utgangspunktet funker det ikke med flere brukere. Men den finnes en patch for dette**
 * Lyd fungerer ikke gjennom remote desktop. Det eneste tilfellet hvor dette er mulig er gjennom den nye rdp7 som finnes i Windows 7.**

remote­login Linux­maskiner i mellom

på server: apt-get install xrdp
 * apt-get install tightvnc

så kan vi bruke rdp-protokollen frem til server**

remote­login fra Windows til Linux

**Xming**
Dette var ganske skuffende, da den krasjet ofte. Spesiellt når man skulle ha fullt skrivebordsmiljø. Ikke var det spesiellt lett å få en lagret konfigurasjon til å laste.** • 1. Koble opp fra Linuxmaskinen din mot en annen Linuxmaskin ved hjelp av SSH. Etter oppkobling skal du har tilgang til den fjerne maskinen via filbehandler (f.eks Nautilus i Gnome)
 * En klient for å koble til Linux fra Windows
 * Ved å bruke putty som "mellom-ledd", så får man kryptering på kanalen**
 * xming har også mulighet for å kjøre xdmcp (som kjører uten kompresjon)**

Nautilus:

//Mount med sshfs:
 * sshfs anderaun@gremlin.stud.aitel.hist.no: sshfs/**

2. Koble opp fra Linuxmaskinen din til et Windows­share på Windows­maskinen din. Du skal altså ha tilgang til Windows­filene dine via filbehandleren i Linux. Finn fram til et menyvalg for å gjøre oppkoblingen

Nautilus:
 * smb:**//**windows/share**

3. I oppkoblingen i punkt 2) ovenfor brukte vi et menyvalg. Prøv med mount­kommandoen i stedet for å gjøre en slik oppkobling. Lag det slik at oppkoblingen skjer automatisk ved login på maskinen. Det betyr altså uten at du trenger å oppgi brukernavn og passord (det skal skje automatisk)

Her forutsetter vi at mappen /mnt/share eksisterer lokalt


 * mount -t cifs //windowsMaskin/share -o user=cizu,password=xxxxxx /mnt/share//**

//I /etc/fstab:// Filen /root/cifspw skal være i dette formatet: username=cizu password=xxxxxx
 * windowsMaskin/share /mnt/share cifs rw,user,uid=cizu,credentials=/root/cifspw 0 0**

WINE
apt-get install wine


 * wine windowsProgram.exe**

Vmware Infrastructure Client funker ikke.** Sjekk ut www.winehq.org for hva som er nytt og hva som er bekreftet å funke
 * Vi testa Sportify, FullTiltPoker og utorrent og alle virker!


 * XDMCP­login**

XDMCP mot gremlin funker ikke, en må være root for å enable xdmcp-tjenesten. ssh -X derimot funker mot gremlin. Vi enablet XDMCP på våres egne pc'er og testet at det funket. Hvordan:

For å aktivere XDMCP må en finne config-filen til gnome eller kde. For Gnome ligger denne: /etc/gdm/custom.config Her må en under [XDMCP] skrive: Enable = true Save, og restart gnome med følgende kommando: sudo service gdm restart Da kan en bruker på en annen maskin koble seg til maskinen via XDMCP protokollen En måte å gjøre dette på er med tsclient(terminal service client). Velg XDCMP som protokoll, tast inn IP. Da blir det remote desktoppet startet. Funker fint.

XDMCP burde ikke brukes da det ikke har noen sikkerhet. En kan lytte på trafikken uten at bruker merker det. ssh -X er bedre. RDP er bedre.

I linux kan man defaul logge inn via gui, rdp og ssh med flere brukere samtidig. I windows 7 feks er det bare plass til EN om gangen, dette kan fikses ved hjelp av en patch eller å manuelt forandre i registeret. Så det er ingen forskjell mellom linux og windows sånn sett.
 * Flere brukere innlogget samtidig?**

Skal en lagre filer i et program kjørt over ssh x og gedit feks, så må filene lagres på maskinen gedit blir kjørt fra.