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

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

Установка и настройка Webmin в FreeBSD

Решил поставить на FreeBSD сервер Webmin для одного из клиентов.

Немного информации:
Webmin — это web-интерфейс для удобного администрирования
Unix систем. Используя любой баузер, Вы можете настраивать
аккаунты юзеров, сервер Apache, DNS, файловый сервер и многое другое.
  1. Для начала стоит обновить порты( если вы еще этого не сделали), чтоб иметь последнюю версию (на момент написания статьи - webmin-1.560).
    cd /usr/ports && make update 
     
  2. Устанавливаем собственно Webmin:
    cd /usr/ports/sysutils/webmin
    make install clean
    
    В конце видим:
    ===> Installing rc.d startup script(s)
    ===>   Registering installation for webmin-1.560
    ===>  Cleaning for p5-Authen-PAM-0.16_1
    ===>  Cleaning for webmin-1.560
     
  3. Конфигурация Webmin. Любым редактором (я mc-шный пользую) редактируем файл /etc/rc.conf, добавляем в конец
    webmin_enable="YES"
    
    Для установки всех необходимых конфигов и т.д.
    /usr/local/lib/webmin/setup.sh
    
    Надо будет ответить на несколько вопросов:
    ***********************************************************************                                                                                      
    *            Welcome to the Webmin setup script, version 1.510        *                                                                                      
    ***********************************************************************                                                                                      
    Webmin is a web-based interface that allows Unix-like operating                                                                                              
    systems and common Unix services to be easily administered.                                                                                                  
                                                                                                                                                                 
    Installing Webmin in /usr/local/lib/webmin ...                                                                                                               
                                                                                                                                                                 
    ***********************************************************************                                                                                      
    Webmin uses separate directories for configuration files and log files.                                                                                      
    Unless you want to run multiple versions of Webmin at the same time                                                                                          
    you can just accept the defaults.                                                                                                                            
                                                                                                                                                                 
    Log file directory [/var/log/webmin]:  [Жмем Enter]                                                                                                                  
                                                                                                                                                                 
    ***********************************************************************                                                                                      
    Webmin is written entirely in Perl. Please enter the full path to the                                                                                        
    Perl 5 interpreter on your system.                                                                                                                           
                                                                                                                                                                 
    Full path to perl (default /usr/bin/perl): [Жмем Enter]                                                                                                                   
                                                                                                                                                                 
    Testing Perl ...                                                                                                                                             
    Perl seems to be installed ok                                                                                                                                
                                                                                                                                                                 
    ***********************************************************************                                                                                      
    Operating system name:    FreeBSD
    Operating system version: 7.0
    ***********************************************************************
    Webmin uses its own password protected web server to provide access
    to the administration programs. The setup script needs to know :
     - What port to run the web server on. There must not be another
       web server already using this port.
     - The login name required to access the web server.
     - The password required to access the web server.
     - If the webserver should use SSL (if your system supports it).
     - Whether to start webmin at boot time.
    Web server port (default 10000): [Жмем Enter]
    Login name (default admin): [Жмем Enter]
    Login password: [Ввводим ваш пароль]
    Password again:
    Use SSL (y/n): [y]
    ***********************************************************************
    Creating web server config files..
    ..done
    Creating access control file..
    ..done
    Creating start and stop scripts..
    ..done
    Copying config files..
    ..done
    Changing ownership and permissions ..
    ..done
    Running postinstall scripts ..
    syslog-ng: not found
    ..done
     
  4. Запуск Webmin. Сразу после установки запустим Webmin
    /usr/local/etc/rc.d/webmin start
    
    Для доступа к Webmin-у браузере набираем
    https://your-domain.com:10000/
     
    Полезная информация:
    Для того чтобы поменять пароль есть одна простая команда:
    # /usr/local/lib/webmin/changepass.pl /usr/local/etc/webmin user password
    Вместо "user" введем имя пользователя, пароль которого надо изменить, а вместо "password" сам пароль соответственно.
     

