PDA

Просмотр полной версии : Совершенный Сервер на Ubuntu 8.10


Belfigor
05.12.2008, 07:00
Совершенный Сервер на Ubuntu 8.10 (часть 1)

Данный мануал взят с сайта HowtoForge.com (http://www.howtoforge.com)

Я не буду здесь описывать установку Ubuntu-server 8.10 а перейду сразу к настройке сервера .

скачать Ubuntu-server 8.10 можно здесь http://www.ubuntu.com/

Статья расчитана только для новичков , гуру не почерпнут для себя здесь ничего нового !
__________________________________________________ __________
Все комманды нужно выполнять в терминале (консоль) под рутом (root)

SUDO SU Enter
Ваш пароль : xxxxx
__________________________________________________ ___________

Для выхода из редактора VIM использовать клавишу Esc без сохранения :q , с сохранением :wq
__________________________________________________ ___________

По всем интересующим вас вопросам просьба использовать: man vim, apache2 , bind9, mc и тд и тп !!!

Теперь пожалуй начнём

№1
Для начала установим SSH Server , если вы не установили его в процессе установки Убуту то это можно сделать сейчас выполнив сделующие команды :

apt-get install ssh openssh-server

Для подключения к вашему серверу с Windows (вот не хотел это слово тут вообще писать :D ) вы можете использовать такую утилиту как Putty , её легко найти в интернете , я админю своей сервак из под Linux Mint , в консоли ssh 192.168.1.1 -l belfigor : мой пасс .

Тестовые редакторы можно использовать разные, такие как vim , mc и nano , я пользуюсь vim , для удобства mc , по дефолту программа vi уже установленна , но в среде Дебиан и Убуну она бывает ведёт себя странно , профиксим это дело:

apt-get install vim-nox mc за одно можно установить mc . GNU Midnight Commander File Manager

№2

Настроим нашу сеть , я использую сервер в качестве шлюза , данную конфигурацию вы можете заточить под свои нужды , мой конфиг приведёт ниже:

vi /etc/network/interfaces

# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
auto eth0
iface eth0 inet static
address 192.168.1.1
netmask 255.255.255.0
network 192.168.1.0
broadcast 192.168.1.255
gateway 192.168.1.1
# dns-* options are implemented by the resolvconf package, if installed
dns-nameservers 192.168.1.1
dns-search ru

перезагрузим нашу сеть

/etc/init.d/networking restartТеперь отредактируем файл /etc/hosts
vi /etc/hosts127.0.0.1 localhost.localdomain localhost
192.168.1.1 server1.example.com server1

# The following lines are desirable for IPv6 capable hosts
::1 localhost ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
ff02::3 ip6-allhostsЗапустим
echo server1.example.com > /etc/hostname
/etc/init.d/hostname.sh start
Проверяем hostname
hostname -f
вы должны увидеть следущие server1.example.com или же Ваше название сервера !

№3

Отредактируем файл /etc/apt/sources.list из закоментируем строку которая иcпользует установочный СD , так же проверим что universe и multiverse репозиторий доступны :

vi /etc/apt/sources.list#
# deb cdrom:[Ubuntu-Server 8.10 _Intrepid Ibex_ - Release i386 (20081028.1)]/ intrepid main restricted

#deb cdrom:[Ubuntu-Server 8.10 _Intrepid Ibex_ - Release i386 (20081028.1)]/ intrepid main restricted
# See http://help.ubuntu.com/community/UpgradeNotes for how to upgrade to
# newer versions of the distribution.

deb http://de.archive.ubuntu.com/ubuntu/ intrepid main restricted
deb-src http://de.archive.ubuntu.com/ubuntu/ intrepid main restricted

## Major bug fix updates produced after the final release of the
## distribution.
deb http://de.archive.ubuntu.com/ubuntu/ intrepid-updates main restricted
deb-src http://de.archive.ubuntu.com/ubuntu/ intrepid-updates main restricted

## N.B. software from this repository is ENTIRELY UNSUPPORTED by the Ubuntu
## team. Also, please note that software in universe WILL NOT receive any
## review or updates from the Ubuntu security team.
deb http://de.archive.ubuntu.com/ubuntu/ intrepid universe
deb-src http://de.archive.ubuntu.com/ubuntu/ intrepid universe
deb http://de.archive.ubuntu.com/ubuntu/ intrepid-updates universe
deb-src http://de.archive.ubuntu.com/ubuntu/ intrepid-updates universe

## N.B. software from this repository is ENTIRELY UNSUPPORTED by the Ubuntu
## team, and may not be under a free licence. Please satisfy yourself as to
## your rights to use the software. Also, please note that software in
## multiverse WILL NOT receive any review or updates from the Ubuntu
## security team.
deb http://de.archive.ubuntu.com/ubuntu/ intrepid multiverse
deb-src http://de.archive.ubuntu.com/ubuntu/ intrepid multiverse
deb http://de.archive.ubuntu.com/ubuntu/ intrepid-updates multiverse
deb-src http://de.archive.ubuntu.com/ubuntu/ intrepid-updates multiverse

## Uncomment the following two lines to add software from the 'backports'
## repository.
## N.B. software from this repository may not have been tested as
## extensively as that contained in the main release, although it includes
## newer versions of some applications which may provide useful features.
## Also, please note that software in backports WILL NOT receive any review
## or updates from the Ubuntu security team.
# deb http://de.archive.ubuntu.com/ubuntu/ intrepid-backports main restricted universe multiverse
# deb-src http://de.archive.ubuntu.com/ubuntu/ intrepid-backports main restricted universe multiverse

## Uncomment the following two lines to add software from Canonical's
## 'partner' repository. This software is not part of Ubuntu, but is
## offered by Canonical and the respective vendors as a service to Ubuntu
## users.
# deb http://archive.canonical.com/ubuntu intrepid partner
# deb-src http://archive.canonical.com/ubuntu intrepid partner

deb http://security.ubuntu.com/ubuntu intrepid-security main restricted
deb-src http://security.ubuntu.com/ubuntu intrepid-security main restricted
deb http://security.ubuntu.com/ubuntu intrepid-security universe
deb-src http://security.ubuntu.com/ubuntu intrepid-security universe
deb http://security.ubuntu.com/ubuntu intrepid-security multiverse
deb-src http://security.ubuntu.com/ubuntu intrepid-security multiverse

следом запускаем команду apt-get update
apt-get upgrade
Этим самым мы обновим и установим важные и нужные обновления для нашего сервера

Перезагрузимся
reboot

№4

Установим софт который нам потребуется для работы , это можно выполнить одной линией

apt-get install binutils cpp fetchmail flex gcc libarchive-zip-perl libc6-dev libcompress-zlib-perl libdb4.3-dev libpcre3 libpopt-dev lynx m4 make ncftp nmap openssl perl perl-modules unzip zip zlib1g-dev autoconf automake1.9 libtool bison autotools-dev g++ build-essentialТак же установим квоту

apt-get install quotaОтредактируем файл /etc/fstab , добавив в него usrquota , grpquota и раздел с точкой монтирования .

vi /etc/fstab# /etc/fstab: static file system information.
#
# <file system> <mount point> <type> <options> <dump> <pass>
proc /proc proc defaults 0 0
# /dev/sda1
UUID=ef38977b-0f39-4201-a4c3-2eed8fce0b6c / ext3 relatime,errors=remount-ro,usrquota,grpquota 0 1
# /dev/sda5
UUID=c4ecae0e-77b7-4b3b-b16f-303bb32a761d none swap sw 0 0
/dev/scd0 /media/cdrom0 udf,iso9660 user,noauto,exec,utf8 0 0Включим квоту этими командами :


touch /quota.user /quota.group
chmod 600 /quota.*
mount -o remount /



quotacheck -avugm
quotaon -avug


№5

Установим DNS сервер

apt-get install bind9Для помещения BIND в chroot выполним следущие шаги:

/etc/init.d/bind9 stopОтредактирем файл /etc/default/bind9 изменив линию OPTIONS="-u bind" на OPTIONS="-u bind -t /var/lib/named"

vi /etc/default/bind9# run resolvconf?
RESOLVCONF=yes

# startup options for the server
OPTIONS="-u bind -t /var/lib/named"Создадим соседние директории под /var/lib:


mkdir -p /var/lib/named/etc
mkdir /var/lib/named/dev
mkdir -p /var/lib/named/var/cache/bind
mkdir -p /var/lib/named/var/run/bind/run


Затем переместим конфиг директорию из /etc в /var/lib/named/etc:

mv /etc/bind /var/lib/named/etcСоздадим сим линк в новой конфиг директории из старого размещения (тем самым устраним проблемы когда bind обновиться в будующем)

ln -s /var/lib/named/etc/bind /etc/bindСделаем null и random devices, и выставим нужные права на директории :


mknod /var/lib/named/dev/null c 1 3
mknod /var/lib/named/dev/random c 1 8
chmod 666 /var/lib/named/dev/null /var/lib/named/dev/random
chown -R bind:bind /var/lib/named/var/*
chown -R bind:bind /var/lib/named/etc/bind


Нам нужно изменить /etc/default/syslogd так как мы можем всё ещё получать важные сообщения системных логов , изменим линию : SYSLOGD="" на SYSLOGD="-a /var/lib/named/dev/log":

vi /etc/default/syslogd#
# Top configuration file for syslogd
#

#
# Full documentation of possible arguments are found in the manpage
# syslogd(8).
#

#
# For remote UDP logging use SYSLOGD="-r"
#
SYSLOGD="-a /var/lib/named/dev/log"Перезапустим демона :

/etc/init.d/sysklogd restart Стартуем наш DNS сервер , все ошибки можно проглядеть в /var/log/syslog

/etc/init.d/bind9 startот себя

всё заработало и завелось без проблем , ошибок не было ! "


№6 Устанавливаем MYSQL

Будем делать всё в следущием порядке :

apt-get install mysql-server mysql-client libmysqlclient15-devВо время установки нас попросят назначить нашему серверу пароль root:
New password for the MySQL "root" user: ваш sql пароль
Repeat password for the MySQL "root" user: подтверждение вашего sql пароля
Допустим мы хотим чтобы Mysql слушал все интерфейсы, а не только локалхост , для этого отредактируем etc/mysql/my.cnf , и закометируем строку bind-address = 127.0.0.1

vi /etc/mysql/my.cnf
[...]
# Instead of skip-networking the default is now to listen only on
# localhost which is more compatible and is not less secure.
#bind-address
[...]

Этого можно и не делать если вы собираетесь использовать Mysql для локалхоста , теперь можем перегрузить MysqL

/etc/init.d/mysql restartПроверим работоспособность Mysql netstat -tap | grep mysqlВсё должно выглядеть следующим образом

root@server1:~# netstat -tap | grep mysql
tcp 0 0 *:mysql *:* LISTEN 6724/mysqld
root@server1:~#

Установка Apache/PHP5/Ruby/Python

№7 Устанавливаем Apache:

apt-get install apache2 apache2-doc apache2-mpm-prefork apache2-utils apache2-suexec libexpat1 ssl-certДалее установим PHP5, Ruby, and Python ( и три модуля к Apache)

apt-get install libapache2-mod-php5 libapache2-mod-ruby libapache2-mod-python php5 php5-common php5-curl php5-dev php5-gd php5-idn php-pear php5-imagick php5-imap php5-mcrypt php5-memcache php5-mhash php5-ming php5-mysql php5-pspell php5-recode php5-snmp php5-sqlite php5-tidy php5-xmlrpc php5-xslЗатем отредактируем /etc/apache2/mods-available/dir.conf

vi /etc/apache2/mods-available/dir.confизменим строку DirectoryIndex

<IfModule mod_dir.c>

#DirectoryIndex index.html index.cgi index.pl index.php index.xhtml index.htm
DirectoryIndex index.html index.htm index.shtml index.cgi index.php index.php3 index.pl index.xhtml

</IfModule> Теперь мы имеем работоспособные модули Апача , такие как (SSL, rewrite, suexec, and include):

a2enmod ssl
a2enmod rewrite
a2enmod suexec
a2enmod include
Перезапустим Apache /etc/init.d/apache2 restart

################################################## Из МАНУАЛА !
__________________________________________________ ____________
We have to fix a small problem with Ruby. If you install ISPConfig and enable Ruby for a web site, .rbx files will be executed fine and displayed in the browser, but this does not work for .rb files - you will be prompted to download the .rb file - the same happens if you configure Ruby manually for a vhost (i.e., it has nothing to do with ISPConfig)
Мы профиксим небольшие проблемы с Ruby , Если вы установили ISPConfig и Ruby доступен для веб сайте , .rbx файлы будут исполняться и отображаться в браузере , но это не будет работать для .rb файлов///.....Откроем файл /etc/mime.types и закоментируем строку application/x-ruby:

vi /etc/mime.types [...]
#application/x-ruby rb
[...] Перезапустим Апач /etc/init.d/apache2 restartТеперь .rb файлы будут исполняться и отображаться в браузере , так же как и .rbx

№8

Отключаем PHP Globally , это необходим сделать только в том случае если вы хотите установить ISPConfig

ISPConfig это панель, которая использует предустановленный на сервере почтовый сервер, веб сервер, php, mysql, perl и другие.
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

Если вы не планируете устанавливать на этот сервер ISPConfig , пропустите данную секцию !!!!!

vi /etc/mime.types [...]
#application/x-httpd-php phtml pht php
#application/x-httpd-php-source phps
#application/x-httpd-php3 php3
#application/x-httpd-php3-preprocessed php3p
#application/x-httpd-php4 php4
[...] Отредактируйте файл /etc/apache2/mods-enabled/php5.conf и закоментируйте следующие строки :

vi /etc/apache2/mods-enabled/php5.conf <IfModule mod_php5.c>
#AddType application/x-httpd-php .php .phtml .php3
#AddType application/x-httpd-php-source .phps
</IfModule> /etc/init.d/apache2 restart

Источник http://www.howtoforge.com/perfect-server-ubuntu-8.10
Copyright Falko http://www.howtoforge.com/forums/member.php?u=2
Copyleft Belfigor

Во второй части мануала будет рассмотреннo: установка и настройка Virtual Users And Domains With Postfix, Courier, MySQL And SquirrelMail (Ubuntu 8.10)" , Постоянное одновременное подключение Интернет + Локалка (Domolink) за 5 минут! на Ubuntu 8.10 , установка и настройка Proftpd Mysql .

(c)stopxaker.ru (http://stopxaker.ru)

Belfigor
05.12.2008, 20:48
В серверном сегменте однозначно рулит BSD. Желательно Free или Open, хотя и из остальных получатся серваки лучше чем из бубунты.

1:
То что статья называеться "Совершенный сервер на Ubuntu 8.10" это не я придумал , это перевод "The Perfect Server - (Ubuntu 8.10)" можешь сходить на офсайт и разрулить эту тему там ;)

2 Не нравиться Ubuntu , юзай Debian .

3. С удовольствием бы почитал твой мануал (пусть даже переведённый ) о поднятии сервера на OpenBSD

и последние, я юзаю как Ubuntu-server так и Debian так и FreeBSD , и даже иногда балуюсь CentOS , так что если тебе что то не нравиться , то напиши и выложи свой ман по OpenBSD , и приведи веские доводы и сравнения по этой ОС , то бишь чем что лучше и чем что хуже !
А разводить Холивары , имхо , не стоит ;)

nerezus
05.12.2008, 21:03
Чем лучше Убунту, чем BSD
1) Нет проблем с дровами. Сейчас в *BSD такая же жопа с дровами на новое железо по отношению к линуху, какая недавно была в Linux по отнношению к винде.
2) Джава. Есть, но неофициально и не поддерживается саном.
3) Многово софта нет под фряху. Те же всякие ЗендСтудио и т.д.
4) И это не говоря о серверном сегменте: попробуйте поднять Oracle на FreeBSD )

Useroff
06.12.2008, 02:24
1) Нет проблем с дровами. Сейчас в *BSD такая же жопа с дровами на новое железо по отношению к линуху, какая недавно была в Linux по отнношению к винде.
Бред, многие линуксы используют дрова *BSD систем.
3) Многово софта нет под фряху. Те же всякие ЗендСтудио и т.д.
Еще пущий бред, или посмотри в порты.

nerezus
06.12.2008, 12:34
Еще пущий бред, или посмотри в порты.
Ну-ну, прежде чем языком шевелить, ты подуи\мал бы.
Начнем с того, что Zend Studio платная и проприетарная. Ну и как она в портах оказаться может?)
http://www.freebsd.org/cgi/ports.cgi?query=Zend&stype=all
Проверь вот )
А на оффсайте можно скачать версии под мак, винду и линух.

Бред, многие линуксы используют дрова *BSD систем. Ты это скажи владельцам Wi-Fi карточек, к примеру )

nerezus
06.12.2008, 13:21
Если тебе нужен ява-плеер, на севере, на котором монитор то не нужен, значит ты в своей жизни ни одного сервера не видел. Мне нужна ява на девелоперской тачке, под которой я разрабатываю ПО для сервера.
И среда разработки мне нужна. Чтобы разрабатывать ПО для сервера.
Да и монитор мне нужен. Чтобы смотреть в него при разработке для сервера.

А на что тебе нужны дрова? На новый радеон? Или на звуковуху? Конечно. К примеру недавно писал туб - тестировал на сервере, подобном боевому.

Useroff
06.12.2008, 23:24
Напиши статью !!! это лучше чем всё обсирать , вот и посмотрим на сколько ты крут , а языком все могут , а то все суровые админы , а чуть какая проблема , все на Ачат бегут
Вот тебе статья по созданию идеального вэб сервака на OpenBSD
http://servmast.ru/index.php?newsid=19

Belfigor
06.12.2008, 23:31
Вот тебе статья по созданию идеального вэб сервака на OpenBSD
http://servmaster.net/index.php?newsid=19

2 Useroff , cпасибо за ссылку , но сколько юзаю ФРяху , таким образом никогда не ставил и ставить не буду

Далее начнем ставить:

# pkg_add php5-core

Всё только из портов !!! ;)

зы ещё раз прощу не втягивайте меня в холивар :D

Useroff
07.12.2008, 01:01
Создание идеального сервера на Ос у которой проблемы с реализацией SMP вообще странно.
OpenBSD может работать с 2 и более процами, не хуже чем FreeBSD.
Или все сводиться поумолчанию к chroot ,который не дает не какой безопасности =)
1. Кто мешает httpd="-u" ?
2. chroot, ограждает индейца от систмы, тем самым уменьшает % взома.
3. chroot ставится за 15 минут куда угодно то на Фриху, то на бунту.

procedure
07.12.2008, 12:49
Уважаемые, на надо разводить холивар. Достаточно просто высказать свое мнение. И попытаться прислушаться к мнению другого. Не надо спорить в разделе, давайте уж забудем это выражение "плохая ОС", оскорбление других личностей и сторонее ПО показывает не ваш ум, а вашу глупость.

Добавлено: тему открыл, ждем 2ую часть.

Belfigor
24.12.2008, 02:43
В этой части будет рассказанно , как установить FTP c поддержкой Mysql в частности это будет Proftpd-Mysql

Для начала установим Apache, Mysql и PhpMyadmin , как это сделать я подробно описал ТУТ (http://forum.antichat.ru/threadnav94880-1-10.html)

сделать это нужно в консоли по рутом

sudo su установим всё одной командой

apt-get install mysql-server mysql-client libmysqlclient15-dev phpmyadmin apache2Во время установки вас попросят задать пароль для Mysql , сделаем это

New password for the MySQL "root" user: <-- ваш пароль для mysql теперь просмотрим коректно ли работают наши устанолвенные программы Apache, Mysql и PhpMyadmin , в папке www создадим файл test.php c следующим содержанием

<?php
phpinfo();
?>зайдя на свой хост вы должны уведеть следующие : http://127.0.0.1/test.php

http://stopxaker-com.na.by/images/Screenshot.png

Если всё нормально , едем дальше , и установим proftpd-mysql

apt-get install proftpd-mysql

при установки proftpd-mysql вы можете столкнуться с некоторыми проблемами :

apt-get install proftpd-mysql
Чтение списков пакетов... Готово
Построение дерева зависимостей
Чтение информации о состоянии... Готово
Пакет proftpd-mysql недоступен, но упомянут в списке зависимостей другого пакета.
Это может означать, что пакет отсутствует, устарел, или доступен из источников, не упомянутых в sources.list
E: Для пакета proftpd-mysql не найдены кандидаты на установку


в Ubuntu 8.04 , проблем не было , но ничего это всё решаемо :

Идём во сюда http://packages.ubuntu.com/ru/dapper-updat...-mysql/download

Страница загрузки пакета proftpd-mysql_1.2.10-27ubuntu3.1_i386.deb для архитектуры Intel x86

далее :

Если вы работаете в Ubuntu, для загрузки и установки пакетов настоятельно советуем использовать менеджер пакетов, например aptitude или synaptic, а не делать это вручную через данный сайт.

Используйте любой из серверов-зеркал, добавив его в свой файл /etc/apt/sources.list, например так:

deb http://fr.archive.ubuntu.com/ubuntu dapper-updates main universe

Заменив fr.archive.ubuntu.com/ubuntu нужным сервером.

затем sources.list я добавил

deb http://mirrors.kernel.org/ubuntu dapper-updates main universeи устанавливаем proftpd mysql :

apt-get install proftpd-mysqlво время установки вам зададут вопрос , ответе:

Run proftpd: <-- standaloneТеперь создадим ftp группу и ftp юзера



groupadd -g 2001 ftpgroup
useradd -u 2001 -s /bin/false -d /bin/null -c "proftpd user" -g ftpgroup ftpuserТеперь нужно создать в mysql базу для Proftpd :

create database ftp;
GRANT SELECT, INSERT, UPDATE, DELETE ON ftp.* TO 'proftpd'@'localhost' IDENTIFIED BY 'password';
GRANT SELECT, INSERT, UPDATE, DELETE ON ftp.* TO 'proftpd'@'localhost.localdomain' IDENTIFIED BY 'password';
FLUSH PRIVILEGES;теперь создадим структуру таблиц в базе ftp:

USE ftp;
CREATE TABLE ftpgroup (
groupname varchar(16) NOT NULL default '',
gid smallint(6) NOT NULL default '5500',
members varchar(16) NOT NULL default '',
KEY groupname (groupname)
) TYPE=MyISAM COMMENT='ProFTP group table';
CREATE TABLE ftpquotalimits (
name varchar(30) default NULL,
quota_type enum('user','group','class','all') NOT NULL default 'user',
per_session enum('false','true') NOT NULL default 'false',
limit_type enum('soft','hard') NOT NULL default 'soft',
bytes_in_avail int(10) unsigned NOT NULL default '0',
bytes_out_avail int(10) unsigned NOT NULL default '0',
bytes_xfer_avail int(10) unsigned NOT NULL default '0',
files_in_avail int(10) unsigned NOT NULL default '0',
files_out_avail int(10) unsigned NOT NULL default '0',
files_xfer_avail int(10) unsigned NOT NULL default '0'
) TYPE=MyISAM;

CREATE TABLE ftpquotatallies (
name varchar(30) NOT NULL default '',
quota_type enum('user','group','class','all') NOT NULL default 'user',
bytes_in_used int(10) unsigned NOT NULL default '0',
bytes_out_used int(10) unsigned NOT NULL default '0',
bytes_xfer_used int(10) unsigned NOT NULL default '0',
files_in_used int(10) unsigned NOT NULL default '0',
files_out_used int(10) unsigned NOT NULL default '0',
files_xfer_used int(10) unsigned NOT NULL default '0'
) TYPE=MyISAM;
CREATE TABLE ftpuser (
id int(10) unsigned NOT NULL auto_increment,
userid varchar(32) NOT NULL default '',
passwd varchar(32) NOT NULL default '',
uid smallint(6) NOT NULL default '5500',
gid smallint(6) NOT NULL default '5500',
homedir varchar(255) NOT NULL default '',
shell varchar(16) NOT NULL default '/sbin/nologin',
count int(11) NOT NULL default '0',
accessed datetime NOT NULL default '0000-00-00 00:00:00',
modified datetime NOT NULL default '0000-00-00 00:00:00',
PRIMARY KEY (id),
UNIQUE KEY userid (userid)
) TYPE=MyISAM COMMENT='ProFTP user table';выходим из mysql

quit;Теперь открываем /etc/proftpd.conf и в конец файла добавлем следующие строки :

DefaultRoot ~


# The passwords in MySQL are encrypted using CRYPT
SQLAuthTypes Plaintext Crypt
SQLAuthenticate users* groups*


# used to connect to the database
# databasename@host database_user user_password
SQLConnectInfo ftp@localhost proftpd password


# Here we tell ProFTPd the names of the database columns in the "usertable"
# we want it to interact with. Match the names with those in the db
SQLUserInfo ftpuser userid passwd uid gid homedir shell

# Here we tell ProFTPd the names of the database columns in the "grouptable"
# we want it to interact with. Again the names match with those in the db
SQLGroupInfo ftpgroup groupname gid members

# set min UID and GID - otherwise these are 999 each
SQLMinID 500

# create a user's home directory on demand if it doesn't exist
SQLHomedirOnDemand on

# Update count every time user logs in
SQLLog PASS updatecount
SQLNamedQuery updatecount UPDATE "count=count+1, accessed=now() WHERE userid='%u'" ftpuser

# Update modified everytime user uploads or deletes a file
SQLLog STOR,DELE modified
SQLNamedQuery modified UPDATE "modified=now() WHERE userid='%u'" ftpuser

# User quotas
# ===========
QuotaEngine on
QuotaDirectoryTally on
QuotaDisplayUnits Mb
QuotaShowQuotas on

SQLNamedQuery get-quota-limit SELECT "name, quota_type, per_session, limit_type, bytes_in_avail, bytes_out_avail, bytes_xfer_avail, files_in_avail, files_out_avail, files_xfer_avail FROM ftpquotalimits WHERE name = '%{0}' AND quota_type = '%{1}'"

SQLNamedQuery get-quota-tally SELECT "name, quota_type, bytes_in_used, bytes_out_used, bytes_xfer_used, files_in_used, files_out_used, files_xfer_used FROM ftpquotatallies WHERE name = '%{0}' AND quota_type = '%{1}'"

SQLNamedQuery update-quota-tally UPDATE "bytes_in_used = bytes_in_used + %{0}, bytes_out_used = bytes_out_used + %{1}, bytes_xfer_used = bytes_xfer_used + %{2}, files_in_used = files_in_used + %{3}, files_out_used = files_out_used + %{4}, files_xfer_used = files_xfer_used + %{5} WHERE name = '%{6}' AND quota_type = '%{7}'" ftpquotatallies

SQLNamedQuery insert-quota-tally INSERT "%{0}, %{1}, %{2}, %{3}, %{4}, %{5}, %{6}, %{7}" ftpquotatallies

QuotaLimitTable sql:/get-quota-limit
QuotaTallyTable sql:/get-quota-tally/update-quota-tally/insert-quota-tally

RootLogin off
RequireValidShell offпроверте что вы заменили строку password вашем настроящим паролем для MySQL user proftpd в линии SQLConnectInfo!

Также в /etc/proftpd.conf можно добавить вот такие строки :
из мануала

Martin Mrajca has sent me these lines that you can add to /etc/proftpd.conf so that Proftpd sends you a banner with used / available space after LIST:SQLNamedQuery gettally SELECT "ROUND((bytes_in_used/1048576),2) FROM ftpquotatallies WHERE name='%u'"
SQLNamedQuery getlimit SELECT "ROUND((bytes_in_avail/1048576),2) FROM ftpquotalimits WHERE name='%u'"
SQLNamedQuery getfree SELECT "ROUND(((ftpquotalimits.bytes_in_avail-ftpquotatallies.bytes_in_used)/1048576),2) FROM ftpquotalimits,ftpquotatallies WHERE ftpquotalimits.name = '%u' AND ftpquotatallies.name = '%u'"

SQLShowInfo LIST "226" "Used %{gettally}MB from %{getlimit}MB. You have %{getfree}MB available space."Не забудьте перезагрузить Proftpd после добавления этих строк

Вернёмся в mysql и создадим группу и юзера в базе FTP:

mysql -u root -pUSE ftp;

INSERT INTO `ftpgroup` (`groupname`, `gid`, `members`) VALUES ('ftpgroup', 2001, 'ftpuser');

INSERT INTO `ftpquotalimits` (`name`, `quota_type`, `per_session`, `limit_type`, `bytes_in_avail`, `bytes_out_avail`, `bytes_xfer_avail`, `files_in_avail`, `files_out_avail`, `files_xfer_avail`) VALUES ('exampleuser', 'user', 'true', 'hard', 15728640, 0, 0, 0, 0, 0);
INSERT INTO `ftpuser` (`id`, `userid`, `passwd`, `uid`, `gid`, `homedir`, `shell`, `count`, `accessed`, `modified`) VALUES (1, 'exampleuser', 'secret', 2001, 2001, '/home/www.example.com', '/sbin/nologin', 0, '', '');выходим из mysql
quit;

Итак мы создали юзера exampleuser с паролем secret и директорией /home/www.example.com ,


http://stopxaker-com.na.by/images/con.png


здесь вы можете указать свою директорю /home/user или /www/user1/ и тд .

Заходим в phpmyadmin и может добавлять новых юзеров , выставлять квоты на размер диского пространства и тд и тп :

http://127.0.0.1/phpmyadmin/


http://stopxaker-com.na.by/images/Screenshot-1.png


Таблица ftpuser Table

* userid: имя виртального юзера Proftpd user (e.g. exampleuser).
* passwd: пароль храниться в открытом виде , это недостаток , имхо ( The unencrypted (i.e., clear-text) password of the user.)
* uid: юзер ид (The userid of the ftp user you created at the end of step two (e.g. 2001).
* gid: ид группы ( The groupid of the ftp group you created at the end of step two (e.g. 2001).
* homedir: директория виртуально юзера proftpd например /home/www.example.com


Удачной установки и настройки :) , с уважением Belfigor

источник http://www.howtoforge.com/proftpd_mysql_virtual_hosting

(c)stopxaker.ru (http://stopxaker.ru)

Dronga
24.12.2008, 18:42
Чем лучше Убунту, чем BSD
1) Нет проблем с дровами. Сейчас в *BSD такая же жопа с дровами на новое железо по отношению к линуху, какая недавно была в Linux по отнношению к винде.
2) Джава. Есть, но неофициально и не поддерживается саном.
3) Многово софта нет под фряху. Те же всякие ЗендСтудио и т.д.
4) И это не говоря о серверном сегменте: попробуйте поднять Oracle на FreeBSD )Вынужден не согласиться и признать идейную правоту за Useroff потому как всё выше процитированное не имеет отношения к продакшн серверам и к Ubuntu в частности. Всё выше сказанное однозначно относится исключительно к сравнению FreeBSD с Sun OpenSolaris, а не с Ubuntu. OpenSolaris и Ubuntu конечно похожи, но не настолько, я бы даже сказал, похожи чисто внешне. Идейно OpenSolaris = (Ubuntu + FreeBSD) + Sun Creative. Отмечу, что Sun OpenSolaris в серверном сегменте на сегодня практически не представлен несмотря на всё моё уважение к этой компании и мощности её разработок. Стараются, но коньюктура очень высокая, а система совсем молодая.

Думаю, нерезус в курсе про драйвера которые Sun бесплатно и в очень короткие сроки напишет под любую железку, но только под OpenSolaris (welcome to developers.sun.com или developers.sun.ru). Вряд ли это решение (этот свежеиспченный драйвер) пойдет в продакшн потому как вся система experimental и вопросы совместимости никто не отменял. Про Oracle и Ubuntu тоже наверное не будем ;) Это также как Oracle и FreeBSD. Зато Solaris и Oracle тандем отличный, питерский МТС доволен.

Поэтому, расставлю точки над i в рассматриваемой ситуации и контексте статьи.

Требуется веб-сервер: Apache, PHP, MySQL, Proftpd.

FreeBSD на сервер. Ubuntu с её драйверами (особенно Wi-Fi), иксами, кучей самонастраиваемых не серверных (читай юзерских) сервисов, автоматическим распознаванием ресурсов доменной сети MS Windows, а соотвественно и предоставлением своих ресурсов (особенно непонятно), sudo, непомерным разжирением с "эволюцией" дистрибутива (сравните не столь давнюю 5x c нынешним 8x, а что такого существенного появилось??), поддержкой явы и автоматическим обновлением на десктоп. OpenSolaris нерезусу и любому другому разработчику софта, особенно в Java части (SunStudio, кстати, тоже "проприетарная" и платная). Теперь все на местах.

По статье. "Совершенный Сервер" (СС прям какой-то =) звучит просто смешно. Нет таких.То что статья называеться "Совершенный сервер на Ubuntu 8.10" это не я придумал , это перевод "The Perfect Server - (Ubuntu 8.10)" можешь сходить на офсайт и разрулить эту тему там ;) Вдвойне смешно, потому как perfect != совершенный (x2 в общем контексте статьи)

Если не придираться к названию, то в статье есть всего один интересный момент (но не актуальный для меня, решил проблему по-другому). Выбор/установка/комбинации софта вызывают легкое раздражение. А самые интересные моменты "совершенствования сервера" прикрыты установкой панели ISPConfig. Так проще, но ведь проблемы остались. Как раз те самые проблемы, которые являются общими для всех серверов, с любой архитектурой/платформой/операционной системой. Сервер с установкой панели идеальными не стал. Ждём статьи Совершенная Панель ISPConfig. В общем, тема не раскрыта вообще, долой популизм и ширпотреб. Может правда под OpenSolaris статью перепишешь? Там весь веб-стек одной командой ставится в готовой связке (включая squid), вот те и совершенный сервер, нах настраивать? :D

pithagora
23.04.2009, 14:47
Free BSD на продакшен сервере работает стабильно, как и остальные BSD системы. Поднять на ней графический интерфейс с наворотами тоже не трудно. Несовместимости с некоторыми устройствами некоторых компаний существует. Но главное что знаменитые компании заботятся о том чтобы ихнии устройства работали стабильно и на Free BSD. Без фанатизма, я уверен что Free BSD на сервере намного лучше чем Ubuntu, и на это есть причины.

X-3
23.04.2009, 18:26
Одна из этих причин - меньше жрет ресурсов.
Вторая - нужные драйвера именно для сервера (читай - для основных устройств) - работают СТАБИЛЬНО, а за скоростью (читай - невнимательностью к стабильной работе) FreeBSD не гонится. Очень интересно обсудить Raid'ы в линуксах :))
Третья - Oracle поднимается в режиме Linux-compatibility (замерьте скорость работы).
Четвертая - какое "обилие софта" необходимо серверу? Это с рабочей станцией перепутали.
Пятая - про Wi-Fi на сервере улыбнуло.

P.S.
Про "совершенство графического интерфейса сервера и поддержки необходимого юзерам софта и драйверов:
Как там было: "Первая причина - это ты... а вторая - все твои мечты..."

Николаев был админом, видимо ;)

stopxaker
23.04.2009, 18:58
Спасибо , что ещё есть люди которые читают мои статьи и им это интересно , пусть будет даже холивар , но это лучше чем обсуждать темы про ВК и прочую хрень ! :)

по сабжу , когда я начал переводить первую часть этой статьи , меня тоже терзали смутные сомнения , Ubuntu Server или FreeBSD , вот в чём вопрос ! я не буду сейчас вдаваться в дебри , скажу одно , я одинаково люблю как , Убунту , так и ФРяху , но допустим компиляция обычного Apache+Nginx+mysql+Samba и etc , у меня заняла 4 часа , хотя в тоже время на Ubuntu server ушло меньше 30 минут , далее некоторые начинаю крик мол Убунта сакс , лучше Debian , а какая разница ??? что UBuntu Server , что Debian - сорри за сравнение , тот же хер только в другой руке !
Да конечно когда есть время суток двое , трое то можно на сервак и FreeBSD поставить не спорю , попить пивка , поспать , глядишь к утру всё собирётся ;)

скажу одно , каждая ОС имет право на хард !

Кстати сегодня праздник вышла Ubuntu 9.04 и уже доступна для скачивания от сюда http://www.ubuntu.com/getubuntu/download-server

и я дописал третью часть про Ubuntu Server


. Ждём статьи Совершенная Панель ISPConfig. В общем, тема не раскрыта вообще, долой популизм и ширпотреб.

как раз именно про это !


вообщем кому интересно тут три части http://stopxaker.ru/forumdisplay.php?f=4

с уважением ко всем Stopxaker_aka_Belfigor :)

X-3
23.04.2009, 19:17
stopxaker
А в убунту сервере софт ставится как пакет? Если да, тогда понятна скорость "компиляции".

Офф: как-то я поставил кеды на FreeBSD из портов. Сутки компилилось где-то. После этого понял, зачем пакеты во Фряхе :))

pithagora
24.04.2009, 01:13
А я юзал в свое время Линуксы типа Ubuntu, Debian, Fedora, Centos, Open Suse, Red Hat server ну и BSD - Free, Open, Net, DragonFly...Из всех больше всего по душе да и вообше нормально строенная ос это Free BSD. Просто нравится что обеденяет в себе столько достоенств - надежная из коробке (а если руки растут правельно, можно так настроить что даже самые одаренные хакеры не порвут), надежная провереная временем система портов, и cvs - эти версии програм уже много лет проверены, так что мала вероятность что найдутся еще баги. Да и логика строении системы тоже нравится - очень понятная.

Linux007
30.06.2009, 10:40
добрый день Господа. у меня вот какая проблема.... я админ сайта...очень важного и дорогостоящего проекта. я всего лишь новичок в линуксе и им подобных.....почти год как начал интересоваться *ксами. ушел с винды потому что она не ненадежна если дело доходит до серьезных вещей и подумал что уже пора "взрослеть" :)
так вот........когда выбирал хостинг, (из за незнания) выбрал VPS хост с УбунтуСервер вместо "панели управления". Думал, если на компе могу им управлять смогу и эту осилить. но не тут то было. оказывается ее нужно настраивать.... и понял что линуксовый ламер ее не осилит. ребята, очень нужна помощь. решать за меня проблемы не прошу, но хочу попросить знающего указать ссылки или еще лучше написать как ее настроить на оптимальный уровень защиты от начала до конца. Сайт не открыт... заполняем его материалом. но все функционирует как надо при открытии сайта. (или я ошибаюсь).

хостер сделал все по умолчанию. сколько дней гуляю по гугли ничего не могу найти.

благодарю всех линуксоидов заранее........

POS_troi
30.06.2009, 11:05
Скинь асику в ПМ. Вечером постараюсь помочь.

А вообще при таких случаях неплохо бы описывать сервисах которые предполагают там жить =)

P.S. Идеальных серверов не бывает! 100% - нонсенс ;)

Linux007
30.06.2009, 11:11
Скинь асику в ПМ. Вечером постараюсь помочь.

А вообще при таких случаях неплохо бы описывать сервисах которые предполагают там жить =)

P.S. Идеальных серверов не бывает! 100% - нонсенс ;)

брат... :) извеняюсь, я в жаргоне не силен. что значит "скинь асику в ПМ"?

POS_troi
30.06.2009, 11:25
=)

Номер ICQ в Персональные сообщения =)

https://forum.antichat.ru/private.php?do=newpm&userid=30086

X-3
01.07.2009, 20:00
ОФФ: жесть.

P.S. Видимо, следует читать как "в инете не силен но выдержал суточную регистрацию на ачате"

splavv
17.07.2009, 12:48
Доброго времени суток, пытаюсь осилить линукс но что-то у меня это не выходит. Дело вот в чем, установил ubuntu server, прописал ip и маску но в сети не виден. Сеть одноранговая. И еще одно как прописать прописать адрес и порт прокси-сервера, так как интернет раздается через него. Буду очень признателен в помощи.

X-3
20.07.2009, 15:01
1) ЕСЛИ ("Не виден в сети" == "не могу зайти в файловую систему Убунту из Винды" ) юзай Samba;
ИНАЧЕ ЕСЛИ ("Не виден в сети" == "не пингуется хост" ) запости чем прописывал и как.

2) Для прописывания данных прокси-сервера юзай настройки конкретного приложения, например, для серфинга через прокси открой настройки соединения в браузере.