How to set a proxy for curl

Hello,

On my network, all servers must go through a proxy for any outgoing request. Pi-hole relies heavily on curl to load new version of the system and to update the ban lists.

I could load the lists at install time because I had set-up the proxy manually in the shell, but since the system is running, where can I configure Pi-hole and curl to use my proxy for all requests?

I have created the file /root/.curlrc but it is not even read by Pi-hole system. Same thing with /.curlrc

Si how do I define a proxy in Pi-hole?

Thanks in advance,

Olivier

There isn't support for a proxy in Pi-hole, you will have to configure curl or your network settings to handle that.

There isn’t support for a proxy in Pi-hole, you will have to configure curl
or your network settings to handle that.

Thank you.

For curl, I think I have it fixed, a .curlrc file in /root (or in /)
seems to be enough, the update of the gravity files goes through the
proxy.

Now I am left with the automatic check of the latest version of
Pi-Hole each time Pi-Hole is started. It seems it uses git to
load/clone something from github.com
I have installed a .gitconfig file in /root/, /, /var/www/html/admin/,
/var/www/html/admin/.git/, /etc/.pihole, /etc/.pihole/.git/. Either my
.gitconfig file is bogus or I am not targeting right directory (or it
is not using git).

I don't mind configuring the proxy by hand, but I could do with a
little help as to where I should put the configuration.

Thanks in advance,

Olivier

I'm not familiar with adding a proxy to git, but nothing is cloned or fetched through git when checking for updates. The version check is performed by root in a cron job, and uses curl:

Hello.

I’m not familiar with adding a proxy to git, but nothing is cloned or
fetched through git when checking for updates. The version check is
performed by root in a cron job, and uses curl:

Any reason why the curl command get a -q option to disable the use of
curl config file?

I tried to modify updatecheck.sh to remove the -q option on the 3
lines calling curl and, sure enough, everything get proxied properly.

A corollary question, I got nothing installed in root cron when
installing Pi-Hole, should I install the call to
/opt/pi-hole/updatecheck.sh manually?

Thanks in advance,

Olivier

I don't know why that option is added, but you can make an issue on GitHub for it.

The cron job is installed to /etc/cron.d/pihole

This topic was automatically closed 21 days after the last reply. New replies are no longer allowed.