Различия

Здесь показаны различия между двумя версиями данной страницы.

Ссылка на это сравнение

Предыдущая версия справа и слева Предыдущая версия
Следующая версия
Предыдущая версия
abills:docs:other:install_1:ru [2010/01/18 15:58]
pigich
abills:docs:other:install_1:ru [2015/12/05 17:50] (текущий)
Строка 3: Строка 3:
 Т.к. все заточено под FreeBSD не вижу смысла изголятся и ставить это все под линуксом,​ хотя сам я сервер баз данных держу под Debian Sarge :-)\\ Т.к. все заточено под FreeBSD не вижу смысла изголятся и ставить это все под линуксом,​ хотя сам я сервер баз данных держу под Debian Sarge :-)\\
  
-Ставим FreeBSD поновее, ставим исходники ядра и добавляем некоторые возможности в ядро:\\+====MySQL==== 
 +(У меня SQL база находится ​на линукс-сервере на другой машине, поэтому я не собирал, но проблем не должно ​быть). 
 +(Для сборки сразу с поддержкой utf8 - make WITH_CHARSET=utf8).\\
  
-  # cd /usr/src/sys/i386/conf +  # cd /usr/ports/database/mysql51-server && make  && make install
-  # cp SMP GATE-SMP +
  
-сли у вас один ​процессор и нет гипертрэйдинга, ​копируйте не SMP, а GENERIC)+Автостарт после перезагрузки. **/​etc/​rc.conf** 
 +  echo mysql_enable=\"​YES\"​ >> /​etc/​rc.conf
  
-  # ee GATE-SMP 
  
-В конец вставляем этот кусок: 
  
-  # For Abills +Создаём пользователя и базу. \\ 
-  ​options ​        ​IPFIREWALL + 
-  ​options ​        ​IPFIREWALL_DEFAULT_TO_ACCEPT +  ​# mysql --default-character-set=cp1251 -u root -p 
-  ​options ​        ​DUMMYNET+ 
 +  ​use mysql; 
 +  ​INSERT INTO user (Host, User, Password)  
 +    VALUES ('​localhost','​abills',​ password('​sqlpassword'​));​
   ​   ​
-  ​options ​        ​NETGRAPH +  ​INSERT INTO db (Host, Db, User, Select_priv,​ Insert_priv,​ Update_priv,​  
-  ​options ​        ​NETGRAPH_PPPOE +    Delete_priv,​ Create_priv,​ Drop_priv, Index_priv, Alter_priv,  
-  ​options ​        ​IPFILTER +    Lock_tables_priv,​ Create_tmp_table_priv,​ Create_view_priv,​ 
-  ​options ​        ​IPFILTER_LOG +    Show_view_priv,​ Execute_priv,​ Event_priv, Trigger_priv) ​ 
-  ​options ​        ​IPDIVERT+  ​VALUES ('​localhost',​ '​abills',​ '​abills',​ '​Y',​ '​Y',​ '​Y',​ '​Y',​ '​Y',​  
 +    '​Y',​ '​Y',​ '​Y',​ '​Y',​ '​Y',​ '​Y',​ '​Y',​ '​Y',​ '​Y',​ '​Y'​);​ 
 +   
 +  ​CREATE DATABASE abills; 
 +  ​flush privileges;
  
 +Загружаем таблицы в базу.
 +  # mysql --default-character-set=cp1251 -D abills < abills.sql
  
- ​Как показали изыскания,​ все это так или иначе понадобится для работы exppp и НАТа.\\ 
  
-Собираем:​\\ 
  
-  ​/usr/sbin/config GATE-SMP +====Perl modules==== 
-  ​cd ../compile/GATE-SMP +Для работы системы нужны модули. 
-  # make depend+ 
 +^DBI |(cd /​usr/​ports/​databases/​p5-DBI && make && make install) | 
 +^DBD-mysql |(cd /​usr/​ports/​databases/​p5-DBD-mysql51 && make && make install)| 
 +^Digest-MD5 ​ |для Chap авторизации (cd /​usr/​ports/​security/​p5-Digest-MD5 && make && make install) | 
 +^Digest-MD4 ​ |для MS-Chap авторизации (cd /​usr/​ports/​security/​p5-Digest-MD4 && make && make install) | 
 +^Crypt-DES ​  ​|для MS-Chap авторизации (cd /usr/ports/security/p5-Crypt-DES && make && make install) | 
 +^Digest-SHA1 |для MS-ChapV2 авторизации (cd /​usr/​ports/​security/​p5-Digest-SHA1 && make && make install) | 
 +^Time-HiRes ​ |Нужен только для тестирования скорости выполнения авторизациИ,​ аккаунтинга,​ и страниц веб-интерфейса (cd /usr/ports/​devel/​p5-Time-HiRes && make && make install) | 
 + 
 +====Web Server==== 
 +**Apache**\\ 
 + 
 +Собираем апач 2.2 из портов. 
 +  # cd /​usr/​ports/​www/​apache22
   # make   # make
   # make install   # make install
  
