Advertisement
load-net

CentOS-Stream-8-x86_64-20210503-boot /asterisk-18.4.0

May 10th, 2021
191
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 13.89 KB | None | 0 0
  1. При настройке с помощью chan_sip
  2. no — Не выполняйте обработку NAT, отличную от RFC 3581.
  3. force_rport — Если параметр rport отсутствует, все равно отправьте ответы на исходный IP-адрес и порт, как если бы присутствовал параметр rport.
  4. comedia — Отправьте медиа на адрес и порт, с которого Asterisk получил его, независимо от того, где SDP указывает, что его следует отправить.
  5. auto_force_rport — Автоматически разрешить отправку ответов на исходный IP-адрес и порт, как если бы присутствовал rport, если Asterisk обнаружит NAT. По умолчанию.
  6. auto_comedia — Автоматически отправлять носитель на порт, с которого Asterisk получил его, независимо от того, где SDP указывает, что его следует отправить, если Asterisk обнаружит NAT.
  7.  
  8. В chan_pjsip параметры конечной точки , которые управляют поведением NAT:
  9. rtp_symmetric — отправляет носитель на адрес и порт, с которого Asterisk получает его, независимо от того, где SDP указывает, что его следует отправить
  10. force_rport — отправлять ответы на исходный IP-адрес и порт, как если бы порт присутствовал, даже если это не так
  11. rewrite_contact — переписать SIP. Контакт с адресом источника и портом запроса, чтобы последующие запросы перешли на этот адрес и порт.
  12.  
  13. Защита ключем !!!!!
  14. puttygen.exe
  15. rsa
  16. generate
  17. Копируем содержимое из окна Public key pasting into OpenSSH autorized_kes file:
  18. И втсавляем его в файл
  19. Вот пример
  20. *********************************************************************************************************
  21. mkdir -p ~/.ssh
  22. echo ssh-rsa AAAAB3NzaC1yc2EAAAABJQAAAQEA6BU1usFtvHK9rupAKA5TcHM5gB7d8dqFsiV8W7b3h63pEqGRXvYM/tsPLzwHWVsm6D5HGyHQnLHR9pgsG9m6Pb7ZDGjIhh4t2aKm5Qf06F6lqoIZOovsj4asaO7ScpsHqVgNq0J+NkxFnuGZsH0lj5Z+2sYQ0/ixNkteagGdI+pCoQ0LUrqoAdutx60+v1OdS1uMRqjl3S2nzLYCZKFZXrVCpJAl1EmPPW/upiDfL2yPrXOz3oYhR6sTACvLXgUQ9sonpedgoRIQTGMGZ2TxFwxPt1PfYfzn81IHfFDWgMqOO3Ji0PHt5t0Gt1i7FDgjs3FQCKOXLlX8KZ93Xvu9gQ== rsa-key-20210510 >> ~/.ssh/authorized_keys
  23. **********************************************************************************************************
  24.  
  25. И сохранием приватный ключ
  26. File-Save private key - В любую папку
  27.  
  28. Настройка Putty
  29. Putty - Connection - SSH - Auth + Private key file for authentication: Нажимаем Browse... И вибираем сохраненный файл с расширением .ppk
  30.  
  31. Putty - Connection - Auto-login username - root
  32.  
  33. Session - Host Name (or IP address) вставляем IP (Узнать IP командой - ip addr show)
  34.  
  35. Saved Session Любое имя например Server1 нажимем Save
  36. Кликаем пару раз на сохраненное название Server1
  37.  
  38.  
  39. mcedit /etc/ssh/sshd_config
  40. PasswordAuthentication no
  41. systemctl restart sshd
  42.  
  43. CentOS-Stream-8-x86_64-20210503-boot.iso
  44. mirror.centos.org/centos/8/BaseOS/x86_64/os/
  45.  
  46. mcedit /etc/selinux/config
  47. SELINUX=disabled
  48. reboot
  49. service firewalld stop
  50. systemctl stop firewalld
  51. systemctl disable firewalld
  52. dnf -y install ncurses-devel make pcre-devel openssl-devel git gcc autoconf automake git wget mc tar
  53. dnf --enablerepo=powertools install libpcap-devel
  54. dnf --enablerepo=powertools install libedit-devel
  55.  
  56.  
  57.  
  58. cd /usr/src
  59. git clone https://github.com/irontec/sngrep
  60. cd sngrep
  61. ./bootstrap.sh
  62. ./configure
  63. make && make install
  64.  
  65. cd ~
  66. wget https://downloads.asterisk.org/pub/telephony/asterisk/asterisk-18-current.tar.gz
  67. wget http://downloads.asterisk.org/pub/telephony/certified-asterisk/asterisk-certified-16.8-current.tar.gz
  68. tar xfz asterisk-18-current.tar.gz
  69. cd /usr/src/asterisk-18.4.0
  70. contrib/scripts/install_prereq install
  71. contrib/scripts/get_mp3_source.sh
  72. ./configure --libdir=/usr/lib64
  73. make menuselect
  74. make && make install && make samples && make config
  75. ldconfig
  76.  
  77. groupadd asterisk
  78. useradd -r -d /var/lib/asterisk -g asterisk asterisk
  79. usermod -aG audio,dialout asterisk
  80. chown -R asterisk.asterisk /etc/asterisk /var/{lib,log,spool}/asterisk /usr/lib64/asterisk
  81.  
  82. mcedit /etc/sysconfig/asterisk
  83. AST_USER="asterisk"
  84. AST_GROUP="asterisk"
  85.  
  86. mcedit /etc/asterisk/asterisk.conf
  87. runuser = asterisk
  88. rungroup = asterisk
  89.  
  90. systemctl start asterisk
  91. systemctl enable asterisk
  92. systemctl restart asterisk
  93. core show version
  94.  
  95. cd /usr/src
  96. wget https://repo.mysql.com/yum/mysql-connectors-community/el/8/x86_64/mysql-connector-odbc-8.0.24-1.el8.x86_64.rpm
  97. rpm -Uvh mysql-connector-odbc-8.0.24-1.el8.x86_64.rpm
  98.  
  99. https://www.cyberciti.biz/faq/how-to-install-mariadb-on-centos-8/
  100.  
  101. dnf install mariadb-server
  102. systemctl enable mariadb.service
  103. systemctl restart mariadb.service
  104. mysql_secure_installation
  105. 123456!@#$%^Qq
  106. mysql -u root -p
  107.  
  108. CREATE DATABASE asterisk DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
  109. GRANT ALL PRIVILEGES ON asterisk.* TO 'asterisk'@'localhost' IDENTIFIED BY 'sdfJHGVhj5g7jghjv$g';
  110. use asterisk
  111. source /usr/src/asterisk-18.4.0/contrib/realtime/mysql/mysql_cdr.sql
  112. source /usr/src/asterisk-18.4.0/contrib/realtime/mysql/mysql_config.sql
  113.  
  114. mysql -u root -p
  115. 123456!@#$%^Qq
  116. use asterisk
  117. SHOW TABLES;
  118.  
  119.  
  120. #########################################################
  121.  
  122. mcedit /etc/odbcinst.ini
  123.  
  124. [MySQL]
  125. Description=ODBC for MySQL
  126. Driver=/usr/lib64/libmyodbc8a.so
  127. Setup=/usr/lib64/libodbcmyS.so
  128. FileUsage=1
  129.  
  130. ######################################################
  131. mcedit /etc/odbc.ini
  132.  
  133. [MariaDB-asteriskcdrdb]
  134. Description=MySQL connection to Asterisk
  135. Trace = Yes
  136. TraceFile = /tmp/odbc.log
  137. Driver=MySQL
  138. Server=localhost
  139. User=asterisk
  140. Password=sdfJHGVhj5g7jghjv$g
  141. Database=asterisk
  142. Port=3306
  143. Socket=/var/lib/mysql/mysql.sock
  144. Option=3
  145. Charset=utf8
  146.  
  147. #######################################################
  148.  
  149. mcedit /etc/asterisk/res_odbc.conf
  150. [ENV]
  151. [asterisk]
  152. enabled=>yes
  153. dsn=>MariaDB-asteriskcdrdb
  154. ;pooling=>no
  155. limit=>1
  156. pre-connect=>yes
  157. username=>asterisk
  158. password=>sdfJHGVhj5g7jghjv$g
  159.  
  160. #####################################################
  161. isql MariaDB-asteriskcdrdb
  162. #####################################################
  163. mcedit /etc/asterisk/cdr_adaptive_odbc.conf
  164.  
  165. [asterisk]
  166. connection=asterisk
  167. table=cdr
  168. loguniqueid=yes
  169. usegmtime=no
  170. alias start => calldate
  171. alias realdst => realdst
  172. alias remoteip => remoteip
  173. alias start => calldate
  174. alias hangupcause => hangupcause
  175. alias peerip => peerip
  176. alias recvip => recvip
  177. alias fromuri => fromuri
  178. alias useragent => useragent
  179. alias filename => filename
  180.  
  181. #################################################
  182.  
  183. mcedit /etc/asterisk/cel_odbc.conf
  184. [cel]
  185. connection=asterisk
  186. loguniqueid=yes
  187. table=cel
  188.  
  189. ###############################################
  190.  
  191. mcedit /etc/asterisk/cdr_odbc.conf
  192. [global]
  193. dsn=asterisk
  194. loguniqueid=yes
  195. dispositionstring=yes
  196. table=cdr
  197. usegmtime=no
  198. hrtime=yes
  199. newcdrcolumns=yes
  200. username=asterisk
  201. password=sdfJHGVhj5g7jghjv$g
  202.  
  203. #########################################
  204. odbcinst -q -d
  205.  
  206. mcedit /etc/asterisk/extconfig.conf
  207.  
  208. iaxusers => odbc,asterisk
  209. iaxpeers => odbc,asterisk
  210. sippeers => odbc,asterisk
  211. sipregs => odbc,asterisk ; (avoid sipregs if possible, e.g. by using a view)
  212. ps_endpoints => odbc,asterisk
  213. ps_auths => odbc,asterisk
  214. ps_aors => odbc,asterisk
  215. ps_domain_aliases => odbc,asterisk
  216. ps_endpoint_id_ips => odbc,asterisk
  217. ps_outbound_publishes => odbc,asterisk
  218. ps_inbound_publications = odbc,asterisk
  219. ps_asterisk_publications = odbc,asterisk
  220. ;voicemail => odbc,asterisk
  221. extensions => odbc,asterisk
  222. meetme => mysql,general
  223. queues => odbc,asterisk
  224. queue_members => odbc,asterisk
  225. queue_rules => odbc,asterisk
  226. acls => odbc,asterisk
  227. ;musiconhold => mysql,general
  228. ;musiconhold_entry => mysql,general
  229. ;queue_log => mysql,general
  230.  
  231. #######################################################
  232. #######################################################
  233. mysql -u root -p
  234. 123456!@#$%^Qq
  235. use asterisk
  236.  
  237.  
  238. INSERT INTO ps_aors (id, max_contacts) VALUES (103, 1);
  239. INSERT INTO ps_aors (id, max_contacts) VALUES (104, 1);
  240. INSERT INTO ps_auths (id, auth_type, password, username) VALUES (103, 'userpass', 'dkls45jmj86778t#5b', 103);
  241. INSERT INTO ps_auths (id, auth_type, password, username) VALUES (104, 'userpass', 'dkls45jmj86778t#5b', 104);
  242. INSERT INTO ps_endpoints (id, transport, aors, auth, context, disallow, allow, direct_media) VALUES (103, 'transport-udp', '103', '103', 'from-internal', 'all', 'alaw', 'no');
  243. INSERT INTO ps_endpoints (id, transport, aors, auth, context, disallow, allow, direct_media) VALUES (104, 'transport-udp', '104', '104', 'from-internal', 'all', 'alaw', 'no');
  244.  
  245. ctrl+c выйти
  246.  
  247. pjsip show endpoints
  248.  
  249.  
  250.  
  251. mcedit /etc/asterisk/pjsip.conf
  252. [transport-udp]
  253. type=transport
  254. protocol=udp
  255. bind=0.0.0.0
  256.  
  257. /////unidentified_request_count=5
  258. /////unidentified_request_period=5
  259. /////unidentified_request_prune_interval=30
  260.  
  261.  
  262.  
  263. ################################################################
  264. mcedit /etc/asterisk/sorcery.conf
  265. [res_pjsip]
  266. endpoint=realtime,ps_endpoints
  267. auth=realtime,ps_auths
  268. aor=realtime,ps_aors
  269. ;domain_alias=realtime,ps_domain_aliases
  270.  
  271. [res_pjsip_endpoint_identifier_ip]
  272. identify=realtime,ps_endpoint_id_ips
  273. *********************************************************************
  274. asterisk -rvvvvvvvvvvvvvvvvvv
  275. odbc show all
  276. *****************************************************************
  277. https://www.digitalocean.com/community/tutorials/how-to-install-the-apache-web-server-on-centos-8-quickstart-ru
  278.  
  279. dnf install httpd
  280. systemctl start httpd
  281. systemctl enable httpd
  282.  
  283. yum install -y wget php php-pdo php-pecl-zip php-json php-common php-fpm php-mbstring php-cli php-mysqlnd php-xml php-json php-mbstring
  284.  
  285. cd /usr/src
  286. wget https://files.phpmyadmin.net/phpMyAdmin/5.1.0/phpMyAdmin-5.1.0-all-languages.tar.gz
  287. tar -zxvf phpMyAdmin-5.1.0-all-languages.tar.gz
  288. mv phpMyAdmin-5.1.0-all-languages/ /usr/share/phpMyAdmin
  289. cp -pr /usr/share/phpMyAdmin/config.sample.inc.php /usr/share/phpMyAdmin/config.inc.php
  290.  
  291. mcedit /usr/share/phpMyAdmin/config.inc.php
  292. $cfg['blowfish_secret'] = 'bo95yavJ;Vcas,1PzSlxyFwtyMJ}WmG98-6'; /* YOU MUST FILL IN THIS FOR COOKIE AUTH! */
  293.  
  294. #######################################################################
  295. mcedit /etc/httpd/conf.d/phpMyAdmin.conf
  296.  
  297. Alias /phpMyAdmin /usr/share/phpMyAdmin
  298. Alias /phpmyadmin /usr/share/phpMyAdmin
  299.  
  300. <Directory /usr/share/phpMyAdmin/>
  301. AddDefaultCharset UTF-8
  302.  
  303. <IfModule mod_authz_core.c>
  304. # Apache 2.4
  305. <RequireAny>
  306. Require all granted
  307. </RequireAny>
  308. </IfModule>
  309. <IfModule !mod_authz_core.c>
  310. # Apache 2.2
  311. Order Deny,Allow
  312. Deny from All
  313. Allow from 127.0.0.1
  314. Allow from ::1
  315. </IfModule>
  316. </Directory>
  317.  
  318. <Directory /usr/share/phpMyAdmin/setup/>
  319. <IfModule mod_authz_core.c>
  320. # Apache 2.4
  321. <RequireAny>
  322. Require all granted
  323. </RequireAny>
  324. </IfModule>
  325. <IfModule !mod_authz_core.c>
  326. # Apache 2.2
  327. Order Deny,Allow
  328. Deny from All
  329. Allow from 127.0.0.1
  330. Allow from ::1
  331. </IfModule>
  332. </Directory>
  333.  
  334. #############################################################
  335. mkdir /usr/share/phpMyAdmin/tmp
  336. chmod 777 /usr/share/phpMyAdmin/tmp
  337. chown -R apache:apache /usr/share/phpMyAdmin
  338. systemctl restart httpd
  339.  
  340.  
  341. Composer detected issues in your platform: Your Composer dependencies require the following PHP extensions to be installed: xml
  342. dnf install php-xml
  343.  
  344. ########################################################################
  345.  
  346.  
  347.  
  348.  
  349.  
  350.  
  351.  
  352.  
  353.  
  354.  
  355.  
  356.  
  357.  
  358.  
  359.  
  360.  
  361.  
  362.  
  363.  
  364.  
  365.  
  366.  
  367.  
  368.  
  369.  
  370.  
  371.  
  372.  
  373.  
  374.  
  375.  
  376.  
  377.  
  378.  
  379.  
  380.  
  381.  
  382.  
  383.  
  384.  
  385.  
  386.  
  387.  
  388.  
  389.  
  390.  
  391.  
  392.  
  393.  
  394.  
  395.  
  396.  
  397.  
  398.  
  399.  
  400.  
  401.  
  402.  
  403.  
  404.  
  405.  
  406.  
  407.  
  408.  
  409.  
  410.  
  411.  
  412.  
  413.  
  414.  
  415.  
  416.  
  417.  
  418.  
  419.  
  420.  
  421.  
  422.  
  423.  
  424.  
  425.  
  426.  
  427. ]
  428.  
  429.  
  430.  
  431.  
  432.  
  433.  
  434.  
  435.  
  436.  
  437.  
  438.  
  439.  
  440.  
  441.  
  442.  
  443.  
  444. mcedit /etc/asterisk/manager.conf
  445. Для включения Asterisk AMI откроем файл /etc/asterisk/manager.conf в текстовом редакторе и укажем параметры:
  446.  
  447. [general]
  448. enabled = yes
  449. port = 5038
  450. bindaddr = 0.0.0.0
  451. timestampevents = yes
  452. displayconnects = yes
  453. allowmultiplelogin = yes
  454. webenabled = no
  455.  
  456. #include "manager.d/*.conf"
  457. Теперь создадим файл настроек для первого пользователя:
  458. mkdir /etc/asterisk/manager.d
  459. mcedit /etc/asterisk/manager.d/admin.conf
  460. chown asterisk:asterisk /etc/asterisk/manager.d/admin.conf
  461. И добавим в него:
  462.  
  463. [admin]
  464. secret = IXNFO
  465. deny = 0.0.0.0/0.0.0.0
  466. permit = 127.0.0.1/255.255.255.0
  467. permit = 192.168.2.2/255.255.255.255
  468. permit = 192.168.5.5/255.255.255.255
  469. read = system,call,log,verbose,command,agent,user,config,dtmf,reporting,cdr,dialplan,originate
  470. write = system,call,log,verbose,command,agent,user,config,dtmf,reporting,cdr,dialplan,originate
  471. #####################################################################################################
  472. # cd /var/www/html
  473. # git clone https://github.com/zheltovanton/asteriskgui.git
  474. # chown asterisk. /var/www/html/asteriskgui -R
  475. mcedit /var/www/html/asteriskgui/db/config.php
  476. mcedit /etc/httpd/conf.d/asteriskgui.conf
  477. <Directory /var/www/html/asteriskgui/>
  478. AddDefaultCharset UTF-8
  479.  
  480. <IfModule mod_authz_core.c>
  481. # Apache 2.4
  482. <RequireAny>
  483. Require all granted
  484. </RequireAny>
  485. </IfModule>
  486. <IfModule !mod_authz_core.c>
  487. # Apache 2.2
  488. Order Deny,Allow
  489. Deny from All
  490. Allow from 127.0.0.1
  491. Allow from ::1
  492. </IfModule>
  493. </Directory>
  494.  
  495.  
  496.  
  497.  
  498.  
  499.  
  500.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement