Показаны сообщения с ярлыком proftpd. Показать все сообщения
Показаны сообщения с ярлыком proftpd. Показать все сообщения

четверг, 13 июня 2013 г.

Скрипт для бэкапирования базы MySQL (FreeBSD 9.2)


#!/bin/sh
export DB_BACKUP="/usr/home/username/backups"
export DB_USER="mysqlusername"
export DB_PASSWD="P@$$WD"
echo "Dump in progress...."
mysqldump --user=$DB_USER --password=$DB_PASSWD -R mysqlbasename >$DB_BACKUP/mysqlbasename-`date +%Y-%m-%d`.sql
echo "Dump database succesfully done!"
echo "Start archivation...."
tar -vczf $DB_BACKUP/mysqlbasename-`date +%Y-%m-%d`.tgz $DB_BACKUP/*.sql
echo "Archivation done! Removing old copies...."
find $DB_BACKUP -name "*.tgz" -mtime +3 -delete
find $DB_BACKUP -name "*.sql" -mtime +3 -delete

среда, 3 апреля 2013 г.

Редирект страницы

Файл index.php

< ? php
$URL="http://google.com";
header ("Location: $URL");
? >

пятница, 29 марта 2013 г.

Webmin – юзерфрендли управление FreeBSD


Operating system FreeBSD 9.0
Webmin version 1.610
Kernel and CPU FreeBSD 9.0-RELEASE on amd64


Webmin — это программный комплекс, позволяющий администрировать операционную систему через веб-интерфейс, в большинстве случаев, позволяя обойтись без использования командной строки и запоминания системных команд и их параметров. Используя любой браузер, администратор сервера может создавать новые учётные записи пользователей, почтовые ящики, изменять настройки служб и сервисов, например : веб-сервера Apache, DNS. Однако, в некоторых случаях необходимо знание операционной системы и редактирование конфигурационных файлов вручную. Кроме того, не все возможности операционной системы и не все программы можно конфигурировать через интерфейс Webmin, например nginx пока не входит в базовый набор.

Webmin состоит из простого веб-сервера и большого количества скриптов (>500), которые собственно и осуществляют связь между командами администратора через веб-интерфейс и их исполнением на уровне операционной системы и прикладных программ. Webmin написан полностью на языке Perl и не использует никаких дополнительных нестандартных модулей. Простота, лёгкость и быстрота выполнения команд — одно из самых больших преимуществ данной панели управления.
Другое важное преимущество — возможность исправлять конфигурационные файлы вручную, так как Webmin не «портит» конфигурационные файлы, в отличие от некоторых других панелей управления, и следует, как правило, политикам дистрибутивов по конфигурированию программ.
Данная панель управления бесплатно на условиях лицензии BSD распространяется для коммерческого и некоммерческого использования. Авторы этой программы позволяют всем желающим не только бесплатно использовать программу, но и изменять её по своему усмотрению.

wia wiki

Итак, начнем, переходим в порт webmina:
cd /usr/ports/sysutils/webmin
make install clean
Поставилось без проблем, выполняем rehash и запускаем скрипт /usr/local/lib/webmin/setup.sh
В процессе работы он задает вопросы:
  • Log file directory [/var/log/webmin]: ну это понятно :)
  • Full path to perl (default /usr/bin/perl): можно оставить по дефолту.
  • Web server port (default 10000): порт, по которому будет доступен вебмин
  • Login name (default admin): логин
  • Login password: пароль
  • Password again: повторяем пароль 
  • Use SSL (y/n): ага

Добавляем в /etc/rc.conf строку webmin_enable="YES" .  Старт по адресу
/usr/local/etc/rc.d/webmin start 



среда, 24 октября 2012 г.

Базовая настройка proftpd на Debian и FreeBSD 7

Часть I. Установка на Debian (Ubuntu 12.04)


Запускаем консоль:

sudo apt-get install proftpd

Соглашаемся со всем. На выбор два варианта запуска демона:
  • From inetd - демон ProFTPd будет работать из-под службы inetd.
  • Standalone - ProFTPd будет установлен как самостоятельный демон.
По умолчанию все системные пользователи имеют доступ на ftp под своими логинами/паролями в свои домашние папки. Настройки proftpd по адресу “/etc/proftpd/proftpd.conf”.  Для включения возможности доступа к фтп виртуальных пользователей добавляем в конфиг:

# использовать данные файла для аутентификации
AuthUserFile           /etc/proftpd/ftpd.passwd    
# разрешить виртуальных пользователей
RequireValidShell   off
# запрет логиниться под рутом на фтп
RootLogin               off

Выполняем touch /etc/proftpd/ftpd.passwd , что создаст нам файл для виртуальных пользователей.  После этого добавим нового не системного пользователя:

sudo ftpasswd --passwd --file=/etc/proftpd/ftpd.passwd --name=_ИМЯ_ --shell=/bin/false --home=/ДИРЕКТОРИЯ/ --uid=ХХ --gid=ХХ

Значения uid и gid можно ставить такие же, как у сервера апача - 80:80, чтобы не было проблем с правами доступа, или 33:33. Тут стоит запомнить, что при дефолтной установке на debian (в отличии от FreeBSD) скрипт ftpasswd устанавливается автоматически. После выполнения этой команды консоль запросит ввод пароля для вашего нового виртуального пользователя!
После этого рестартуем proftpd:

service proftpd restart

Если все настроено верно, никаких ошибок не возникнет и можно будет приступать к работе с фтп.

Часть II. Установка на FreeBSD

Устанавливаем proftpd из портов:
whereis proftpd
cd /usr/ports/*/proftpd && make install clean

После установки добавляем proftpd_enable="YES" в /etc/rc.conf если нужно, чтобы FTP-сервер запускался при старте системы. Далее, правим /usr/local/etc/proftpd.conf аналогично конфигу выше. Создаем файл /usr/local/etc/ftpd.passwd скриптом ftpasswd (ВНИМАНИЕ! Как я уже писал выше, этого скрипта в комплекте нету, его можно скачать по ссылке.):

sudo ./ftpasswd --passwd --file=/usr/local/etc/ftpd.passwd --name=_ИМЯ_ --shell=/bin/false --home=/ДИРЕКТОРИЯ/ --uid=ХХ --gid=ХХ

Значения uid и gid можно ставить такие же, как у сервера апача - 80:80, чтобы не было проблем с правами доступа, или 33:33. 
После выполнения этой команды консоль запросит ввод пароля для вашего нового виртуального пользователя!
После этого рестартуем proftpd:

/usr/local/etc/rc.d/proftpd start

Проблемы и оптимизация

1. Если долго авторизует... 

...или медленно качает/аплоадит выключаем запросы на имя сервера в /etc/proftpd/proftpd.conf:
IdentLookups off
UseReverseDNS off

2. Если при попытке авторизации выдает ошибку доступа 

Тут есть несколько вариантов: 1. Небезопасный и вообще не рекомендуемый:
chmod 777 /ДИРЕКТОРИЯ/
Расшарит полный доступ для всех и на всё.

2. Дать при создании нашему виртуальному пользователю нужные права. Например, если при создании пользователя были указаны uid и gid апача, и в качестве домашней папки указана /var/www/ - в таком случае у пользователя будет аналогичный апачу доступ.
Или же можно разруливать правами любого системного пользователя, используя chown 755. Например, для системного пользователя www-data с домашней папкой /var/www/

сhown www-data:www-data /var/www/
chmod 775 /var/www/

3.  Изменение пароля виртуального пользователя

Для изменения пароля используем команду:

ftpasswd --passwd --name=ftpuser --change-password


ЗЫ
Очень хорошие статьи по настройке:
http://manual1c.ru/ustanovka-i-nastroyka-ftp-servera-proftpd/
http://paperplane.su/ustanovka-ftp-servera-proftpd-na-debianubuntu/
http://doer.name/2010/07/04/freebsd-basic-proftpd-setup/