Göra backup på en Ubuntu Server med Rsync SSH --> Synology NAS

Permalänk
Medlem

Göra backup på en Ubuntu Server med Rsync SSH --> Synology NAS

Jag funderar på att konfigurera en riktigt offsite backup utav ett helt system i Ubuntu Server. D.v.s. all data + MySQL, så att jag har en backup på hela systemet ifall det värsta inträffar och Servern dör.

Jag har förstått att Rsync är det man bör använda tillsammans med SSH (på en annan port än 22) för att skicka datan till en offsite location. Jag har tittat på en så enkel maskin som möjligt för att lagra backupen på, och då är ju NAS ett bra alternativ, rätta mig om jag har fel. Den jag tittat på som hastigast är denna: http://www.inet.se/produkt/4304705/synology-diskstation-ds414... då jag inte lär behäva mer än 10TB i backuputrymme.

Gällande SSH. Polaren satte upp SSH bara för att testa hur spammad han blev med bruteforce försök, och det visade sig att han fick en massa besök från China som försökte tränga sig in i systemet. Därför är jag skeptisk till att öppna portar och göra servern sårbar för omvärlden. Hur löser jag den sårbarheten på bästa sätt?

Gällande Synology. Har hört att programvaran är bra, men är det möjligt att skicka data via SSH till den? Även här vill jag låsa åtkomsten så mycket som möjligt för omvärlden.

Gällande Rsync. Enklaste är väl att köra typ $ rsync -av –delete -e ssh / geek@192.168.235.137:/Directory2/ ?
Om jag enbart anger / så gör den väl backup på hela systemet? Eller är det bättre att enbart göra backup på Apachekonfigen, MySQL, och /www mappen och sedan installera om Ubuntu Server vid en eventuell krasch och sedan importera /www mappen, MySQL, och Apachekonfigen efter en fresh install?

Tack på förhand!

Visa signatur

Citera för svar

Stora Owncloud/Nextcloud-tråden: http://www.sweclockers.com/forum/122-server/1212245-officiell...
Jobb: Datacenter Manager
Grundare: https://www.hanssonit.se

Permalänk
Inaktiv
Skrivet av enoch85:

Gällande SSH. Polaren satte upp SSH bara för att testa hur spammad han blev med bruteforce försök, och det visade sig att han fick en massa besök från China som försökte tränga sig in i systemet. Därför är jag skeptisk till att öppna portar och göra servern sårbar för omvärlden. Hur löser jag den sårbarheten på bästa sätt?

Använd SSH nycklar (istället för lösenord) och fail2ban. Några standard grejer jag brukar ställa in för mina openssh servrar:

  • AllowUsers username1 username2 (alternativt AllowGroups och välj vilka grupper som har rätt att ansluta)

  • PermitRootLogin no

  • RSAAuthentication yes

  • PubkeyAuthentication yes

  • PasswordAuthentication no

Sedan konfigurerar jag så fail2ban bannar alla som försöker ansluta och ger ett felaktigt lösenord en gång.

Du kan även tweaka din hosts.allow och .deny fil för att specificera vilka IP som får ansluta till ssh.

stavfel
Permalänk
Medlem

Att ha SSH öppet mot internet känns inte så roligt, jag hade nog skapat en VPN tunnel mellan servern och offsite enheten. Då behöver du inte Synologyn öppen mot internet heller. I den tunnel skulle jag ha kört Rsync.

Sen är det nog smartast som du är inne på att bara köra backup på www mappen och apache konfigen förutsatt att servern endast används som webb server. Men i backupscriptet skulle jag ha börjat med och dumpat ut mysql databasen på fil så den också blir med i Rsync kopieringen.

Skickades från m.sweclockers.com

Permalänk
Medlem

Bra tips från båda svaren ovan. Ett tillägg till rsync skulle kunna vara -z (alternativt och/eller --compress|--compress-level=NUM,--skip-compress=LIST) så att all data komprimeras vid överföringen. Just textfiler och databaser är lätta att komprimera och kan nog snabba upp överföringen en hel del.

Hemmavid kör jag själv en liknande lösning från flera datorer/servrar med det ytterligare tillägget att jag använder ZFS på backupsidan och tar snapshot efter varje rsync så man även kan gå tillbaka till en äldre backup. Det är framförallt väldigt praktiskt när man använder sig av rsync --delete (eller motsvarande). Nu har jag ingen koll på Synologys grejer men misstänker att de inte har stöd för ZFS, men eventuellt någon annan snapshothantering? Ett annat alternativ är annat sätt rotera backupera och ange olika destinationer mellan backuptillfällena. Dock tilkomemr nackdelen med mer data som behöver föras över samt mer lagringsyta.

Att bara backupa www-mappen, databaserna samt extra konfiguration (apache och eventuellt MySQL och annat) är en bra idé. Kör även detta hemmavid med tillägget att jag har skrivit lite dokumentation hur man sätter upp en ny server så det går snabbt att få upp allt igen.

Visa signatur

Efter att ni har läst det här har ni insett att det inte gav något.

