Forbedre Ubuntu Server

For noen uker siden viste jeg deg hvordan du konfigurerer din egen linux-server. Nå skal jeg vise deg hvordan du legger til enda mer
funksjonalitet.

Før vi begynner ...

Denne veiledningen forutsetter at du har fulgt min forrige veiledning, Slik konfigurerer du en dedikert webserver gratis, eller
at du har en lignende server allerede satt opp.



Hva vi skal utføre

I denne opplæringen skal vi:

  1. Installer en Subversion-server, slik at du kan bruke versjonskontroll for dine prosjekter.
  2. Legg til et systemadministrasjonsprogram, mer populært kjent som Webmin, slik at du kan holde oversikt over serverens status
    og få oppdateringer i sanntid.

En rask notat

Disse trinnene kan oppnås mens du sitter ved datamaskinen og skriver inn i konsollen, eller for de som
liker å kjøre en headless server, kan du bruke SSH. Jeg dekket det i min forrige veiledning, så hvis du ikke er kjent med
teknologien, hodet der borte for å komme i gang med å bruke det. Nå, uten videre, la oss komme i gang!

Last ned Subversion

Mens det er mange versjonskontrollsystemer, er Subversion en av de mest populære. Subversion lar deg beholde flere versjoner av koden din, slik at du alltid kan gå tilbake hvis du trenger en tidligere versjon.
La oss laste den ned!

Først må du logge inn på serveren din; Jeg gjør det over SSH, så mine skjermbilder vil vise min terminal:

Skriv inn dette og trykk Enter:

 sudo aptitude install subversion

Det vil spørre deg om passordet ditt; skriv det inn og trykk enter. Det kan også spørre deg om du vil fortsette, trykk "y" og trykk enter.
Serveren din vil nå laste ned og installere subversion-serveren:

Når det er gjort, må vi sette opp det.

Sette opp Subversion

Denne neste delen kan være litt forvirrende. Det vi skal gjøre er å lage en ny gruppe, kalt "subversion" som vil tillate Subversion-serveren å
Skriv sikkert til lagringsplassene dine på webserveren din, men ikke noe annet. For å gjøre dette, skriv inn følgende kommandoer, erstatt USERNAME med ditt faktiske brukernavn.

 sudo addgroup subversion sudo usermod -a -G underversjon USERNAME sudo usermod -a -G subversion www-data

I rekkefølge, disse kommandoene: Legg til en ny gruppe kalt "subversion", legg til din brukerkonto til den nye gruppen, og legg til webserverens bruker til gruppen.

Nå må vi opprette et sted for dine arkiver. Dette kan teknisk sett plasseres hvor som helst, men jeg lagrer det alltid i / var:

 sudo mkdir / var / svn

Endelig opprett prosjektmappen og lageret:

 sudo mkdir / var / svn / prosjekt sudo svnadmin opprette / var / svn / prosjekt 

Og gi webserveren (og alle i subversion-gruppen) tilgang:

 sudo chown -R www-data: subversion / var / svn / prosjekt sudo chmod -R 770 / var / svn / prosjekt

Så langt har vi opprettet subversion gruppen, opprettet et sted for våre lager, opprettet et nytt lager kalt "prosjekt", og gitt webserver tilgang til dette prosjektet.
Det siste vi må gjøre er å tillate Apache å betjene repositoriene. For å gjøre dette må vi installere et nytt Apache-bibliotek, kalt libapache2-svn. Nå bør du vite hvordan du skal
gjør dette:

 sudo aptitude install libapache2-svn

Etter det er det gjort, åpne Apache SVN konfigurasjonsfilen:

sudo nano /etc/apache2/mods-available/dav_svn.conf

Rull hele veien til bunnen, og legg til følgende:

  DAV svn SVNParentPath / var / svn SVNListParentPath På AuthType Basic AuthName "Subversion" AuthUserFile / etc / subversion / passwd Krev gyldig bruker 

Lagre filen (Control-O, og skriv deretter inn) og lukk den (Control-X). (notat for Mac og Linux-brukere: uavhengig av OS-innstillingene, er det fortsatt kontroll, ikke kommando eller super.)

I utgangspunktet, hva som skjedde der, ble du fortalt Apache at når nettadressen slutter med "/ svn", serverer du opp
en liste over dine subversion repositories som ligger i "/ var / svn". Du fortalte da at du bare
vil folk som er oppført i "/ etc / subversion / passwd" for å kunne se disse repositoriene.

Nå, for å gjøre disse endringene i kraft, oppdater Apache-konfigurasjonen:

sudo /etc/init.d/apache2 force-reload

Når du har gjort det, åpner du din favoritt nettleser og blar til http: //yourserveraddress/ Svn. Det vil be deg om å logge inn, men uansett hva du setter, vil du få
en intern serverfeil:

