Бэкап на другой компьютер через ssh.

Форум для размещения материалов по реализации различных схем использования ПО, решению частых проблем и предупреждению частых ошибок
Закрыто
gtk
Сообщения: 232
Зарегистрирован: Пт янв 21, 2005 18:33

Бэкап на другой компьютер через ssh.

Сообщение gtk »

Бэкап базы данных (Utm) через ssh тунель.


Итак, хочу поделится своей маленькой(полезной) наработкой. А именно бэкап
базы данных утм через ssh тунель.


Скрипт самого бэкапа.

#!/bin/sh
# e-mail:nizamrb80@yahoo.co.uk
# Copyright (c) 2001-2005 Delta Telecom Inc.(Makhachkala Dagestan) All rights reserved.
a="/usr/backup/backup.sql"
echo baza backup
/usr/local/bin/mysqldump -q --all --password=**** --user=username --force UTM5 > $a.`date +%Y%m%d%h`
tar cf $a.`date +%Y%m%d%h`.tar $a.`date +%Y%m%d%h` && gzip -9 $a.`date +%Y%m%d%h`.tar




Для реализации бэкапа нам понадобится утилита psftp.
Установить ее можно из портов.

cd /usr/ports/security/putty
make && make install


Далее идет бэкап через ssh на другой компьютер. Наверное понятно, что на другом компьютере должна стоять машина
с ssh доступом.

# cat psftpbackup.sh
#!/bin/sh
a="/usr/backup/backup.sql"
echo put $a.`date +%Y%m%d%h`.tar.gz > backup.scr
echo quit >> backup.scr
/usr/local/bin/psftp gtk@10.100.80.7 -pw password -b /usr/home/op/backup.scr
echo "Backup 10.100.80.1 zavershen" | mail admin@mail.com



Эти два скрита добавляются в крон.

gravis
Сообщения: 562
Зарегистрирован: Ср мар 16, 2005 15:31
Откуда: Село Красноярск

Сообщение gravis »

для этой задачи вообще можно обойтить только 'ssh'
плюс к этому настроить аутентификацию по ключам, а не паролям
да и если уж хочется копировать файлы по тунелю, с этим прекрасно справится scp, без установки дополнительных утилит

Аватара пользователя
XoRe
Сообщения: 458
Зарегистрирован: Ср янв 10, 2007 16:04

Сообщение XoRe »

Ещё можно зашифровать файл какой-нибудь утилиткой и залить на фтп.
Например в FreeBSD в системе есть утилита bdes.
Шифрование + отправка может выглядеть так:

tar cyf - -C <dir> | bdes -k "pass" > /tmp/file.tbz
echo "put /tmp/file.tbz file.tbz" | /usr/bin/ftp ftp://ftpuser:ftpparol@host/
rm -f /tmp/file.tbz
echo "done" | mail -s backup root@localhost

Если не устраивает стойкость шифрования программы bdes, я уверен, ей можно найти замену более серьёзной программой.

akh
Сообщения: 212
Зарегистрирован: Чт июн 30, 2005 07:18

Сообщение akh »

Не вижу смысла гонять файлы по scp. Если бекапы должны лежать на обеих машинах, то рулит rsync, ну и ssh-авторизация должна быть настроена по ключу, хранить пароли в открытом виде - не желательно.

Закрыто