Документация будет дорабатываться и дополнятся со временем, для обеспечения пошаговой настройки сервера с нуля
keymap="ru.koi8-r" hostname="mail" #lvwimax_enable="YES" # это использовалось для Yota модема Samsung #lvwimax_mac_address="00:00:00:00:00:00" # MAC этой железяки pf_enable="YES" pf_rules="/etc/pf.conf" sshd_enable="YES" named_enable="YES" dhcpd_enable="YES" dhcpd_ifaces="em0 wlan0" # Слушать только на интерфейсах внутренней сети и Wi-Fi nginx_enable="YES" fsck_y_enable="YES" gateway_enable="YES" ifconfig_em0="inet 10.8.0.1/24" ifconfig_re0="inet x.x.x.x netmask 255.255.255.240" wlans_ral0="wlan0" # создаем интерфейс Wi-Fi create_args_wlan0="wlanmode ap authmode wpa" # тип - точка доступа, аутентификация wpa ifconfig_wlan0="inet 10.8.3.1/24 ssid SAGL_Wi-Fi mode 11g channel 7 country RU" # прописываем IP, тип подключения, канал и страну hostapd_enable="YES" # демон авторизации для Wi-Fi defaultrouter="x.x.x.x" openvpn_enable="YES" mysql_enable="YES" mysql_dbdir="/home/db/mysql" mysql_args="--bind-address=10.8.0.1" netams_enable="YES" apache22_enable="YES"
Делаем по минимуму
Port 22 # стандартный порт Port 222 # так же слушаем на дополнительном порту PermitRootLogin yes # разрешаем вход root PasswordAuthentication yes # разрешаем доступ по паролю Subsystem sftp /usr/libexec/sftp-server
Добавляем эти строчки
WITHOUT_X11="YES" # Сборка всех пакетов без X11
.if ${.CURDIR} == "/usr/ports/databases/mysql51-server" # Если идет сборка MySQL сервера, то переключаем его на utf8
WITH_CHARSET=utf8
WITH_COLLATION=utf8_general_ci
WITH_XCHARSET=all
.endif
По умолчанию файл не существует, его надо создать
interface=wlan0 # интерфейс Wi-Fi debug=1 ctrl_interface=/var/run/hostapd ctrl_interface_group=wheel dump_file=/tmp/hostapd.dump wpa=3 wpa_key_mgmt=WPA-PSK # Тип авторизации wpa_passphrase=pass_phrase # после знака равно - ключ для авторизации wpa_pairwise=TKIP CCMP #
Файл /usr/local/etc/dhcpd.conf
option domain-name "sagl";
option domain-name-servers 10.8.0.1;
default-lease-time 600;
max-lease-time 7200;
#ddns-update-style none;
#authoritative;
log-facility local7;
# A slightly different configuration for an internal subnet.
subnet 10.8.0.0 netmask 255.255.255.0 {
range 10.8.0.50 10.8.0.99;
option domain-name-servers 10.8.0.1;
option domain-name "sagl";
option routers 10.8.0.1;
default-lease-time 600;
max-lease-time 7200;
}
subnet 10.8.3.0 netmask 255.255.255.0 {
range 10.8.3.50 10.8.3.99;
option domain-name-servers 10.8.0.1;
option domain-name "sagl";
option routers 10.8.3.1;
default-lease-time 600;
max-lease-time 7200;
}
В основном файл меняем
listen-on { 127.0.0.1; 10.8.0.1;}; # На каких адресах слушать, в нашем случае это localhost и внутренний адрес сервера, наружу вытаскивать не будем.
forwarders { # Куда пересылать DNS запросы, в нашем случае это провайдер и Yota
94.25.128.74;
94.25.208.74;
80.250.208.250;
80.250.214.253;
};
В конец добавляем инклюд файла с нашими зонами
include "/etc/namedb/named.zones.conf";
Файл с нашими зонами
zone "sagl" {
type master;
file "/etc/namedb/master/sagl.zone";
};
zone "user001.sagl" {
type master;
file "/etc/namedb/master/user001.sagl.zone";
};
...
$ORIGIN .
$TTL 86400 ; 1 day
sagl IN SOA ns.sagl. root.ns.sagl. (
2010040807 ; serial
7200 ; refresh (2 hours)
3600 ; retry (1 hour)
1209600 ; expire (2 weeks)
86400 ; minimum (1 day)
)
NS ns.sagl.
$ORIGIN sagl.
localhost A 127.0.0.1
ns A 10.8.0.1
mail A 10.8.0.1
gw A 10.8.0.1
dev A 10.8.0.5
hq A 10.8.0.200
svn A 10.8.0.230
pm A 10.8.0.231
$ORIGIN .
$TTL 86400 ; 1 day
user001.sagl IN SOA ns.user001.sagl. root.ns.user001.sagl. (
2010040806 ; serial
7200 ; refresh (2 hours)
3600 ; retry (1 hour)
1209600 ; expire (2 weeks)
86400 ; minimum (1 day)
)
NS ns.user001.sagl.
$ORIGIN user001.sagl.
ns A 10.8.0.1
@ A 10.8.0.201 # для того что бы можно было обращаться к серверу без поддоменов.
* A 10.8.0.201 # все любые поддомены третьего уровня будут ссылаться на этот IP