Ikke bekymre deg! Dette skyldes at vi ikke har definert noen brukere ennå i / etc / subversion / passwd. La oss gjøre det nå:

sudo htpasswd -c / etc / subversion / passwd USERNAME

Dette vil opprette en ny oppføring for USERNAME med passordet du angir. Vennligst bruk IKKE ditt vanlige kontopassord, siden dette passordet sendes usikkert, og i den merkelige hendelsen noen
avlyser det, du vil ikke at de skal ha root-tilgang til maskinen din. Når du har gjort dette, gå tilbake til den siden (http: //yourserveraddress/ svn) og oppdatere den. Det skal nå be om ditt brukernavn
og passord igjen:

Sett dem inn, og voila! Du kan nå se alle dine arkiver (i dette tilfellet, bare prosjekt) og du er klar til å bruke den til versjonskontroll!

For å legge til flere brukere, kjør denne kommandoen, erstatt USERNAME med den nye brukerens brukernavn.

sudo htpasswd / etc / subversion / passwd USERNAME

Sette opp Webmin for serveradministrasjon

Nå som du har denne fancy serveren som gjør alle disse forskjellige tingene, ville det ikke vært fint å kunne klare det lett? Hilsen til Webmin, en fantastisk nettbasert frontend for
systemkonfigurasjon, overvåking etc. Det gjør noen ganske søte ting, som å sende en tekstmelding til telefonen din hvis serveren din går ned. Den beste delen: Det er helt gratis. Så, la oss installere den!

Først må vi laste ned den nyeste webmin debianpakken fra deres nettsted. På den tiden denne artikkelen ble skrevet, er den nåværende versjonen 1.450. Så, kjør denne kommandoen for å laste ned filen:

wget http://prdownloads.sourceforge.net/webadmin/webmin_1.450_all.deb

Men før vi kan installere det, må vi tilfredsstille noen avhengigheter (vi må installere programmer som Webmin bruker):

sudo aptitude install perl libnet-ssleay-perl openssl libauthen-pam-perl libpam-runtime libio-pty-perl libmd5-perl

Etter at det er ferdig, installer Webmin ved hjelp av filen vi nettopp lastet ned:

sudo dpkg -i webmin_1.450_all.deb

Nå, la det være ferdig, og når det er gjort, har Webmin blitt installert! Åpne din favoritt nettleser, og bla til https: //yourserveraddress: 10000 / (legg merke til at det er https). Du bør se følgende side: (Hvis det ikke virker, Fortsett å lese)

Logg inn med dine vanlige detaljer; De samme detaljene du bruker til å logge inn på serveren.

For de av dere som ikke kan koble til (sannsynligvis de fleste av dere), les neste avsnitt. For de som kan, hopp over neste avsnitt.

Vent; Jeg kan ikke koble til!

For de som ikke kan koble til, flink. Det betyr at brannmuren din gjør jobben sin. Men i dette tilfellet ønsker vi tilgang til port 10000, så vi må legge til en ny brannmurregel. Disse instruksjonene er eksplisitt for de som fulgte min forrige veiledning. Åpne din Shorewall-reglerfil:

sudo nano / etc / shorewall / rules

Legg denne linjen rett over der det står #LAST LINE:

ACCEPT netto $ FW tcp 10000

Lagre filen (Control-O, og skriv deretter inn) og lukk den (Control-X).

Til sammenligning, her er AlexVillmann.coms brannmurregler: (Jeg har flere regler enn den vi legger til, men du får bildet)

Nå, start på nytt Shorewall:

sudo /etc/init.d/shorewall restart

Til slutt, gå tilbake til nettleseren din og bla tilbake til Webmin (https: //yourserveraddress: 10000 /) og det skal fungere denne gangen.

Gratulerer! Du har Webmin alt satt opp! Det er en million ting du kan gjøre med det, men alle er utenfor rammen av denne artikkelen. Personlig ville jeg bare leke med det til det gjør de tingene du vil ha det også. Det er ganske selvforklarende, og for alt annet er det Webmin-dokumentasjonen. Ha det gøy!

Wrapping Up

Ved å følge denne veiledningen har du konfigurasjonsversjonskontroll og et søt webbehandlingsprogram. Jeg skulle ønske jeg kunne gå i detalj om Webmin, men det er en artikkel i seg selv. Uansett håper jeg dette hjelper deg med å komme videre i ditt linux server eventyr!

For de som søker mer informasjon om emnene jeg har dekket, her er noen gode lenker:

  • Subversion på Ubuntu
  • Webmin Offisiell Wiki
  • Abonner på NETTUTS RSS-feed for flere daglige webutviklinger og artikler.