Различия
Здесь показаны различия между двумя версиями данной страницы.
Предыдущая версия справа и слева Предыдущая версия Следующая версия | Предыдущая версия | ||
abills:docs:manual:install_debian:ru [2017/07/06 12:23] anton |
abills:docs:manual:install_debian:ru [2018/06/22 15:52] (текущий) asmodeus |
||
---|---|---|---|
Строка 2: | Строка 2: | ||
**Версия для которой писалась документация** \\ | **Версия для которой писалась документация** \\ | ||
- | Debian 8.6.0 \\ | + | |
+ | Debian 8.6.0 | ||
При установке, параметры: | При установке, параметры: | ||
Строка 35: | Строка 36: | ||
Обновляем пакеты и систему: | Обновляем пакеты и систему: | ||
# apt-get update -yq && apt-get upgrade -yq | # apt-get update -yq && apt-get upgrade -yq | ||
+ | # apt-get install libperl-dev gcc make | ||
| | ||
====MySQL==== | ====MySQL==== | ||
Строка 40: | Строка 42: | ||
**Debian 8.xx** | **Debian 8.xx** | ||
# apt-get install -yq mariadb-server libmysqlclient-dev | # apt-get install -yq mariadb-server libmysqlclient-dev | ||
+ | **Debian 9.xx** | ||
+ | # apt-get install -yq mariadb-server libmariadbclient-dev libmariadbclient-dev-compat | ||
Создаём пользователя и базу. | Создаём пользователя и базу. | ||
- | # mysql --default-character-set=utf8 -u root -p | + | # mysql --default-character-set=utf8 -u root |
В консоли mysql делаем : \\ | В консоли mysql делаем : \\ | ||
Строка 56: | Строка 60: | ||
# cd /usr/abills/db/ | # cd /usr/abills/db/ | ||
# mysql --default-character-set=utf8 -D abills < abills.sql -p | # mysql --default-character-set=utf8 -D abills < abills.sql -p | ||
+ | | ||
+ | **Если возникает Invalid default value for 'registration'** | ||
+ | Выполняем | ||
+ | # sed -i -e "1 s/^/SET SQL_MODE='NO_ENGINE_SUBSTITUTION,NO_AUTO_VALUE_ON_ZERO';/;" /usr/abills/db/abills.sql | ||
+ | # mysql --default-character-set=utf8 -u root -p -D abills < /usr/abills/db/abills.sql | ||
====Web Server==== | ====Web Server==== | ||
===Apache=== | ===Apache=== | ||
Установка Apache | Установка Apache | ||
- | # apt-get install apache2 | + | # apt-get install -yq apache2 |
Создаём сертификаты. | Создаём сертификаты. | ||
# /usr/abills/misc/certs_create.sh apache | # /usr/abills/misc/certs_create.sh apache | ||
Копируем готовый конфиг Apache в папку внешних конфигураций apache\\ | Копируем готовый конфиг Apache в папку внешних конфигураций apache\\ | ||
- | **Apache 2.2**\\ | ||
- | <code> | ||
- | # cp /usr/abills/misc/apache/abills_httpd.conf /etc/apache2/Includes/ | ||
- | </code> | ||
- | |||
**Apache 2.4** | **Apache 2.4** | ||
<code> | <code> | ||
Строка 91: | Строка 95: | ||
Для работы системы нужны модули.\\ | Для работы системы нужны модули.\\ | ||
- | | **DBI** |# apt-get install libdbi-perl| | + | # cd /usr/abills/misc/ && perl perldeps.pl apt-get -batch |
- | | **DBD-mysql** |# apt-get install libdbd-mysql-perl| | + | |
- | | **Digest-MD5** | для Chap авторизации \\ # apt-get install libdigest-md5-file-perl| | + | |
- | | **Digest-SHA1**| для MS-ChapV2 авторизации \\ # apt-get install libdigest-sha-perl| | + | |
- | | **libnet** | Нужен только при авторизации из UNIX passwd \\ # apt-get install libnet1| | + | |
- | | **Time-HiRes** | Нужен только для тестирования скорости выполнения авторизации, аккаунтинга, и страниц веб-интерфейса | | + | |
- | ====Radius==== | + | Улучшаем себе жизнь в будущем: |
+ | # apt-get install -yq cpanminus | ||
+ | |||
+ | Если какие-то модули не установились, можно запустить | ||
+ | # cpanm <ИмяМодуля> | ||
+ | |||
+ | Например у меня не установился ''Digest::SHA1'', запускаю: | ||
+ | # cpanm Digest::SHA1 | ||
+ | |||
+ | ====FreeRadius==== | ||
+ | |||
+ | ===Установка=== | ||
+ | На все предупреждения **./configure** кроме ''rlm_perl'' и ''rlm_sql_mysql'' можно не обрщать внимания. \\ | ||
+ | На удаленном сервере установите **libmysqlclient** и **libmysqlclient-dev** | ||
- | ===Инсталяция:=== | ||
<code> | <code> | ||
- | # apt-get install libperl-dev gcc make | + | apt-get install -yq libperl-dev gcc make libtalloc-dev |
- | # wget ftp://ftp.freeradius.org/pub/freeradius/freeradius-server-2.2.9.tar.gz | + | wget ftp://ftp.freeradius.org/pub/freeradius/freeradius-server-2.2.10.tar.gz |
- | # tar zxvf freeradius-server-2.2.9.tar.gz | + | tar zxvf freeradius-server-2.2.10.tar.gz |
- | # cd freeradius-server-2.2.9 | + | cd freeradius-server-2.2.10 |
- | # ./configure --prefix=/usr/local/freeradius --with-rlm-perl-lib-dir=/usr/lib/ --with-openssl=no | + | ./configure --prefix=/usr/local/freeradius --with-rlm-perl-lib-dir=/usr/lib/ --with-dhcp=yes --with-openssl=no > 1 |
- | # make | + | make |
- | # make install | + | make install |
</code> | </code> | ||
Строка 114: | Строка 125: | ||
<code> | <code> | ||
- | cp /usr/abills/misc/freeradius/v2/radiusd.conf /usr/local/freeradius/etc/raddb/radiusd.conf | + | # cp /usr/abills/misc/freeradius/v2/radiusd.conf /usr/local/freeradius/etc/raddb/radiusd.conf |
- | rm /usr/local/freeradius/etc/raddb/sites-enabled/* | + | # rm -f /usr/local/freeradius/etc/raddb/sites-enabled/* |
- | cp /usr/abills/misc/freeradius/v2/users_perl /usr/local/freeradius/etc/raddb/users | + | # cp /usr/abills/misc/freeradius/v2/users_perl /usr/local/freeradius/etc/raddb/users |
- | cp /usr/abills/misc/freeradius/v2/default_rlm_perl /usr/local/freeradius/etc/raddb/sites-enabled/abills_default | + | # cp /usr/abills/misc/freeradius/v2/default_rlm_perl /usr/local/freeradius/etc/raddb/sites-enabled/abills_default |
- | cp /usr/abills/misc/freeradius/v2/perl /usr/local/freeradius/etc/raddb/modules/ | + | # cp /usr/abills/misc/freeradius/v2/perl /usr/local/freeradius/etc/raddb/modules/ |
| | ||
- | ln -s /usr/local/freeradius/sbin/radiusd /usr/sbin/radiusd | + | # ln -s /usr/local/freeradius/sbin/radiusd /usr/sbin/radiusd |
</code> | </code> | ||
Файл для автозапуска ,- создаем и вставляем в него следующий текст | Файл для автозапуска ,- создаем и вставляем в него следующий текст | ||
- | nano /etc/init.d/freeradius | + | nano /etc/init.d/radiusd |
| | ||
| | ||
Строка 132: | Строка 143: | ||
### BEGIN INIT INFO | ### BEGIN INIT INFO | ||
- | # Provides: freeradius | + | # Provides: radiusd |
# Required-Start: $remote_fs $network $syslog | # Required-Start: $remote_fs $network $syslog | ||
# Should-Start: $time mysql slapd postgresql samba krb5-kdc | # Should-Start: $time mysql slapd postgresql samba krb5-kdc | ||
Строка 146: | Строка 157: | ||
. /lib/lsb/init-functions | . /lib/lsb/init-functions | ||
- | PROG="freeradius" | + | PROG="radiusd" |
PROGRAM="/usr/sbin/radiusd" | PROGRAM="/usr/sbin/radiusd" | ||
- | PIDFILE="/var/run/radiusd/radiusd.pid" | + | PIDFILE="/usr/local/freeradius/var/run/radiusd/radiusd.pid" |
DESCR="FreeRADIUS daemon" | DESCR="FreeRADIUS daemon" | ||
Строка 190: | Строка 201: | ||
esac | esac | ||
- | exit 0</code> | + | exit 0 |
- | + | </code> | |
- | chmod +x /etc/init.d/freeradius | + | |
- | + | ||
- | update-rc.d freeradius defaults | + | |
+ | # chmod +x /etc/init.d/radiusd | ||
+ | # update-rc.d radiusd defaults | ||
+ | # update-rc.d radiusd enable | ||
- | Меняем в конфиге радиуса: | + | Меняем в конфиге радиуса **/usr/local/freeradius/etc/raddb/radiusd.conf**: |
<code> | <code> | ||
- | #nano /usr/local/freeradius/etc/raddb/radiusd.conf | + | # nano /usr/local/freeradius/etc/raddb/radiusd.conf |
prefix = /usr/local/freeradius | prefix = /usr/local/freeradius | ||
+ | | ||
+ | libdir = /usr/local/freeradius/lib | ||
| | ||
user = freerad | user = freerad | ||
Строка 207: | Строка 220: | ||
</code> | </code> | ||
- | В файле ''/usr/local/freeradius/etc/raddb/clients.conf'' удалить всё и вписать: | + | Благодаря модулю ''sql'', можно хранить сервера доступа в базе данных (всё равно необходим перезапуск радиуса после добавления/изменения серверов, но не надо править **clients.conf**). \\ |
- | + | Очищаем список серверов доступа из **/usr/local/freeradius/etc/raddb/clients.conf** (чтоб не было дупликатов из-за записей в базе) | |
- | client 127.0.0.1 { | + | # echo '' > /usr/local/freeradius/etc/raddb/clients.conf |
- | secret = secretpass | + | # cp /usr/abills/misc/freeradius/v2/sql.conf /usr/local/freeradius/etc/raddb/ |
- | shortname = shorrname | + | |
- | } | + | Заполняем нужные нам параметры соединения с БД |
- | + | # nano /usr/local/freeradius/etc/raddb/sql.conf | |
+ | <code> | ||
+ | sql { | ||
+ | database = "mysql" | ||
+ | driver = "rlm_sql_${database}" | ||
+ | server = "localhost" | ||
+ | #port = 3306 | ||
+ | login = "abills" | ||
+ | password = "sqlpassword" | ||
+ | radius_db = "abills" | ||
+ | |||
+ | # В самом конце файла | ||
+ | '%secretkey%' меняем на 'test12345678901234567890' | ||
+ | </code> | ||
- | Создание user и group если freeradius ранее не был установлен то без этого не стартует | + | Создаём user и group. (если freeradius ранее не был установлен то без этого не стартует) |
# groupadd freerad | # groupadd freerad | ||
# useradd -g freerad -s /bash/bash freerad | # useradd -g freerad -s /bash/bash freerad | ||
# chown -R freerad:freerad /usr/local/freeradius/etc/raddb | # chown -R freerad:freerad /usr/local/freeradius/etc/raddb | ||
- | |||
Запуск radius в режиме отладки | Запуск radius в режиме отладки | ||
<code> | <code> | ||
- | # /usr/local/freeradius/sbin/radiusd -X | + | # /usr/sbin/radiusd -X |
</code> | </code> | ||
или | или | ||
<code> | <code> | ||
- | # service radiusd -X | + | # radiusd -X |
</code> | </code> | ||
На всякий случай оставлю здесь: [[abills:docs:faq:ru#kazhetsja_nastroil_no_nikto_ne_mozhet_podkljuchitsja| Кажется настроил, но никто не может подключиться]] | На всякий случай оставлю здесь: [[abills:docs:faq:ru#kazhetsja_nastroil_no_nikto_ne_mozhet_podkljuchitsja| Кажется настроил, но никто не может подключиться]] | ||
+ | |||
+ | Если ошибок нет, запускаем | ||
+ | # service radiusd start | ||
====ABillS - Настройка==== | ====ABillS - Настройка==== | ||
Вносим в **/etc/crontab** периодические процессы \\ | Вносим в **/etc/crontab** периодические процессы \\ | ||
Строка 248: | Строка 276: | ||
# chown -Rf www-data /usr/abills/Abills/templates | # chown -Rf www-data /usr/abills/Abills/templates | ||
# chown -Rf www-data /usr/abills/backup | # chown -Rf www-data /usr/abills/backup | ||
+ | # chmod 755 /usr/abills/cgi-bin/admin/index.cgi | ||
+ | # chmod 755 /usr/abills/cgi-bin/index.cgi | ||
</code> | </code> | ||