Verkkosovelluskehitys – Blogi – HTTP



Verkkosovelluskehitys – Blogi – HTTP

0 0


Polar-.github.io


On Github Polar- / Polar-.github.io

Verkkosovelluskehitys

Blogi

verkkoprotokollia IRCBot/Openshift

HTTP

HyperText Transfer Protocol

- HTTP on verkkoprotokolla, jota käyttävät selaimet ja www-palvelimet.

- HTTP hoitaa asiakkaan ja palvelimen välisen tiedonsiirron.

Toiminta

- Asiakashjelma lähettää pyynnön ja HTTP välittää sen TCP-yhteyttä käyttäen palvelimelle

- Palvelin vastaa pyyntöön lähettämällä yleensä HTML-sivun.

- Sisältää paljon lisäominaisuuksia kuten virheenhallintaa ja salausvaihtoehtoja

HTTPS

- HTTP:n "laajennos", yhdistää HTTP:n ja SSL/TLS:n

- Mahdollistaa tiedon suojatun siirron.

- HTTP:llä lähetetyt tiedot salataan käyttäen joko SSL- tai TLS-protokollaa.

Yleisimmät HTTP-webpalvelimet

- Apache

- IIS (Microsoft)

- Nginx

- GWS (Google Web Server)

TCP

Transmission Control Protocol

- Tietoliikenneprotokolla, jolla luodaan yhteyksiä käyttäjien välillä.

- Kattaa suurimman osan Internetin liikenteestä.

Toiminta

- Lähettää dataa luotettavasti.

- Huolehtii, että lähetetty data menee perille asti oikeassa järjestyksessä.

- Hävinneet datapaketit voidaan lähettää uudestaan.

Käyttö

- Useat protokollat ovat rakennettu TCP:n päälle.

- Mm. HTTP, SMTP, Telnet, SSH, FTP ja WebSocket

FTP

File Transfer Protocol

- Tiedostonsiirron mahdollistava protokolla.

Toiminta

- Asiakas yhdistää FTP-palvelimeen, johon tiedostot on ladattu.

- Yksi palvelin palvelee useaa asiakasta.

- Muodostaa yhteyden käyttäen TCP-protokollaa.

- Käyttö onnistuu käyttäen selainta, komentoriviohjelmaa tai FTP:n käyttöön suunniteltua työpöytäohjelmaa.

Heikkoudet

- Ei suunniteltu turvalliseksi protokollaksi.

- Tiedostot, salasanat ja käyttäjänimet lähetetään salaamattomina.

- Salattu yhteys vaatii laajennetun protokollan, joka mahdollistaa salauksen.

- Salauksen mahdollistavia protokollia mm. FTPS (TLS/SSL) ja SFTP (SSH)

SSH

Secure Shell

- Mahdollistaa komentorivi-pohjaisen etäyhteyden toiseen tietokoneeseen.

- Muodostaa turvallisen yhteyden turvattoman verkon yli.

Toiminta

- Vaatii etäkäytettävään tietokoneeseen erillisen SSH-palvelimen.

- Yhdistäminen tapahtuu SSH-ohjelmalla

- Sisältää lukuisia eri salaus/tunnistus-vaihtoehtoja

- Käyttäjänimellä ja salasanalla yhdistämisen lisäksi tarjoaa avaimiin perustuvan salauksen, jossa kirjaudutaan avainparilla, joista toinen on palvelimella ja toinen käyttäjällä.

Käyttö

- Perinteisen komentorivipohjaisen etähallinnan lisäksi SSH:ta käytetään useisiin muihin tarkoituksiin

- Tunnelointi: Mahdollistaa palomuurien turvallisen läpäisemisen antaen mahdollisuuden käyttää esimerkiksi yksityisten verkkojen ominaisuuksia.

- Tarjoaa salatun yhteyden tiedostonsiirtoon, esim SFTP.

IRC-botin asennus OpenShiftiin

OpenShift: www.openshift.com

Botin lähdekoodi: www.github.com/jvanhalen/irclokki

Vaihe 1

Luo irclokki-sovellus OpenShiftiin komentorivissä komennolla:

rhc app create irclokki nodejs-0.10 --from-code https://github.com/jvanhalen/irclokki.git

Vaihe 2

Lisää mysql-cartridge OpenShift-sovellukseen komennolla:

rhc cartridge add mysql-5.5 -a irclokki

Vaihe 3

Luo OpenShift-palvelimelle MySQL-tietokanta. Jos käytössäsi on komentorivissä SSH:

rhc ssh irclokki mysql DROP DATABASE if exists irclog; CREATE DATABASE irclog; USE irclog; CREATE TABLE log ( id INT PRIMARY KEY AUTO_INCREMENT, timestampBIGINT, message TEXT); ;>

Jos käytössäsi ei ole komentorivipohjaista SSH-clienttiä, yhdistä palvelimelle esim. Puttylla (ohjeet)

Vaihe 4

Käynnistä sovellus komennolla:

rhc app-restart irclokki

Lopuksi

Sovellus on näkyvissä osoitteessa irclokki-(käyttäjänimi).rhcloud.com

Sovelluksen uudelleenkäynnistäminen ja pysäyttäminen:

rhc app-restart irclokki rhc app-stop irclokki
Verkkosovelluskehitys Blogi verkkoprotokollia IRCBot/Openshift