-Перегружаем машину и приступаем к установке необходимого софта.\\+Для автоматического запуска апача внести изменения в rc.conf\\ 
 + 
 +   
 +  # echo apache_enable=\"​YES\"​ >> /​etc/​rc.conf 
 + 
 +В случае использования веб-сервер Apache вносим в /​usr/​local/​etc/​apache22/​httpd.conf  
 + 
 +  #Abills version 0.5 
 +  Listen 9443 
 +  <​VirtualHost _default_:​9443>​ 
 +    DocumentRoot "/​usr/​abills/​cgi-bin"​ 
 +    #ServerName www.example.com:​9443 
 +    #​ServerAdmin admin@example.com 
 +    ErrorLog /​var/​log/​httpd/​abills-error.log 
 +    #​TransferLog /​var/​log/​httpd/​abills-access.log 
 +    CustomLog /​var/​log/​httpd/​abills-access_log common 
 +    
 +    <​IfModule ssl_module>​ 
 +      #   SSL Engine Switch: 
 +      #   ​Enable/​Disable SSL for this virtual host. 
 +      SSLEngine on 
 +      SSLCipherSuite ALL:​!ADH:​!EXPORT56:​RC4+RSA:​+HIGH:​+MEDIUM:​+LOW:​+SSLv2:​+EXP:​+eNULL 
 +      SSLCertificateFile /​usr/​abills/​Certs/​server.crt 
 +      SSLCertificateKeyFile /​usr/​abills/​Certs/​server.key 
 +      <​FilesMatch "\.(cgi)$">​ 
 +        SSLOptions +StdEnvVars 
 +      </​FilesMatch>​ 
 +      BrowserMatch "​.*MSIE.*" ​\ 
 +         ​nokeepalive ssl-unclean-shutdown \ 
 +         ​downgrade-1.0 force-response-1.0 
 +   
 +      CustomLog /​var/​log/​abills-ssl_request.log \ 
 +          "%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x \"​%r\"​ %b" 
 +    </​IfModule>​ 
 +   
 +   
 +  # User interface 
 +    <​Directory "/​usr/​abills/​cgi-bin">​ 
 +      <​IfModule ssl_module>​ 
 +        SSLOptions +StdEnvVars 
 +      </​IfModule>​ 
 +   
 +      <​IfModule mod_rewrite.c>​ 
 +        RewriteEngine on 
 +        RewriteCond %{HTTP:​Authorization} ^(.*) 
 +        RewriteRule ^(.*) - [E=HTTP_CGI_AUTHORIZATION:​%1] 
 +        Options Indexes ExecCGI SymLinksIfOwnerMatch 
 +      </​IfModule>​ 
 +    
 +      AddHandler cgi-script .cgi 
 +      Options Indexes ExecCGI FollowSymLinks 
 +      AllowOverride none 
 +      DirectoryIndex index.cgi ​         
 +   
 +      Order allow,​deny 
 +      Allow from all 
 +   
 +     <​Files ~ "​\.(db|log)$">​ 
 +       Order allow,​deny 
 +       Deny from all 
 +     </​Files>​ 
 +     
 +    #For hotspot solution 
 +    #​ErrorDocument 404 "/​abills/"​ 
 +    #​directoryIndex "/​abills"​ index.cgi 
 +   </​Directory>​ 
 +   
 +   #​Admin interface 
 +   <​Directory "/​usr/​abills/​cgi-bin/​admin">​ 
 +     <​IfModule ssl_module>​ 
 +       ​SSLOptions +StdEnvVars 
 +     </​IfModule>​ 
 +   
 +     ​AddHandler cgi-script .cgi 
 +     ​Options Indexes ExecCGI FollowSymLinks 
 +     ​AllowOverride none 
 +     ​DirectoryIndex index.cgi 
 +     order deny,​allow 
 +     allow from all 
 +   </​Directory>​ 
 +   
 +  </​VirtualHost>​ 
 + 
 + 
  
 +====Radius====
 Все пакеты кроме самого биллинга я ставил из портов и все нормально работало,​ начнем с радиуса:​\\ Все пакеты кроме самого биллинга я ставил из портов и все нормально работало,​ начнем с радиуса:​\\
  
Строка 44: Строка 149:
   # make install   # make install
  
