Säkerheten på min webbserver.

Konfiguration av nätverk, hur man använder Ubuntu som server, och håller sin dator säker
webconstruction
Inlägg: 112
Blev medlem: 29 mar 2012, 12:40
OS: Ubuntu

Säkerheten på min webbserver.

Inlägg av webconstruction »

Hallåj,

Vet att jag ställt denna frågan innan men hittar inte tråden. Men vad skall jag tänka på nu när det gäller säkerheten på min webb, ftp, och mailserver ?

Skall starta upp en nu och vill att det skall vara så säkert som möjligt. Den kommer stå bakom en router med brandvägg.

/Webconstruction
ubot
Inlägg: 4613
Blev medlem: 04 jan 2008, 14:03
OS: Ubuntu
Utgåva: 24.04 Noble Numbat LTS

Re: Säkerheten på min webbserver.

Inlägg av ubot »

Det här är så självklart så det behöver nog inte sägas men du ska inte köra webbservern som root. En googling ger det här: http://security.stackexchange.com/quest ... -hardening
http://www.techrepublic.com/blog/10thin ... apache/477

Jag är också intresserad av frågan. särskilt hur man säkrar upp Apache. Så kommentera gärna råden i länkarna! :)
webconstruction
Inlägg: 112
Blev medlem: 29 mar 2012, 12:40
OS: Ubuntu

Re: Säkerheten på min webbserver.

Inlägg av webconstruction »

Hur gör jag om jag inte skall köra root på min webserver ?

Alla ändringar m.m måste ju göra i root ?
ubot
Inlägg: 4613
Blev medlem: 04 jan 2008, 14:03
OS: Ubuntu
Utgåva: 24.04 Noble Numbat LTS

Re: Säkerheten på min webbserver.

Inlägg av ubot »

Det är klart att du kan använda sudo för att ge din användare admin-rättigheter men jag varnar inte för det. Jag varnar för att köra webbservern som root. För att ändra filer som ligger i /var/www/ så måste du ha root-rättigheter ja eftersom din användare inte är ägare. Men du ska inte köra ett program som root i onödan eftersom det innebär en säkerhetsrisk. Om någon kommer åt att skapa/ändra en fil på webbservern så riskerar ju filen att exekveras som root om Apache körs som root. Det innebär en stor säkrhetsrisk! Apache körs inte som root som standard. Det körs som användaren www-data:
I have never seen a user case where apache needs to run as root. by default, on Ubuntu, apache runs as www-data.
Så det är ju inget problem så länge du inte får för dig att köra Apache som root, vilket jag alltså varnar för som ett första steg i att göra Apache säkert. :)
Du måste skilja på att utföra ett kommando med sudo (root) för att t.ex. ändra filer i /var/www och att köra programmet Apache som användaren root. Det är två helt olika saker. Att du sedan startar, stänger av och startar om Apache med sudo framför kommandot service apache2 start|stop|restart innebär ju inte att root är användaren som kör Apache2 utan bara att du ger din användare behörighet att starta, stoppa och starta om Apache2 m.h.a. sudo. Du ser i listan över processer som körs vilken användare som kör Apache2 när webbservern rullar om du kör kommandot:

Kod: Markera allt

top
Användarvisningsbild
webaake
Inlägg: 3962
Blev medlem: 09 maj 2007, 09:46
OS: Xubuntu
Utgåva: 22.04 Jammy Jellyfish LTS

Re: Säkerheten på min webbserver.

Inlägg av webaake »

Kolla in fail2ban.
Xubuntu på flera maskiner. Men inte Unity!
Mer Terminalanvändande i Ubuntu vore bra. Och Xfce. Och Mate.
webconstruction
Inlägg: 112
Blev medlem: 29 mar 2012, 12:40
OS: Ubuntu

Re: Säkerheten på min webbserver.

Inlägg av webconstruction »

ubot skrev:Det är klart att du kan använda sudo för att ge din användare admin-rättigheter men jag varnar inte för det. Jag varnar för att köra webbservern som root. För att ändra filer som ligger i /var/www/ så måste du ha root-rättigheter ja eftersom din användare inte är ägare. Men du ska inte köra ett program som root i onödan eftersom det innebär en säkerhetsrisk. Om någon kommer åt att skapa/ändra en fil på webbservern så riskerar ju filen att exekveras som root om Apache körs som root. Det innebär en stor säkrhetsrisk! Apache körs inte som root som standard. Det körs som användaren www-data:
I have never seen a user case where apache needs to run as root. by default, on Ubuntu, apache runs as www-data.
Så det är ju inget problem så länge du inte får för dig att köra Apache som root, vilket jag alltså varnar för som ett första steg i att göra Apache säkert. :)
Du måste skilja på att utföra ett kommando med sudo (root) för att t.ex. ändra filer i /var/www och att köra programmet Apache som användaren root. Det är två helt olika saker. Att du sedan startar, stänger av och startar om Apache med sudo framför kommandot service apache2 start|stop|restart innebär ju inte att root är användaren som kör Apache2 utan bara att du ger din användare behörighet att starta, stoppa och starta om Apache2 m.h.a. sudo. Du ser i listan över processer som körs vilken användare som kör Apache2 när webbservern rullar om du kör kommandot:

