Cisco 7970 SIP/2.0 401 Unauthorized

I’m getting SIP/2.0 401 Unauthorized error. Using Asterisk 22.7.0, PBX 17.0.19.32 on Ubuntu 24.0 and Cisco IP phone 7970G with SIP firmware version SIP70.9-3-1SR4-1S. Phone boots from TFTP server but then says “Registering” and ends up “Unprovisioned”
CLI>pjsip show endpoints
<— Transmitting SIP response (515 bytes) to UDP:192.168.1.38:50022 —>
SIP/2.0 401 Unauthorized
Via: SIP/2.0/UDP 192.168.1.38:5060;rport=50022;received=192.168.1.38;branch=z9hG4bK7156eece
Call-ID: 001956bd-30b8002f-a58aa27d-b4e84349@192.168.1.38
From: sip:101@192.168.1.39;tag=001956bd30b8003103d496d5-d866c341
To: sip:101@192.168.1.39;tag=z9hG4bK7156eece
CSeq: 147 REGISTER
WWW-Authenticate: Digest realm=“asterisk”,nonce=“1768769484/c28b64957be3f63c99f6044911196d52”,opaque=“51930ad65ce07122”,algorithm=MD5,qop=“auth”
Server: FPBX-17.0.19.32(22.7.0)
Content-Length: 0

Any idea why my Cisco 7970 is not registering with Freepbx?

SEP(MAC).cnf.xml file

<?xml version="1.0" encoding="UTF-8"?> true SIP cisco cisco 0 true 0 2012c tzupdater.jar 000000 Off Disabled false 0 Default CMLocal M/D/YA Central Standard/Daylight Time America/Chicago 129.6.15.30 Unicast Default true Asterisk Asterisk 2000 5060 5061 2427 2428 192.168.1.39 120 true 192.168.1.39 5060 none Cisco 7970
                    <line button="1">
                            <featureID>9</featureID>
                            <featureLabel>101</featureLabel>
                            <proxy>USECALLMANAGER</proxy>
                            <port>5060</port>
                            <name>101</name>
                            <authName>101</authName>
                            <authPassword>NotRealPass</authPassword>
                            <messageWaitingLampPolicy>3</messageWaitingLampPolicy>
                            <messagesNumber>*97</messagesNumber>
                    </line>

            </sipLines>
            <dialTemplate>dialplan.xml</dialTemplate>
    </sipProfile>

    <networkLocale>United_States</networkLocale><networkLocaleInfo><name>United_States</name><uid>64</uid><version>1.0.0.0-1</version></networkLocaleInfo>

401 is not an error; it’s a normal part of the authentication handshake.

Either the Cisco is not being correctly matched against an endpoint (you haven’t provided enough of the log to really see), or you have not provided the correct credentials to the Cisco.

[2026-01-19 02:14:39] NOTICE[3927]: res_pjsip/pjsip_distributor.c:682 log_failed_request: Request ‘REGISTER’ from ‘sip:748@192.168.1.39’ failed for ‘192.168.1.38:52574’ (callid: 001956bd-30b801d1-66f5acb5-c99c4c04@192.168.1.38) - No matching endpoint found after 6 tries in 0.012 ms

Note this isn’t the FreePBX forum, so it is not the place to ask how to do the above through the FreePBX GUI.

Also note that you aren’t providing enough information to give definitive answers, and the user field in the error message doesn’t match that in the logged invite, so is probably not from the same call.

Astrico, I have helped many people in the FreePBX forums to get these older phones to register.

For starters the 7940/7960 etc. don’t even use SEPMAC files they use SIPMAC files, completely different file layout.

You need to factory reset the phones then plug them in an examine /var/log/syslog or /var/log/xferlog on your TFTP server to see what exact filename the phone is attempting to load

The FreePBX GUI cannot provision these phones properly. You must hand-edit provisioning files.

The FreeBSD 17 GUI defaults for chan_pjsip are correct for these phones, also. Any problems you have are entirely in the tftp provisioning files.

If you make a request in the forums there for config files I’ll post them there.