13 Comments
ssh shell vps ubuntu

Svaki pravi web developer bi sigurno htio imati jedan web server! Cijeli server, sa pristupom cijelom operativnom sustavu, da si moze naštimavati sve opcije, optimizirati, podešavati i tjunirati svaki HTTP paket koji odlazi. Kod shared hosting paketa se dobije samo FTP pristup i osnovna funkcionalnost putem nekog Control Panela, ali dalje od tih opcija se ne može. Nista od štimanja ISAPI filtera, mapiranja ekstenzija, dodavanja neograničeno domena i slicnih stvarčica. Za takve stvari ipak treba imati telnet, ssh ili remote desktop pristup, i dozvole podešavanja. To imaju Dedicated i VPS server, od kojih je ovaj prvi pre skup (cca od 50$/mj) i odmah ću ga odbaciti, ali ovaj drugi, VPS server, se ipak može pronaći za skromnije novce. Cijena uglavnom ovisi o dostupnom RAMu i procesorskoj snazi.

Pošto se ovdje radi o pokretanju .NET web aplikacija, u obzir prirodno dolaze samo Windows serveri, ali zahvaljujući Novellu i Miguel de Icazi, aplilacije možemo pokretati i na Linuxu uz pomnoć Mono projekta.

Ako spojimo VPS Linux hosting i Mono framework, znači da već za 9,99$ mjesečno imamo svoj vlastiti server s kojim možemo raditi što god nas je volja! Već neko vrijeme planiram zakupiti jedan takav VPS server i poigrati se. Neki da sam konačno našao vremena, volje, i 10$ viška i zakupio mjesec dana VPSa na jednom od hosting providera. Kroz par postova ću probati opisati postupak konfiguriranja servera, u cilju pokretanja ASP.NET stranica, točnije ovog bloga, i za moje privatne (fuš) potrebe, N2CMSa. Još nisam siguran dali će N2CMS raditi, ali BlogEngine.NET provjereno radi na Mono frameworku.[more]

Krenimo redom; prvo je potrebno izabrati hosting providera sa VPS uslugom. Neki koje sam ja pronašao guglajući su: Fsckvps, IntoVPS, EnjojVPS. Sve su to UNMANAGED serveri, što znači da se dobije ssh pristup, i to je to, snalazi se sam. Uvijek sam mislio da to uključuje kompajliranje kernela i piskaranje gomila konfiguracijskih fajlova, ali nije tako; kernel dođe kompajliran, a konfiguracijske skripte se moraju samo malo piskarati ;) Znači čaša je na pola puna, a ne prazna!

Kada se zakupi VPS, dobije se SSH pristup shellu, kojem pristupamo pomoći nekog ssh/telnet programa poput PuTTy.  Također, gotovo svi hosting provideri daju mogučnost odabira Linux distribucije, i ja sam za ovu priliku izabrao Ubuntu (iako sam prvo uzeo SuSE, pošto je njegov proizvođač Novell, a on je napravio i Mono, ali na njemu mi ništa nije htjelo proraditi, pa sam se prebacio na Ubuntu). Većina providera ima Ubuntu 9.04 Jaunty.

Nakon što smo se spojili na naš novi server, ostaje nam za napraviti sljedeće:

  1. refreshati repozitorije: na Linuxima postoji pojam paketa i repozotorija. To je centralizirano mjesto za instalaciju aplikacija. Takvog čega nema na Windowsima, a radi se o spisku dostupnih aplikacija (paketa) koji je sadržan u jednom ili više repozitora. Korisnik samo mora odabrati željenu aplikaciju (paket), a aplikacijski instalacijski program (apt-get, zypper, yast, …) će ju instalirati, uključujući zavisne biblioteke i programe (nešto tipa DLLova)
    Naredba za update repozitorija: apt-get update
    Naredba za instalaciju aplikacija: apt-get install NazivAplikacije
    Pregled liste dostupnih aplikacija: apt-cache search [NazivApp*]
  2. pošto nisam vičan radu u Bashu preko SSH (ala command prompt na win), ja sam instalirao i sljedeće: Gnome desktop grafično sučelje, VNC server za pristup (ala Remote Desktop)
    Cijeli postupak je objašnjen ovdje, i meni osobno je prošao bez ikakvih problema:
    http://markus.revti.com/2009/08/installing-vnc-remote-desktop-on-ubuntu-linux-vps/
    uz jednu napomenu; ubuntu dolazi sa VI editorom (ala DOSov Edit, ili Win Notepad), koji je meni jako zbunjujuć za raditi, pa sam ja instalirao Nano editor:
    sudo apt-get install nano (ovaj sudo označava pokretanje programa sa root pravima)
  3. instalacija Mono frameworka
  4. instalacija Apache web poslužitelja
  5. instalacija XSP (mono web server, služi Apachu za izvršavanje ASP.NET aplikacija). Konfiguracija mod_mono, da Apache koristi XSP za ASP.NET
  6. testitranje sa više domena i poddomena, N2CMS, BlogEngine.net,…
  7. instaliranje i podešavanje Firewalla