Kod: Markera allt

top
Men hur vet jag om apache2 körs som root eller inte ?
Jag installerar apache2 från min första användare när jag installerar ubuntu. Men den användaren är väll inte root eller ?
ubot
Inlägg: 4613
Blev medlem: 04 jan 2008, 14:03
OS: Ubuntu
Utgåva: 24.04 Noble Numbat LTS

Re: Säkerheten på min webbserver.

Inlägg av ubot »

Men hur vet jag om apache2 körs som root eller inte ?
När du installerar Apache2 så skapas användaren www-data (om det inte finns redan innan) som också är den användaren som kör Apache som standard. Du kör inte Apache som din användare eller som root om du inte är inne och strular till systemet så att du ändrar så att Apache körs som root. Det hade varit vansinnigt om Ubuntu hade kört Apache som root som standard.

Du ser ju vilken användare som kör Apache om du kör det här kommandot när Apache är igång (användaren som kör processen står näst längst till vänster):

Kod: Markera allt

top -b -n 1 | grep "apache2"
webconstruction
Inlägg: 112
Blev medlem: 29 mar 2012, 12:40
OS: Ubuntu

Re: Säkerheten på min webbserver.

Inlägg av webconstruction »

Okaj då är jag med på det. :)
när det gäller mailservern tex hur säkrar jag så inte vem somhelst kan skicka mail via min server ?

Sedan om jag vill köra kryptering på min webbserver tex på mitt ip nummer går det och hur skapar jag ett certifikat för detta ?
webconstruction
Inlägg: 112
Blev medlem: 29 mar 2012, 12:40
OS: Ubuntu

Re: Säkerheten på min webbserver.

Inlägg av webconstruction »

om min webb server står bakom en router med brandvägg behöver man installera en mjukvaru brandvägg som tex firestarter ?
ubot
Inlägg: 4613
Blev medlem: 04 jan 2008, 14:03
OS: Ubuntu
Utgåva: 24.04 Noble Numbat LTS

Re: Säkerheten på min webbserver.

Inlägg av ubot »

webconstruction skrev:om min webb server står bakom en router med brandvägg behöver man installera en mjukvaru brandvägg som tex firestarter ?
Ubuntu har redan en brandvägg installerad från start. Den heter Iptables (netfilter?). Firestarter är precis som UFW ett grafiskt gränssnitt för att administrera Iptables (netfilter?). Om du menar allvar med att säkra upp din server så ska du inte ha en grafisk miljö på din server ö.h.t. och därför inte heller program som Firestarter eller UFW. Iptables administrerar du på en server från Terminalen.
Här är förklaringen till att du inte ska ha en grafisk miljö installerad på en server:
Arguments Against a GUI

Most Ubuntu Server developers recommend not installing a GUI on a server. There are multiple reasons for not installing a GUI.

Some reasons to not install a GUI include:

You'll have more code subject to security vulnerabilities, more packages that need updating, and more server downtime.
Performance may suffer because resources (memory, hard disk space, CPU, etc.) will be consumed by the GUI.
It is best practice to only install needed software on a production server.
The GUI may include other network services that are inappropriate for a server.

One of the goals of Ubuntu Desktop Edition is to make it easier for users to use Linux. When installing some desktop environments, services that you may not specifically want will be installed. For example avahi-daemon, which is used to help configure networking, adds another open port and may introduce unwanted DNS conflicts with a .local domain.
If you're using an Ubuntu LTS release prior to 12.04 LTS, X11 and desktop packages are not supported for the full 5 year lifecycle of the LTS server release.

So for the most secure server it is best to not install a GUI.
https://help.ubuntu.com/community/ServerGUI
https://help.ubuntu.com/community/IptablesHowTo
https://help.ubuntu.com/community/Firewall
webconstruction
Inlägg: 112
Blev medlem: 29 mar 2012, 12:40
OS: Ubuntu

Re: Säkerheten på min webbserver.

Inlägg av webconstruction »

Ok, jag har inte grafisk miljö på min server den körs i terminal.

Nu har jag faktiskt fått till mina certifikat, men hur gör man så sidan endast körs med certifikatet och att man inte kan köra utan på en webbplats ?
webconstruction
Inlägg: 112
Blev medlem: 29 mar 2012, 12:40
OS: Ubuntu

Re: Säkerheten på min webbserver.

Inlägg av webconstruction »

Får inte certifikatet att fungera endast på mitt ip nummer.
Kollar jag i apache2 error logg så är fel meddelandet följande:

[Wed Oct 10 12:10:33 2012] [error] [client ipnumret] Invalid method in request \x16\x03\x01
[Wed Oct 10 12:10:33 2012] [error] [client ipnumret] Invalid method in request \x16\x03\x01
Användarvisningsbild
johanre
Serveradmin
Inlägg: 3888
Blev medlem: 22 okt 2006, 09:13
OS: Ubuntu
Utgåva: 22.04 Jammy Jellyfish LTS
Ort: Malmö

Re: Säkerheten på min webbserver.

Inlägg av johanre »

Skriv svar

Återgå till "Nätverk, säkerhet och servrar"