YateSMSC/SMPP
From YateBTS
- This page contains examples, configuration and guidance used by Yate staff to set up YateSMSC as a SMPP server or as a SMPP client.
SMPP server
- To act as a server you must add a listener under the [smpp-server] section.
Without SSL
- In /etc/yate/smsc/ysmpp.conf
; server configuration [smpp-server] enable=yes default-service-type=sms (...) [listenerserver desired-name] enable=yes addr=10.0.0.1 port=2775
With SSL
- To act as a SSL server you must create and install a certificate.
- The sslcontext parameter tells SMPP which certificate to use from those defined in openssl.conf
- To generate a self-signed passwordless certificate:
openssl req -x509 -newkey rsa:4096 -keyout key.pem -out cert.pem -days 365 openssl rsa -in key.pem -out key-bare.pem cat cert.pem key-bare.pem > /etc/yate/smsc/certificate.pem chmod 600 /etc/yate/smsc/certificate.pem
- When asked about Common Name enter yourcompany-smsc01 (or the hostname you wish)
- In /etc/yate/smsc/openssl.conf
[general] [self_signed] domains=yourcompany-smsc01 (or whatever you entered as Common Name in certificate) certificate=certificate.pem
- In /etc/yate/smsc/ysmpp.conf
[listenerserver second-desired-name] addr=10.0.0.1 port=2776 ... sslcontext=self_signed
- Connecting clients authentication using /etc/yate/smsc/regfile.conf
[client1_system_id] password=client1_password [client2_system_id] password=client2_password
SMPP client
To act as a server you must add a client section under the [smpp-client] section.
Without SSL
- In /etc/yate/smsc/ysmpp.conf
; client configuration that can be used with backup_smpp_gw set to system_id from yatesmsc.conf [smpp-client] clients=section-name,other-section,... (...) ;starting section, whose name is 'section-name' [section-name] enabled=true server=10.1.1.1 port=2775 system_id=yatesmsc system_password=myPWD1234!
With SSL
- In /etc/yate/smsc/ysmpp.conf
;starting section, whose name is 'with_ssl' [with_ssl] enabled=true server=10.2.2.2 port=2776 system_id=yatesmsc-tls system_password=myPWD5678! sslmode=true
; system_id: string: Default system id used for authentication. ; Length 1-16. ;system_id=yate ; system_password: string: Default password used for authentication. ; Length 1-9. ;system_password=yate;