-В появившемся окне лучше отметить опции: 
- 
-[X] SNMP          With SNMP support \\ 
-[X] EXPERIMENTAL ​ Build experimental modules\\ 
- 
- 
-Snmp – позволит радиусу общаться по этому протоколу,​\\ 
-Experimental – для поддержки дополнительных расширений радиуса.\\ 
-НО! Работать будет и без нее…\\ 
 Далее идем в /​usr/​local/​etc/​raddb и убираем у всех файлов .sample (чесно говоря и не люблю из-за этого фрю :)\\ Далее идем в /​usr/​local/​etc/​raddb и убираем у всех файлов .sample (чесно говоря и не люблю из-за этого фрю :)\\
  
Строка 96: Строка 192:
   authorize {   authorize {
     preprocess     preprocess
-  #  chap 
-  #  counter 
-  #  attr_filter 
-  #  eap 
     suffix     suffix
     files     files
-  # etc_smbpasswd 
-  # sql 
-  # mschap 
   }   }
 С радиусом пока все, но позже в зависимости от используемых способов терминирования (подключения пользователей) мы в него будем добавлять кое-что еще.\\ С радиусом пока все, но позже в зависимости от используемых способов терминирования (подключения пользователей) мы в него будем добавлять кое-что еще.\\
  
-для автоматического запуска радиуса внести изменения в **/​etc/​rc.conf** ​добавить ​\\ +Для автоматического запуска радиуса внести изменения в **/​etc/​rc.conf**\\ 
-  radiusd_enable="​YES"​+  ​ 
 +  # echo radiusd_enable=\"YES\" ​>> /​etc/​rc.conf
  
  
 +====Сборка ядра====
  
 +Ставим FreeBSD поновее,​ ставим исходники ядра и добавляем некоторые возможности в ядро:\\
  
 +  # cd /​usr/​src/​sys/​i386/​conf
 +  # cp SMP GATE-SMP
  
-====MySQL==== +(Если у вас один процессор и нет гипертрэйдинга, копируйте не SMP, а GENERIC)
-(У меня SQL база находится на линукс-сервере на другой машине, поэтому я не собирално проблем не должно быть). +
-(Для сборки сразу с поддержкой utf8 - make WITH_CHARSET=utf8).\\+
  
-  # cd /​usr/​ports/​database/​mysql41-server && make  && make install+  # ee GATE-SMP
  
-Автостарт после перезагрузки. **/​etc/​rc.conf** +В конец вставляем этот кусок:
-  echo mysql_enable=\"​YES\"​ >> /​etc/​rc.conf+
  
 +  # For Abills
 +  options ​        ​IPFIREWALL
 +  options ​        ​IPFIREWALL_DEFAULT_TO_ACCEPT
 +  options ​        ​DUMMYNET
 +  ​
 +  options ​        ​NETGRAPH
 +  options ​        ​NETGRAPH_PPPOE
 +  options ​        ​IPFILTER
 +  options ​        ​IPFILTER_LOG
 +  options ​        ​IPDIVERT
  
  
-Создаём пользователя и базу. ​\\ +Собираем:\\
-  # mysql -u root -p+
  
-   use mysql;  +  # /​usr/​sbin/​config GATE-SMP 
-   ​INSERT INTO user (Host, User, Password) VALUES (’%’,​’abills’,​ password(’sqlpassword’));​ +  # cd ../​compile/​GATE-SMP 
-   ​INSERT INTO db (Host, Db, User, Select_priv,​ Insert_priv,​  +  # make depend
-      Update_priv,​ Delete_priv,​ Create_priv,​ Drop_priv, Index_priv, Alter_priv)  +
-    VALUES (’localhost’,​ ‘abills’,​ ‘abills’,​ ‘Y’, ‘Y’, ‘Y’, ‘Y’, ‘Y’, ‘Y’, ‘Y’, ‘Y’); +
-    +
-   ​CREATE DATABASE abills; +
- +
-  ​mysqladmin flush-privileges;​ +
- +
-Загружаем таблицы в базу.  +
- +
-  # mysql -D abills < abills.sql +
- +
- +
- +
- +
-====Web Server==== +
-**Apache**\\ +
- +
-Собираем апач 1.3 из портов+
-  # cd /​usr/​ports/​www/​apache13+
   # make   # make
   # make install   # make install
  
