Nie jesteś zalogowany.
Jeśli nie posiadasz konta, zarejestruj je już teraz! Pozwoli Ci ono w pełni korzystać z naszego serwisu. Spamerom dziękujemy!
Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.
Strony: 1
Witam,
Pracuję w niedużej firmie gdzie zaistniała potrzeba stworzenia dość bezpiecznego magazynu plików. Niestety nie mam środków aby kupić gotowe rozwiązanie NAS. Posiadam różnej maści komputery stacjonarne (SOHO), które nie są potrzebne a mogłyby posłużyć jako taki serwer plików. Moja koncepcja jest następująca:
Instaluje Debian 6, tworzę około 20 użytkowników systemu każdy ma swój folder domowy i poprzez SSH loguje się przez klienta gdzie umieszcza swoje pliki (nie chciałem tego robić jako FTP).
Posiadam 2 dyski twarde jeden 320Gb oraz 1TB. Chciałem na tym mniejszym zainstalować Debiana (podzielić go na 3 partycje jedna na system osobna na /home i /swap). Na dysku sdb1 stworzyć folder /backup. Napisałem skrypt, który będzie pakował i kopiował zawartość kont użytkowników do /backup. W Cronie ustawię częstotliwość wykonania skryptu i będzie to taki pseudo backup na drugi dysk.
Wady:
Nie potrafię ograniczyć ilości przydzielanych zasobów dla konta (np. 5GB), no i nie wiem jak szybko miejsce się skończy gdyż kopie wykonywane przez skrypt raz na tydzień będą powodować nadmierną liczbę tych samych danych. (mój skrypt będzie robił pełną kopię inaczej niestety nie potrafię tego ustawić)
Prosiłbym o konstruktywną krytykę i podsunięcie uwag (wiem, że są RAIDy, Bacula, LVM, FreeNAS ale nie wiem czy sobie z tym poradzę). Wybrałem SSH ponieważ zapewnia szyfrowanie.
Pozdrawiam
Offline
ilośc przydzielanych zasobów dla konta = Quota
http://www.linuxhomenetworking.com/wiki/index.php/Quick_HOWTO_:_Ch28_:_Managing_Disk_Usage_with_Quotas
na temat backupow jest od groma materialow w sieci:
musisz sie zapoznac z haslami:
"full backup", "incremental backup" "differential backup"
a reszte to ci chlopaki/dziewczeta wytlumacza.
Offline
Odnośnie ograniczania miejsca na dysku to oczywiście quota
dawno temu do backupów używałem program , jak dobrze pamiętam, flexbackup
Dwa pliki konfiguracyjne miałem - jeden dla pełnego, drugi dla przyrostowego. Całość odpalana z crona ze wskazaniem pliku conf
Pakowanie może wykonywać automatycznie, w konfigu można było chyba także wskazać wykluczenia
Jeśli chodzi o szyfrowanie, to przecież ftp także może być szyfrowany. Jeśli nie chcesz dawać ludziom dostępu do konsoli po SSH, to można ustawić tak, aby mogli wrzucać tylko pliki po SCP, do tego dla użyszkodników klienta WinSCP (o ile oni pracują na win) - chyba będzie dla nich prościej
Offline
Hosty kliencie pracować będą na Windowsach? Jeśli tak to pokusiłbym się o Sambę. Pełny, łatwiejszy (z punktu widzenia użytkownika) dostęp do plików. Twoją wizje odczytuje, że użytkownicy będą wrzucać pliki na FTPa przy pomocy Filezilli czy innego WinSCPa. Takie użytkowanie nie jest najporęczniejsze więc te pliki będą backupem. Jeśli tak to Ty chcesz robić backup backupu. Czy warto?
A dysponujesz może dodatkowym funduszem na to? Może warto byłoby się pokusić o programowy RAID1 (na dane). Ale do tego przydały się dwa identyczne dyski.
Do kopiowania danych na backup może Ci posłużyć rsync. Albo postaw na LVM i robienie snapshotów: http://tabaszewski.pl/archiwizacja-lvm-jak-zrobic-snapshot-partycji/2011/08/26/100/
AAA... chciałem jeszcze zapytać o szyfrowanie... po co? Jak rozumiem wszystko w siexi lokalnej będzie się odbywać.
Ostatnio edytowany przez thalcave (2012-08-22 20:00:53)
Offline
Dokładnie tak zrobiłem jak napisał meciarz. Klienci będą mieli zainstalowany WinSCP i poprzez to będą mogli się dostawać na własne konta. Wybrałem takie coś ponieważ użytkownicy będą mogli sami decydować czy dane mają być dostępne dla innych użytkowników a w WinSCP jest to dośc proste zarządzanie uprawnieniami, stworzę do tego poradnik myślę, że to nie będzie koszmar dla użytkowników. thalcave tak to co tam się będzie działo to będzie backup backupu - czy warto? to dobre pytanie... po prostu miałem ostatnio kłopoty z dyskiem i próbuję to jakoś zabezpieczyć. Kasa na drugi dysk myślę by była tak żeby zrobić softwarowy RAID 1, bo niestety kontrolery RAID są bardzo drogie. Muszę też doczytać o tym LVM bo słabo znam temat a wydaje się to też dobrym pomysłem. Szyfrowanie...dane będą transferowane poza sieć lokalną gdyż serwer będzie pracował poza lokalizacją w której przebywam na codzień, mimo, że jest około 20 osób są 3 oddziały a sieć nie jest połączona tunelami VPN itp. Sambę używam także ale do wymiany ale nie walczyłem żeby zasoby były dostępne spoza LAN zastosowałem SSH...a i SSH taki psychologiczny bardzie bodziec w stronę władz, którym muszę przedstawić rozwiązanie ;)
Offline
ja kiedys zrobilem tak ze na jednym mialem serwer samby a na drugi komp synchronizowalem przyrostowo za pomoca rsync.
co do uprawnien mozna zrobic to na kilka sposobow np sam ustawisz kilka zasobow wymiennych, lub skoro masz tylko 20 kont utworz katalogi i nadaj odpowiednie uprawnienia, lub zrob jakas formule ze np folder sch_jan moze odczytywac uzytkownik jan a w skrypcie w cron sprawdzaj czy sa takie foldery i nadawaj im uprawnienia. Co do ssh jako wymiany plikow zycze powodzenia ja sam jako imformatyk nie uzywal bym takiego rozwiazania bo jest toporne.
Offline
SSH loguje się przez klienta gdzie umieszcza swoje pliki (nie chciałem tego robić jako FTP).[/quote]
Moim zdaniem strasznie nie wygodne rozwiązanie.
Na jakim systemie siedzą pracownicy, którzy będą się do tego łączyli?
Pozdrawiam,
[url=http://banasiak.me]bns[/url]
Offline
Do ustawiania uprawnień najlepie ustawić użytkownikom odpowiednie parametry umask, wtedy wsio będzie zawsze miało takie uprawnienia, jak powinno.
Ssh przy wymianie plików, jeśli przez WinSCP - to rożnicy między sftp a ftp-ssl nie zauważyłem.
Natomiast w serwerze ssh nie widzę kilku pożytecznych funkcji, które są dostępne we wszystkich serwerach ftp:
- skanowanie antywirusem -Proftpd ma moduł do clama, Pure-ftpd ma uploadscript - w którym można ustawić dowolną akcję dla pliku.
- możliwość ustawienia umask bezposrędnio w serwerze ftp, niezależnie od wartości obowiązujących w systemie.
- w ssh nie widziałem modułu slużącego do ustalania limitów transferu per/pacjent - co w serwerach ftp nie jest niczym niezwykłym.
I przede wszystkim możliwość tworzenia kont wirtualnych, ssh bazuje na użytkownikach systemowych, którzy mają powlokę wymienioną w /etc/shells, a ftp może dane klientow trzymać w SQLu albo własnych konfigach , i obsługiwać użyszkodników, którzy w ogóle nie istnieją w systemie poza ftp.
Dlatego raczej wziąlbym Pure-ftpd zamiast SSH do takiej zabawy, Windows na 100% ma opcję podmontowania zasobu, żeby wisiał w systemie jako folder albo dysk sieciowy.
Wtedy może to być rozwiązanie trochę wygodniejsze niż WinSCP.
Wada ftp w porobwnaniu zssh polega na tym, że choć serwery ftp bez problemu obsługują ssl/tls - to nie znam żadnego, w którym działałoby uwierzytelnienie pacjenta kluczem kryptograficznym,
(choć [url=http://www.proftpd.org/docs/howto/TLS.html]roftpd[/url] podobno ma taką opcję),
co w ssh jest standardem, i jest bardzo proste do skonfigurowania.
Sznurek:
http://cybernetnews.com/cybernotes-map-a-ftp-to-a-drive-in-windows/
Sftp też można tak montować:
http://dokan-dev.net/en/
http://www2.ece.ohio-state.edu/computing/ssh_win.html#PCFT
Ostatnio edytowany przez Jacekalex (2012-08-23 09:55:09)
Offline
[quote=Jacekalex]Ssh przy wymianie plików, jeśli przez WinSCP - to rożnicy między sftp a ftp-ssl nie zauważyłem.[/quote]
Chodzi mi o to, żeby wrzucić pliki trzeba uruchomić inną aplikację, połączyć się, przegrać plik. Natomiast aby otworzyć plik zamiast dwuklik na nim trzeba znowu odpalić specjalną aplikację, połączyć się, przegrać plik i otworzyć go.
Moim zdaniem rozwiązania powinny być jak najłatwiejsze do obsługi przez usera.
Jeśli klienci są na Windows to bym to zrobił po smb:
- montowanie zasobu sieciowego pod jakąś literę dysku w systemie albo nawet pod katalog.
- uprawnienia da się ładnie skonfigurować.
- transmisję plików też da się zabezpieczyć - SSL http://www.linuxtopia.org/online_books/network_administration_guides/using_samba_book/appa_05_00.html
--edit
Sznurek:
http://cybernetnews.com/cybernotes-map-a-ftp-to-a-drive-in-windows/[/quote]
ok, to wydaje się obalać mój argument :)Ostatnio edytowany przez bns (2012-08-23 10:41:53)
Pozdrawiam,
[url=http://banasiak.me]bns[/url]
Offline
Można też postawić OpenVPN na serwerze i u pacjentów, i puścić sambę czy ftp przez tunel i interfejsy tap.
Autoryzcja certyfikatami ssl dziaa w OpenVPN idealnie, do tego może miauczeć o hasło, jeśli dodatkowo dorzuci się pam w konfigu.
I oczywiście ciągle nie widzę, czy ten serwer na backupy stoi w sąsiednim pokoju czy na sąsiednim kontynencie :D
W pierwszym przypadku szyfrowanie nie jest konieczne, w drugim wręcz przeciwnie ;)
Ostatnio edytowany przez Jacekalex (2012-08-23 11:05:34)
Offline
Odnośnie upierdliwej obsługi znalazłem takie rozwiązanie odnoście SSH http://www.swish-sftp.org/ mapujemy dysk i działa to w sposób bardziej user friendly niż WinSCP. Problemy jakie ta aplikacja stwarza:
kodowanie polskich znaków w nazwach - nie wiem jak to się dzieje ale po zalogowaniu przez WinSCP są krzaki. Aplikacja też nie pozwala zarządzać uprawnieniami tak jak ma to miejsce w WinSCP. Na razie testuje to.
Odnośnie odległości lokalizacje są w osobnych miastach ~120Km od siebie
Testuje to i testuje i niestety (jak zawsze) pojawiły się kłopoty...mianowicie wydajność
Uruchomiony mam serwer na maszynie wirtualnej w sieci LAN (VirtualBox) i tam dodatkowo jeszcze jeden linux jako klient. Jak kopiuje sobie z Linuxa na serwer przez scp to mam prędkość 20MB/s, natomiast łącząc się w Windzie przez WinSCP nie wyciąga mi nic ponad 7MB/s..dlaczego tak się dzieje??
Ostatnio edytowany przez gutk (2012-08-28 21:10:29)
Offline
Strony: 1
Time (s) | Query |
---|---|
0.00018 | SET CHARSET latin2 |
0.00005 | SET NAMES latin2 |
0.00111 | SELECT u.*, g.*, o.logged FROM punbb_users AS u INNER JOIN punbb_groups AS g ON u.group_id=g.g_id LEFT JOIN punbb_online AS o ON o.ident='3.147.75.46' WHERE u.id=1 |
0.00072 | REPLACE INTO punbb_online (user_id, ident, logged) VALUES(1, '3.147.75.46', 1732601238) |
0.00042 | SELECT * FROM punbb_online WHERE logged<1732600938 |
0.00229 | DELETE FROM punbb_online WHERE ident='13.59.134.65' |
0.00068 | DELETE FROM punbb_online WHERE ident='85.208.96.207' |
0.00052 | SELECT topic_id FROM punbb_posts WHERE id=209530 |
0.00006 | SELECT id FROM punbb_posts WHERE topic_id=21843 ORDER BY posted |
0.00050 | SELECT t.subject, t.closed, t.num_replies, t.sticky, f.id AS forum_id, f.forum_name, f.moderators, fp.post_replies, 0 FROM punbb_topics AS t INNER JOIN punbb_forums AS f ON f.id=t.forum_id LEFT JOIN punbb_forum_perms AS fp ON (fp.forum_id=f.id AND fp.group_id=3) WHERE (fp.read_forum IS NULL OR fp.read_forum=1) AND t.id=21843 AND t.moved_to IS NULL |
0.00006 | SELECT search_for, replace_with FROM punbb_censoring |
0.00107 | SELECT u.email, u.title, u.url, u.location, u.use_avatar, u.signature, u.email_setting, u.num_posts, u.registered, u.admin_note, p.id, p.poster AS username, p.poster_id, p.poster_ip, p.poster_email, p.message, p.hide_smilies, p.posted, p.edited, p.edited_by, g.g_id, g.g_user_title, o.user_id AS is_online FROM punbb_posts AS p INNER JOIN punbb_users AS u ON u.id=p.poster_id INNER JOIN punbb_groups AS g ON g.g_id=u.group_id LEFT JOIN punbb_online AS o ON (o.user_id=u.id AND o.user_id!=1 AND o.idle=0) WHERE p.topic_id=21843 ORDER BY p.id LIMIT 0,25 |
0.00083 | UPDATE punbb_topics SET num_views=num_views+1 WHERE id=21843 |
Total query time: 0.00849 s |