Permalänk
Medlem
Skrivet av enoch85:

Gällande SSH. Polaren satte upp SSH bara för att testa hur spammad han blev med bruteforce försök, och det visade sig att han fick en massa besök från China som försökte tränga sig in i systemet. Därför är jag skeptisk till att öppna portar och göra servern sårbar för omvärlden. Hur löser jag den sårbarheten på bästa sätt?

Bara att bruteforca ett svårt lösenord tar tid, speciellt om du ser till att servern inte tillåter extrema mängder inloggningsförsök per sekund. När du sedan dessutom kräver ett användarnamn så krävs dessutom att den bruteforcar just ditt användarnamn + just ditt lösenord samma försök (servern säger inget om att angivet användarnamn inte finns). Kort och gott måste man prova alla kombinationer användarnamn med alla kombinationer lösenord och med en timeout som gör att man inte kan prova för ofta kommer det ta ofantligt lång tid.

Annars är certifikat en ytterligare försäkring om att enbart dina egna datorer kan ansluta till servern.

För den genomsnittlige hemmaservern skulle jag påstå att det skyddar mot alla icke riktade attacker.

Permalänk
Medlem

Jag skulle undvika VPN. Det komplicerar hela lösningen.

Flytta SSH porten till en egen, typ 5555 så slipper du alla inloggningsförsök. Komplettera med de tips som finns i tråden så är det bara att köra.

Visa signatur

| Citera för svar! | Gilla bra inlägg! |

Permalänk
Medlem

Tack för era svar.

Igår natt så höll detta mig vaken, och jag lekte lite med tar oxå. Det resulterade i följande script, dock är detta långt ifrån optimalt:

#!/bin/bash

# SSL Backup
tar -zcvf SSL.tar.gz /etc/ssl /var/www/owncloud/data/[USER]/files/ownCloud\ files/Backup/SSL_APACHE_NETWORK

# Apache Backup
tar -zcvf apache2.tar.gz /etc/apache2/ /var/www/owncloud/data/[USER]/files/ownCloud\ files/Backup/SSL_APACHE_NETWORK
tar -zcvf php5.tar.gz /etc/php5/apache2/ /var/www/owncloud/data/[USER]/files/ownCloud\ files/Backup/SSL_APACHE_NETWORK

# Backup Network
cp /etc/network/interfaces /var/www/owncloud/data/[USER]/files/ownCloud\ files/Backup/SSL_APACHE_NETWORK
cp /etc/hosts /var/www/owncloud/data/[USER]/files/ownCloud\ files/Backup/SSL_APACHE_NETWORK

# Backup ownCloud config.php
cp /var/www/owncloud/config/config.php /var/www/owncloud/data/[USER]/files/ownCloud\ files/Backup/SSL_APACHE_NETWORK

exit 0

Jag användder ju ownCloud, och jag kom på att jag skulle kunna kopiera filer lokalt inne i systemet, och sedan sätta upp en client i Windows på en annan dator/NAS som synkar den mappen, såhär:
http://i.imgur.com/cOwkJSl.png

Problemet jag får är att det verkar vara något med rättigheterna som gör att filerna inte syns i ownCloud, men de syns i Linux. Några tips här?

Btw, får inte Rsync att funka som jag vill. Den kopierar, men jag får inte upp alla filer i ownCloud som sagt. Provat köra scriptet med www-rättigheter också, utan att lyckas.

Visa signatur

Citera för svar

Stora Owncloud/Nextcloud-tråden: http://www.sweclockers.com/forum/122-server/1212245-officiell...
Jobb: Datacenter Manager
Grundare: https://www.hanssonit.se

Permalänk
Inaktiv
Skrivet av enoch85:

Jag användder ju ownCloud, och jag kom på att jag skulle kunna kopiera filer lokalt inne i systemet, och sedan sätta upp en client i Windows på en annan dator/NAS som synkar den mappen, såhär:
http://i.imgur.com/cOwkJSl.png

Problemet jag får är att det verkar vara något med rättigheterna som gör att filerna inte syns i ownCloud, men de syns i Linux. Några tips här?

Är www-data ägaren av filen? Annars syncas den inte.

Permalänk
Medlem
Skrivet av anon37058:

Är www-data ägaren av filen? Annars syncas den inte.

Hur gör man om man vill synka en mapp med fler olika rättigheter?

T.ex. rsync -e ssh enoch@localhost1:/var/www enoch@localhost2:/var/www (där /www/ innehåller både root och www-data)

Visa signatur

Citera för svar

Stora Owncloud/Nextcloud-tråden: http://www.sweclockers.com/forum/122-server/1212245-officiell...
Jobb: Datacenter Manager
Grundare: https://www.hanssonit.se

Permalänk
Medlem

Jag löste det. Nu är allt konfat med fail2ban och SSH samt Rsync, tack för era inputs!

Visa signatur

Citera för svar

Stora Owncloud/Nextcloud-tråden: http://www.sweclockers.com/forum/122-server/1212245-officiell...
Jobb: Datacenter Manager
Grundare: https://www.hanssonit.se