- 1 Getting the Software
- 2 Running repro
- 3 Installing
- 4 Configuring repro using the Web Admin
- 5 Setting Up Admin Account
- 6 Adding Users
- 7 Adding Routes to Gateways
- 8 Configuring SIP user agents to work with repro
- 9 Setting Up Certificates for TLS
- 10 Configuring DNS
- 11 Setting up multiple domains
- 12 Configuring Logging
- 13 Troubleshooting
Getting the Software
Run the executable from the command line. A number of command line options are available. For a summary of options run repro with the help option:
Usage: repro [OPTION...]
-l, --log-type=syslog|cerr|cout where to send logging messages (default: "cout")
-v, --log-level=DEBUG|INFO|WARNING|ALERT specify the default log level (default: "INFO")
-t, --tls-domain=example.com act as a TLS server for specified domain
-x, --mysqlServer=localhost enable MySQL and provide name of server (default: null)
--udp=5060 add UDP transport on specified port (default: 5060)
--tcp=5060 add TCP transport on specified port (default: 5060)
--tls=5061 add TLS transport on specified port (default: 5061)
--dtls=5061 add DTLS transport on specified port (default: 0)
--enable-v6 enable IPV6
--disable-v4 disable IPV4
--disable-auth disable DIGEST challenges
--disable-web-auth disable HTTP challenges
--disable-reg disable registrar
--enable-cert-server run a cert server
-d, --domains=example.com,foo.com specify domains that this proxy is authorative
-c, --cert-path=STRING path for certificates (default: ~/.sipCerts) --reqChainName=STRING name of request chain (default: default)
--http=5080 run HTTP server on specified port (default: 5080)
-?, --help Show this help message
--usage Display brief usage message
Running the proxy server with the default options is fine. If you are troubleshooting, we recommend that you enable DEBUG level logging:
% ./repro -v DEBUG
Installing on Windows
After Getting the Software just run the installation file following the installer instructions.
Installing on Linux OS or Unix-Like Systems
Repro is avaliable both as a RPM build and as a source code.
To install the rpm version run: $ rpm -i <repro_rpm_file>
To install from source code:
- decompress the source code file
- cd into the directory
- run: $ ./configure
- run: $ make install-repro
Configuring repro using the Web Admin
Once repro is running additional configuration are avalible using the WebAdmin pages. The WebAdmin runs on port 5080 by default, or a specific port if you specified it on the command line with the "--http" command-line option.
To view the pages use any Web Browser and open the url: "<repro_address>:<port>" i.e. if you are running repro on your local machine and you are using the default web access port just open: "http://localhost:5080/". To Login for the first time use the initial username: admin and the password "admin".
Setting Up Admin Account
To add users click on the add user page, this page allows you to add users that will be able to use repro. The mandatory fields are the username and the domain. The password is the SIP Digest password File:Repro-addUser.png
Adding Routes to Gateways
Routes are used by repro to send certain requests to a particular location. The static routes use (POSIX-standard) regular expression to match and rewrite SIP URIs. The screenshot shows an example of sending all requests that consist of only digits in the userpart of the SIP URI to a gateway. Note that to match characters that have a special meaning in regular expression (like a "."), you need to escape these. You can also use variable substitution in the rewrite expression. The string inside the first set of parentheses () is referenced in the rewrite string as $1, the second is $2, etc.
Since it is easy to make mistakes entering regular expressions, you can test your static routes in the Show Routes page. Type in a SIP URI, click Test Route. You should see the rewritten URL below.
See Common_rePro_Routes for some commonly used routes and regular expressions used in routes.
Configuring SIP user agents to work with repro
Configure a SIP user agent (softphone or appliance) with the same user information entered for the user in the rePro configuration interface. The address of record (AOR) for the user will be sip:user-name@repro-domain where the user-name part is the value entered on in the User Name field on the USERS -> ADD USER page. The repro-domain part is the valued entered on the CONFIGURE -> DOMAINS page. Note: you can also see the users' AORs listed on the USERS -> SHOW USERS page. The authentication user id that is expected by rePro is the user-name part of the AOR (no @ or domain name). The parameters for your specific user agent may be labeled differently but typically the following information is required:
- User Address of Record
- User Authorization Id
- User Password
The values for these parameters assuming the above examples for domain and user would be as follows:
User Address of Record: sip:email@example.com Proxy: example.com User Authorization Id: alicedoe User Password: 1234
Setting Up Certificates for TLS
Setting up multiple domains
You must add at least one "domain" before you can use the proxy server. The domains are names that the proxy recognizes after the at-sign (@) in the SIP URI. The list of domains is used by the proxy and the registrar to decide if repro is responsible for SIP requests it receives. The WebAdmin also uses the list of domains to make sure users you add are in one of the domains.
For example, if you want the proxy to answer requests for atlanta.com, you need to add atlanta.com to the list of domains. You still need to make sure that you configure DNS so that SIP requests for that domain resolve to repro.
If you don't have a fully qualified domain name, you can use your IP address as a "domain".
(this should be a pointer to the resip docs)