Tinyproxy is a lightweight, free, and open-source proxy solution for the Linux operating system. It is designed for embedded devices where a full-featured HTTP proxy is required, but the system resources for a larger proxy are unavailable. It is easy to install and configure and requires a little amount of space on operating systems. It offers a filtering capability to block or allow a certain domain by creating a blacklist and whitelist.
This post will show you how to install a Tinyproxy on Fedora.
- A server running Fedora 34 on the Atlantic.Net Cloud Platform
- A root password is configured on your server
Step 1 – Create Atlantic.Net Cloud Server
First, log in to your Atlantic.Net Cloud Server. Create a new server, choosing Fedora 34 as the operating system with at least 2GB RAM. Connect to your Cloud Server via SSH and log in using the credentials highlighted at the top of the page.
Once you are logged in to your server, run the following command to update your base system with the latest available packages.
dnf update -y
Step 2 – Install Tinyproxy
By default, the Tinyproxy package is included in the Fedora default repository. You can install it using the following command.
dnf install tinyproxy -y
Once the installation is completed, you can verify the Tinyproxy version using the following command.
Step 3 – Configure Tinyproxy
Next, you will need to edit the Tinyproxy main configuration file and modify some default settings.
Change the following configurations.
Port 8888 Listen your-server-ip LogFile "/var/log/tinyproxy/tinyproxy.log" PidFile "/var/run/tinyproxy/tinyproxy.pid" BasicAuth user password Allow client-machine-ip
Save and close the file, then create a log file for Tinyproxy.
Step 4 – Start Tinyproxy Service
Now, start and enable the Tinyproxy service using the following command.
systemctl start tinyproxy systemctl enable tinyproxy
You can now check the status of Tinyproxy with the following command.
systemctl status tinyproxy
You will see the following output.
● tinyproxy.service - small, efficient HTTP/SSL proxy daemon Loaded: loaded (/usr/lib/systemd/system/tinyproxy.service; disabled; vendor preset: disabled) Active: active (running) since Fri 2023-06-23 22:59:12 EDT; 3s ago Docs: man:tinyproxy(8) Process: 1967 ExecStart=/usr/bin/tinyproxy (code=exited, status=0/SUCCESS) Main PID: 1969 (tinyproxy) Tasks: 11 (limit: 2328) Memory: 4.6M CPU: 23ms CGroup: /system.slice/tinyproxy.service ├─1969 /usr/bin/tinyproxy ├─1970 /usr/bin/tinyproxy ├─1971 /usr/bin/tinyproxy ├─1972 /usr/bin/tinyproxy ├─1973 /usr/bin/tinyproxy ├─1974 /usr/bin/tinyproxy ├─1975 /usr/bin/tinyproxy ├─1976 /usr/bin/tinyproxy ├─1977 /usr/bin/tinyproxy ├─1978 /usr/bin/tinyproxy └─1979 /usr/bin/tinyproxy
By default, Tinyproxy listens on port 8888. You can check it with the following command.
ss -antpl | grep tinyproxy
LISTEN 0 1024 220.127.116.11:8888 0.0.0.0:* users:(("tinyproxy",pid=1979,fd=0),("tinyproxy",pid=1978,fd=0),("tinyproxy",pid=1977,fd=0),("tinyproxy",pid=1976,fd=0),("tinyproxy",pid=1975,fd=0),("tinyproxy",pid=1974,fd=0),("tinyproxy",pid=1973,fd=0),("tinyproxy",pid=1972,fd=0),("tinyproxy",pid=1971,fd=0),("tinyproxy",pid=1970,fd=0),("tinyproxy",pid=1969,fd=0))
Step 5 – Define Proxy Settings on Web Browser
Next, you will need to edit your browser settings and define your proxy server on the client machine. First, open your web browser and open the settings windows.
Scroll down the page and click on Settings. You should see the following screen.
Define your proxy server IP, Port, and click on the OK button to save the changes.
Now, open another tab on your web browser and try to access https://google.com. You will be asked to provide your proxy username and password as shown below.
Provide your username and password and click on the Sign in button. After successful authentication, you can able to access the Google website.
In this tutorial, we have explained how to install Tinyproxy on Fedora. We also showed you how to configure Tinyproxy and verify it from the client machine. You can use Tinyproxy on dedicated server hosting from Atlantic.Net!