Здравствуйте. А уточните, пожалуйста, по какой причине стоимость изменилась? Была стоимость в 1 рубль, стала в 9900 рублей. |
Настройка некоторых сетевых служб в Debian GNU/Linux
HTTP-сервер Apache
HTTP-сервер Apache является программным обеспечением с открытым исходным кодом для операционных систем Linux, Unix, Windows, Mac и Netware. Главной целью проекта является обеспечение защищенных, эффективных и расширяемых HTTP-сервисов, поддерживающих современные стандарты [ 39 ] .
Для установки Apache в Debian можно использовать команду:
# apt-get install apache2
В процессе установки сервер прописывается в автозагрузку и запускается. По умолчанию сервер слушает на всех интерфейсах на TCP-порту с номером 80. Для остановки/запуска/перезапуска сервера можно использовать скрипт apache2 в каталоге /etc/init.d с параметром stop/start/restart соответственно:
# /etc/init.d/apache2 restart
Конфигурационные файлы Apache расположены в каталоге /etc/apache2. В частности настройки сайта по умолчанию расположены в файле /etc/apache2/sites-available/default:
# cat /etc/apache2/sites-available/default <VirtualHost *:80> ServerAdmin webmaster@localhost DocumentRoot /var/www <Directory /> Options FollowSymLinks AllowOverride None </Directory> <Directory /var/www/> Options Indexes FollowSymLinks MultiViews AllowOverride None Order allow,deny allow from all </Directory> ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/ <Directory "/usr/lib/cgi-bin"> AllowOverride None Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch Order allow,deny Allow from all </Directory> ErrorLog ${APACHE_LOG_DIR}/error.log LogLevel warn CustomLog ${APACHE_LOG_DIR}/access.log combined Alias /doc/ "/usr/share/doc/" <Directory "/usr/share/doc/"> Options Indexes MultiViews FollowSymLinks AllowOverride None Order deny,allow Deny from all Allow from 127.0.0.0/255.0.0.0 ::1/128 </Directory> </VirtualHost>
В конфигурационных файлах Apache используется теговый подход. В данном случае в теге виртуального узла ( VirtualHost ) описаны его настройки. Присутствуют несколько "дочерних" тегов с описанием каталогов, доступных данному виртуальному узлу ( Directory ). Между тегами <Directory> для каталога можно указазать различные опции (директивы). Например. для каталога /var/www установлен приоритет разрешительных директив ( Order allow, deny ), описывающих правила доступа к данному каталогу; также разрешен доступ всем ( allow from all ) и т.д. Основным каталогом для документов является /var/www (директива DocumentRoot ). Директива Alias описывает виртуальный путь HTTP-сервера, т.е. все запросы вида http://<IP-адрес сервера> /doc/ будут перенаправляться в каталог /usr/share/doc.
Для проверки работоспособности WEB-сервера можно используя Интернет-обозреватель, указав в строке адреса IP-адрес HTTP-сервера. Например (в данном случае используется текстовый браузер с указанием открываемой страницы в качестве параметра):
# lynx http://192.168.56.102
Протоколы работы сайта по умолчанию расположены в каталоге /var/log/apache2.
Apache имеет широкий набор функциональных возможностей, большое количество различных настроек и может использоваться в различных схемах WEB-доступа. Более подробную информацию по настройке и применению Apache можно найти в официальной документации [ 41 ] , книгах и пособиях, посвященных этой программе, а также в сети Интернет.
Кэширующий прокси-сервеp
Кэширующий прокси-сервер Squid [ 42 ] представляет собой реализацию прокси прикладного уровня для WEB-трафика (протоколы HTTP, HTTPS, FTP и т.д.). Обычно squid устанавливается на компьютере, имеющем как минимум два сетевых интерфейса: один с доступом в сети Интернет, а другой — в локальную сеть. Интернет-обозреватель или программа, взаимодействующая с прокси, настраивается на адрес прокси в локальной сети и заданный порт и далее все WEB-запросы отправляет прокси-серверу. Прокси обслуживает запросы клиентов, используя Интернет-интерфейс. При этом часть WEB-трафика сохраняется на файловой системе прокси (кэшируется), а при повторных запросах клиентов данные извлекаются из кэша.
Пример 8.5. Пример простой настройки Squid в Debian
Используя VirtualBox, создадим простой стенд для отладки схемы доступа в Интернет на основе Squid. Стенд будет включать две виртуальные машины на основе Debian: прокси-сервер и клиент локальной сети.
На прокси-сервере:
1.В VirtualBox предварительно для виртуальной машины включим два сетевых интерфейса: один в сеть NAT — Интернет-интерфейс (полагаем, что основная система имеет доступ в Интернет), а второй — во внутреннюю сеть (локальный интерфейс)
2.Включим виртуальную машину и настроим интерфейсы: eth0 — Интернет-интерфейс, eth1 — интерфейс локальной сети (фрагмент /etc/network/interfaces ):
auto eth0 iface eth0 inet dhcp auto eth1 iface eth1 inet static address 192.168.1.1 netmask 255.255.255.0
Перезапустим сетевую подсистему:
# /etc/init.d/networking restart
В результате интерфейс eth0 получит настройки по протоколу DHCP (от NAT-сети VirtualBox ):
# ip addr show eth0 2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000 link/ether 08:00:27:0a:41:d4 brd ff:ff:ff:ff:ff:ff inet 10.0.2.15/24 brd 10.0.2.255 scope global eth0 inet6 fe80::a00:27ff:fe0a:41d4/64 scope link valid_lft forever preferred_lft forever
Также будут автоматически прописаны настройки DNS-сервера (такие как в хостовой системе):
# cat /etc/resolv.conf nameserver 10.10.10.10
3.Установим squid:
#apt-get install squid
В процессе установки сервер прописывается в автозагрузку, создает структуру каталогов для дискового кэша (/var/spool/squid) и запускается.
4.Конфигурационный файл Squid - /etc/squid/squid.conf. По умолчанию удаленный доступ к squid запрещен. Для разрешения доступа нужно в конфигурационный файл добавить разрешающее правило для сети 192.168.1.0/24. Для этого в секции ACCESS CONTROLS впишем список доступа ( access list ):
acl mynet src 192.168.1.0/24
а затем в секции http_access после правила http_access allow localhost добавим:
http_access allow mynet
Также исправим опцию http_port, что squid принимал клиентские запросы только на локальном интерфейсе:
http_port 192.168.1.1:3128
Перезапустим squid:
# /etc/init.d/squid restart
5.Запустим виртуальную машину клиента, предварительно установив в VirtualBox сетевой адаптер в режим внутренней сети. В системе установим IP-адрес из сети 192.168.1.0/24. Проверим работу прокси-сервера c помощью текстового браузера lynx (в lynx опцию прокси-сервера можно установить с помощью переменной окружения):
# env http_proxy=''http://192.168.1.1:3128'' lynx http://intuit.ru
Программное обеспечение squid имеет широкие функциональные возможности и может работать в различных режимах. Более подробную информацию о настройке и использовании squid можно получить из официальной документации, книг и ресурсов сети Интернет.
Упражнения
- Воспроизвести с использованием VirtualBox пример 8.1, пример 8.2, пример 8.3, пример 8.4. В качестве клиента можно воспользоваться еще одной виртуальной машиной или хостовой системой (в случае Windows использовать средства ssh, доступные для данной ОС).
- В VirtualBox воспроизвести пример 8.5.