Za sada sam došao do koraka 3, a daljnji napredak ću opisati u sljedećim postovima. Trenutno imam remote desktop pristup serveru, i u instalacijom programu Gnomea (izbornik System/Administration/Synaptic Package Manager)  se nalazi Mono framework 2.0. Zadnja verzija Mono frameworka je 2.4 (podržava C# 3.0, MVC, bez LINQ2SQL), i potrebno je dodati ovaj repozitorij:
deb http://ppa.launchpad.net/directhex/monoxide/ubuntu jaunty main(u Synapticu, izbornik Settings/Repositories/Third party sw). Time smo dobili mogučnost instalacije Mono 2.4 frameworka. Putem Synaptica možemo instalirati i Monodevelop, IDE alat za razvoj .NET aplikacija.

Jedna sitnica, ako vam layout tastature ne štima, odnosno pritisnete D a on ispiše F, onda pogledajte ove upute: https://bugs.launchpad.net/ubuntu/+source/vino/+bug/112955/comments/55

Nastavak slijedi brzo…

Comments

Comment by xajler

Mislim da si pogrijesio sa instaliranjem Gnomea, mislim da je vrijedno nauciti bash (bash je strasno jednostavan), a server drzati bez X Servera (ili bez GUI-a).
Po meni si trebao instalirati Linux negdje lokalno na laptop, ili preko VirtualBoxa i tamo sve isprobati pa onda krenuti na server, istim koracima. MonoDevelop po meni nema sta raditi na serveru.
I umjesto Ubuntua ja sam presao na Fedoru, iz jednostavnog razloga jer Ubuntu je Debian like Linux i strasno kasni s paketima, dok Fedora je on the edge sa paketima, mislim i CentOS, ali nisam nikad radio s njim.
Pojednostavljeno, na Linux serveru bi trebalo biti instalirano samo ono sto je potrebno da vrti potrebne daemone (servise) i nista vise, cak i kill-ani svi ostali deamoni koji nisu potrebni, a po defaultu se vrte.
Kako god, zanemari moje filozofiranje (ali to su Best practices in Linux World), nadam se da ces uspijeti u svojoj nakani sa N2CMS-om i podizanjem XSP servera i ako imas kakvo pitanje, rado cu ti pomoci, sa mojim minimalnim znanjem :)

Comment by hudo

Thanx za info. Gnome sam i na kraju deinstalirao, jer mi stvarno ne treba. Htio sam samo isprobati VNC i vidjeti kako to radi. Kako server ima 512MB Ram, gnome i vnc server zauzmu do 300-350MB, pa se ne isplati to imati. Da ne govorim o security risku.
Evo danas sam uspio zavrsiti instalaciju zadnje verzije Mono frameworka, kompajlirao ga (traje dobrih 1h!) i stvar radi. Takodzer sam mapirao i dvije domene, sto je isto proradilo na kraju :)
Jedina losa vijest je da N2CMS ne prolazi validaciju za Mono, pola Castle biblioteka nije kompatibilno. Vidjeti cu jos sta cu s time.

Comment by xajler

Problem kod deinstaliranja Gnomea je da ga vjerojatno cijelog ne deinstalira nego ostane gomila junka. Kako si provjerio da N2CMS nije kompatibilan?
Preostaje ti jedino da rewriteas N2 da bude kompatibilan s Monom, ali onda moraš biti syncan sa N2 patchevima, bas me zanima kako ćeš to riješiti!

Comment by hudo

Imas MoMA utility koji ti skenira DLLove i kaze dali ce raditi na monou. N2 puca na Castle-ovim dll-ovima, a i autor N2 je napisao da za sada ne radi. Razmisljam si mozda uzeti sada neki Win vps, cisto da vidim kako radi.

Comment by Schied

I had to refresh the page 2 times to view this page for some reason, however, the information on here was worth the wait. I loved that it is also really easy to read for the eyes.

Comment by Tom

Ha, I like where you're going with this. very original.

Comment by Computer Lautsprecher

hello im from germany and my english isnt that awesome, but i was able to understand every single sentence of your post. Im looking for english websites to make my english better and im very euphoric to eventually find a website, which writes clear and structured english that i can translate. Greetz from Germany!

Comment by Linnie Blaum

Hello everybody the following had been a good quite involved read... This kind of may not end up being the particular time or even location but mabey somebody can assist me out. I am looking a site that could build a good quality web-site for my new company.

Comment by Reiko Leanos

I like the style you took with this subject. It is not typical that you just find a subject so concise and informative.

Comment by Desire Debolt

case makes good sense. More people need to be aware of it.

Comment by haartransplantation

I entdeckt Ihr Blog Website auf Google und überprüfen eine Reihe von Ihrer frühen Beiträge. Continue zu pflegen die hervorragende betreiben. I gerade zusätzliche Ihr RSS-Feed zu meinem MSN Information Reader. Auf der Suche nach Vorwärts bis lesen mehr in eine Weile! ...

Comment by male training

As you get older, your men's health issues will probably transform. Could a beer instinct produce health conditions?

Comment by linux vps

Amazing, thank you a lot for the excellent post! In my position personally, power from the sun is undoubtedly ideal! There are a lot of different kinds of possibilities out there that many people never even realize they're able to be applying.