• XSS.stack #1 – первый литературный журнал от юзеров форума

Пример конфигурации Slackware 10.2

WebSerGe

HDD-drive
Пользователь
Регистрация
30.06.2006
Сообщения
26
Реакции
0
При разработке червей, для их тестирования и проверки работоспособности, нужна полнофункциональная сеть со всеми поднятыми серверами типа:
- DNS;
- WWW;
- IRC;
- FTP;
- почтовый сервер;
- и т.п.
Я довольно долгое время потерял на их настройке. Здесь я хотел бы привести пример настройки домена “webserge.ru” без выхода в интернет. Просто локальная сеть. Имя webserge.ru взято не потому что я себялюб, а потому что это первое имя, которое мне пришло в голову.
Я работаю в VMWare, которая поддерживает только 4 одновременно загружаемых ОС, поэтому все сервисы я поднял на одной тачке с ОС “Slackware 10.2”. Эту машину я назвал server.webserge.ru.

Настройка DNS
В качестве сервера имен я воспользовался пакетом bind 9 версии.
Сразу же привожу его конфигурационные файлы:
1. /etc/named.conf
Код:
options {
	directory "/var/named";
  query-source address * port 53;
};

// master nameserver config
zone "localhost" {
	type master;
	file "master/localhost.zone";
	allow-update { none; };
};

zone "0.0.127.in-addr.arpa"  {
	type master;
	file "master/named.local";
	allow-update { none; };
};

zone "webserge.ru" {
	type master;
	file "master/webserge.zone";
	allow-update { none; };
};

zone "1.168.192.in-addr.arpa" {
	type master;
	file "master/192.168.1.rev";
	allow-update { none; };
};
2. /var/named/master/webserge.zone
Код:
$TTL	3D
@  IN	SOA	server.webserge.ru. server.webserge.ru (
    42
    3H
    15
    1W
    1D)

  	NS	server
localhost  A	127.0.0.1
server  	A  192.168.1.5
windowsXPSP2  A  192.168.1.3
router  	A	192.168.1.1
router  	A	10.0.1.1
  	MX   10 server.webserge.ru.
3. /var/named/master/localhost.zone
Код:
$TTL 3D
@  	IN SOA	server.webserge.ru. server.webserge.ru. (
    	42	; serial (d. adams)
    	3H	; refresh
    	15M	; retry
    	1W	; expiry
    	1D )	; minimum

  	IN NS	server.webserge.ru.
1  	IN PTR	localhost.
4. /var/named/master/named.local
Код:
$TTL	3D
@       IN      SOA     server.webserge.ru. server.webserge.ru.  (
                                      42        ; Serial
                                      28800     ; Refresh
                                      14400     ; Retry
                                      3600000   ; Expire
                                      86400 )   ; Minimum
                NS      server.webserge.ru.

1              PTR     localhost.
5. /var/named/master/1.168.192.in-addr.arpa
Код:
$TTL 3D
@	IN  SOA	server.webserge.ru. server.webserge.ru (
    	42
    	3H
    	15
    	1W
    	1D)
  	NS	server.webserge.ru.
1  	PTR	router.webserge.ru.
3  	PTR	windowsXPSP2.webserge.ru.
5  	PTR	server.webserge.ru.
Ну вот и все. Пишем rndc reload и сервер начнет обслуживать dns-запросы.

Настройка www

Конфигурационный файл Apache находится в /etc/apache/httpd.conf.
Он по умолчанию скофигурирован для нормальной работы. Просто кидаем, например в директорию /var/www/htdocs, папку со страницами нашего сайта и изменяем в кофиге строчку DocumentRoot “/var/www/htdocs/ваша папка”.

Настройка FTP

В качестве ftp сервера используется ProFTPD. Для работы анонимного пользователя закомментируем строку ftp в файле /etc/ftpusers.
Настройки конфигурационного файла /etc/proftpf.conf по умолчанию нас удовлетворяет.

Настройка почтового сервера

В качестве почтового сервера будем использовать поставляемый с Slackware sendmail. Для настройки работы одного домена sendmail легко поднять.
Переходим в каталог /usr/share/sendmail/cf/cf. Создаем конфигурационный файл webserge.mc следующего содержания:

include(`../m4/cf.m4')
VERSIONID(`default setup for Slackware Linux')dnl
OSTYPE(`linux')dnl
FEATURE(`use_cw_file')dnl
FEATURE(`local_procmail',`',`procmail -t -Y -a $h -d $u')dnl
EXPOSED_USER(`root')dnl
LOCAL_DOMAIN(`localhost.localdomain')dnl
DAEMON_OPTIONS(`Port=smtp,Name=MTA')dnl
MAILER(local)dnl
MAILER(smtp)dnl
MAILER(procmail)dnl

Делаем ./Build webserge.mc и переносим полученный файл webserge.cf в /etc/mail под именем sendmail.cf
Далее добавляем в файл /etc/mail/aliases пользователей. Например в системе есть пользователь qwerty и мы хотим, чтобы мыло на имя djon@server.webserge.ru шло этому пользователю. Тогда в этот файл добавляем djon : qwerty.
После добавления пользователей делаем newaliases.
В файл local-host-names добавляем имя сервера для которого принимаем почту:
server.webserge.ru
Все почта настроена.

Настройка IRC сервера
В качестве ирц-сервера я взял пакет Unreal3.2.4 (если кому нужно могу дать ссылку). Он довольно легок в управлении и предназначен для новичков. Вот с этим сервером я не очень разобрался, но для нормальной работы я его настроил.
Пример конфигурационного файла unrealircd.conf:
Код:
loadmodule "src/modules/commands.so";
loadmodule "src/modules/cloak.so";
include "help.conf";
include "badwords.channel.conf";
include "badwords.message.conf";
include "badwords.quit.conf";
include "spamfilter.conf";
me
{
	name "server.webserge.ru";
	info "WebSerGe Server";
	numeric 1;
};
admin {
	"WebSerGe";
	"WebSerGe";
	"root@server.webserge.ru";
};
class           clients
{
	pingfreq 90;
	maxclients 500;
	sendq 100000;
	recvq 8000;
};
class           servers
{
	pingfreq 90;
	maxclients 10;  
	sendq 1000000;
	connfreq 100; 
};
allow {
	ip             *@*;
	hostname       *@*;
	class           clients;
	maxperip 5;
};
allow {
	ip             *@255.255.255.255;
	hostname       *@*.passworded.ugly.people;
	class           clients;
	password "serge";
	maxperip 1;
};
allow           channel {
	channel "#WarezSucks";
};
oper serge {
	class           clients;
	from {
  userhost *@*;
	};
	password "serge";
	flags
	{
  netadmin;
  can_zline;
  can_gzline;
  can_gkline;
  global;
	};
};
listen         *:6667;
drpass {
	restart "I-love-to-restart";
	die "die-you-stupid";
};
log "ircd.log" {
	maxsize 2097152;
	flags {
  oper;
  kline;
  connects;
  server-connects;
  kills;
  errors;
  sadmin-commands;
  chg-commands;
  oper-override;
  spamfilter;
	};
};
alias NickServ { type services; };
alias ChanServ { type services; };
alias OperServ { type services; };
alias HelpServ { type services; };
alias StatServ { type stats; };
alias "services" {
	format "^#" {
  target "chanserv";
  type services;
  parameters "%1-";
	};
	format "^[^#]" {
  target "nickserv";
  type services;
  parameters "%1-";
	};
	type command;
};
alias "identify" {
	format "^#" {
  target "chanserv";
  type services;
  parameters "IDENTIFY %1-";
	};
	format "^[^#]" {
  target "nickserv";
  type services;
  parameters "IDENTIFY %1-";
	};
	type command;
};
set {
	network-name  "server.webserge.ru";
	default-server  	"server.webserge.ru";
	services-server  "server.webserge.ru";
	stats-server  	"server.webserge.ru";
	help-channel  	"#help";
	hiddenhost-prefix	"rox";
	cloak-keys {
  "a2oAr1HnsR6gl3sJ7hVz4Zb7x4YwpW";
  "a2oAr1dHnsR6gl3sJ7hVz4Zb7x4YwpW";
  "a2oAr1HfnsR6gl3sJ7hVz4Zb7x4YwpW";
	};
	hosts {
  local  "server.webserge.ru";
  global  "server.webserge.ru";
  coadmin  "server.webserge.ru";
  admin  "server.webserge.ru";
  servicesadmin  "server.webserge.ru";
  netadmin  "server.webserge.ru";
  host-on-oper-up "no";
	};
};
set {
	kline-address "root@server.webserge.ru";
	modes-on-connect "+ixw";
	modes-on-oper  "+xwgs";
	oper-auto-join "#opers";
	dns {
  nameserver 192.168.1.5;
  timeout 2s;
  retries 2;
	};
	options {
  SPOILER-ulines;
  /* You can enable ident checking here if you want */
  /* identd-check; */
  show-connect-info;
	};
	maxchannelsperuser 10;
	anti-spam-quit-message-time 10s;
	oper-only-stats "okfGsMRUEelLCXzdD";
};
Теперь раскомментируем строки в файле /etc/inetd.conf касающиеся ftp, pop3.
Добавляем сценарии загрузки в /etc/rc.d/ (например rc.sendmail).
Если есть вопросы - спрашивайте
 


Напишите ответ...
  • Вставить:
Прикрепить файлы
Верх