-После этого нам предложат для автоматического запуска апача внести изменения в rc.conf\\ +Перегружаем машину и приступаем ​к установке необходимого ​софта.\\
- +
-To run apache www server from startup, add apache_enable="​YES"​ +
- in your /​etc/​rc.conf. +
- +
-В случае использования веб-сервер Apache вносим в /​usr/​local/​etc/​apache21/​httpd.conf  +
- +
-  #Abills version 0.3 +
-  # User interface +
-  Alias /abills "/​usr/​abills/​cgi-bin/"​ +
-  <​Directory "/​usr/​abills/​cgi-bin">​ +
-    <​IfModule mod_rewrite.c>​ +
-      RewriteEngine on +
-      RewriteCond %{HTTP:​Authorization} ^(.*) +
-      RewriteRule ^(.*) - [E=HTTP_CGI_AUTHORIZATION:​%1] +
-      Options Indexes ExecCGI SymLinksIfOwnerMatch +
-    </​IfModule>​ +
-    AddHandler cgi-script .cgi +
-    Options Indexes ExecCGI FollowSymLinks +
-    AllowOverride none +
-    DirectoryIndex index.cgi +
-    Order allow,​deny +
-    Allow from all +
-   +
-    <Files ~ "​\.(db|log)$">​ +
-      Order allow,​deny +
-      Deny from all +
-    </​Files>​ +
-  </​Directory>​ +
-   +
-  #Admin interface +
-  <​Directory "/​usr/​abills/​cgi-bin/​admin">​ +
-    AddHandler cgi-script .cgi +
-    Options Indexes ExecCGI FollowSymLinks +
-    AllowOverride none +
-    DirectoryIndex index.cgi +
-    order deny,​allow +
-    allow from all +
-  </​Directory>​ +
- +
-**/​etc/​rc.conf** +
-  apache22_enable="​YES"​ +
- +
-====Perl modules==== +
-Для работы системы ​нужны модули+
- +
-^DBI |(/​usr/​ports/​databases/​p5-DBI) | +
-^DBD-mysql |(/​usr/​ports/​databases/​p5-DBD-mysqlxxx)xxx- версия сервера mysql которого вы ставили) ​ В моем случае p5-DBD-mysql41 | +
-^Digest-MD5 ​ |для Chap авторизации (/​usr/​ports/​security/​p5-Digest-MD5) | +
-^Digest-MD4 ​ |для MS-Chap авторизации (/​usr/​ports/​security/​p5-Digest-MD4) | +
-^Crypt-DES ​  ​|для MS-Chap авторизации (/​usr/​ports/​security/​p5-Crypt-DES) | +
-^Digest-SHA1 |для MS-ChapV2 авторизации (/​usr/​ports/​security/​p5-Digest-SHA1) | +
-^libnet    ​|Нужен только при авторизации из UNIX passwd (/​usr/​ports/​net/​libnet) | +
-^Time-HiRes ​ |Нужен только для тестирования скорости выполнения авторизациИ,​ аккаунтинга,​ и страниц веб-интерфейса (/​usr/​ports/​devel/​p5-Time-HiRes) | +
- +
- +
-Выполняем    +
- +
-  cd /​usr/​ports/​databases/​p5-DBI +
-  make install +
- +
-И так для каждого ​компонента. +
- +
- +
  
  
Строка 225: Строка 242:
  
 Загрузить пакет можно по адресу http://​sourceforge.net/​projects/​abills/​ \\ Загрузить пакет можно по адресу http://​sourceforge.net/​projects/​abills/​ \\
-  tar zxvf abills-0.3x.tgz+  tar zxvf abills-0.51.tgz
   cp -Rf abills /usr/   cp -Rf abills /usr/
  
Строка 253: Строка 270:
   # chown -Rf www /​usr/​abills/​Abills/​templates   # chown -Rf www /​usr/​abills/​Abills/​templates
   # chown -Rf www /​usr/​abills/​backup   # chown -Rf www /​usr/​abills/​backup
 +  # mkdir /​usr/​abills/​var /​usr/​abills/​var/​log
  
  
-Открываем веб интерфейс http://​your.host/abills/admin/\\+Открываем веб интерфейс http://​your.host:9443/admin/\\
 Логин администратора по умолчанию ''​abills''​ пароль ''​abills''​\\ Логин администратора по умолчанию ''​abills''​ пароль ''​abills''​\\
 Прежде всего надо сконфигурировать сервера доступа NAS (Network Access Server). \\ Прежде всего надо сконфигурировать сервера доступа NAS (Network Access Server). \\
Строка 287: Строка 305:
 Создание тарифного плана\\ Создание тарифного плана\\
  
-Меню **System configuration -> ialup & VPN -> Tarif Plans** \\+Меню **System configuration -> Internet ​-> Tarif Plans** \\
  
-Регистрация пользователя **Customers->​UsersAdd**\\+Регистрация пользователя **Customers -> Users -> Add**\\
  
-Заведение сервиса ​Dialup/​VPN ​на пользователя.+Заведение сервиса ​Internet  ​на пользователя.
  
 Customers -> Users -> Information -> Services→Dialup / VPN \\ Customers -> Users -> Information -> Services→Dialup / VPN \\
Строка 300: Строка 318:
  
   2005-02-23 12:55:55 LOG_INFO: AUTH [testuser] NAS: 1 (xxx.xxx.xxx.xxx) GT: 0.03799   2005-02-23 12:55:55 LOG_INFO: AUTH [testuser] NAS: 1 (xxx.xxx.xxx.xxx) GT: 0.03799
- 
- 
-