Настройка DHCP сервера на FreeBSD 9.x

Задача:

Имеется интернет-шлюз на ОС FreeBSD 9 с работающей DNS-службой. "Внутренний" интерфейс (re0) сервера имеет ip-адрес 192.168.0.1. Хочется что бы сетевые карты клиентов локальной сети настраивались автоматически, для этого наш сервер должен выполнять функцию DHCP-сервера

Решение:
Начинаем с установки необходимых пакетов. Для этого переходим в нужный каталог:
gateway# cd /usr/ports/net/isc-dhcp41-server
Смотрим зависимости:
gateway# make all-depends-list
Скорее всего мы увидим, что их нет.. ну и хорошо.
gateway# make config
задаем параметры установки, вот такие: 
[*] DHCP_IPV6
[*] DHCP_PARANOIA
[  ] DHCP_LDAP
[*] DHCP_LDAP_SSL

Загружаем все необходимое:
gateway# make fetch
Устанавливаем:
gateway#  make install clean
Как поставится (это будет очень быстро), обновим пути поиска:
gateway#  rehash
 После установки редактируем файл /usr/local/etc/dhcpd.conf примерно до следующего содержания:
option domain-name "domain.ru";
option domain-name-servers 192.168.0.1;
option subnet-mask 255.255.255.0;
default-lease-time 600;
max-lease-time 7200;
ddns-update-style none;
authoritative;
log-facility local7;
subnet 192.168.0.0 netmask 255.255.255.0 {
      range 192.168.0.200 172.16.0.250;
      option routers 192.168.0.1;
      option domain-name-servers 192.168.0.1;
}
Рассмотрим содежримое dhcpd.conf:
option domain-name  - указывается имя домена
option domain-name-servers  - здесь перечисляются ip-адреса DNS-серверов, которые будут получать клиенты локальной сети
option subnet-mask - маска подсетиполучаемая клиентами локальной сети
default-lease-time 600 - время аренды адреса в секундах (по-умолчанию)
max-lease-time 7200 - максимальное время аренды адреса в секундах
ddns-update-style none - не обновлять DNS при выдаче клиенту
authoritative - авторитарный режим (типа это главный DHCP сервер на деревне)
log-facility local7 - уровень детализации логов
subnet - обслуживаемая подсеть (может быть несколько) + маска подсети
range - диапазон выдаваемых адресов
option routers  - основной шлюз, получаемый клиентами локальной сети
option domain-name-servers  - DNS-сервер, получаемый клиентами локальной сети

Добавляем в файл /etc/rc.conf следующие строки:
dhcpd_enable="YES"
dhcpd_iface="re0"
Первая строка определяет автозапуск DHCP сервера при старте системы, вторая строка определяет сетевой интерфейс (интерфейсы), на котором (которых) будет работать DHCP сервер.
Пробуем запустить DHCP-сервер:
gateway# /usr/local/etc/rc.d/isc-dhcpd start
Также хочется иметь возможность фиксировать ip-адреса за некторыми ПК.
Для этого нужно в файл /usr/local/etc/dhcpd.conf добавить всего лишь несколько строк: 
host pc1 {
    hardware ethernet 08:00:27:E2:81:C9;
    fixed-address 192.168.0.2; }

Для того, что бы наши изменения вступили в силу, нужно перезапусить DHCP сервер:
gateway# /usr/local/etc/rc.d/isc-dhcpd restart

Остановить DHCP сервер можно командой:
testrouter# /usr/local/etc/rc.d/isc-dhcpd stop 

Запустить DHCP сервер можно командой: 
testrouter# /usr/local/etc/rc.d/isc-dhcpd start 

Сведения о выданных IP-адресах и еще много чего интересного о том, кому они были выданы хранятся в файле  /var/db/dhcpd/dhcpd.leases