<?xml version="1.0" encoding="UTF-8"?>
<!-- generator="FeedCreator 1.8" -->
<?xml-stylesheet href="https://wiki.felixc.at/lib/exe/css.php?s=feed" type="text/css"?>
<rdf:RDF
    xmlns="http://purl.org/rss/1.0/"
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
    xmlns:dc="http://purl.org/dc/elements/1.1/">
    <channel rdf:about="https://wiki.felixc.at/feed.php">
        <title>Felix&#039;s Wiki</title>
        <description></description>
        <link>https://wiki.felixc.at/</link>
        <image rdf:resource="https://wiki.felixc.at/_media/wiki:dokuwiki.svg" />
       <dc:date>2026-04-17T18:03:49+00:00</dc:date>
        <items>
            <rdf:Seq>
                <rdf:li rdf:resource="https://wiki.felixc.at/aboutme?rev=1483599420&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.felixc.at/badvpn?rev=1483670327&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.felixc.at/dnsmasq?rev=1483596283&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.felixc.at/dropquest2012?rev=1483599392&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.felixc.at/fcitx?rev=1483689824&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.felixc.at/felixyan_badges?rev=1483601963&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.felixc.at/felixyan_boinc?rev=1483602046&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.felixc.at/felixyan_osu?rev=1483599987&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.felixc.at/felixyan_privatetrackers?rev=1737216107&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.felixc.at/felixyan?rev=1483599429&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.felixc.at/iptables_packetflow?rev=1483598938&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.felixc.at/knowledgebase?rev=1483598114&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.felixc.at/linux_network_ppp?rev=1483598344&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.felixc.at/linux_network?rev=1541608460&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.felixc.at/linux_risc-v?rev=1743068457&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.felixc.at/linux_security?rev=1715526981&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.felixc.at/linux?rev=1715621910&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.felixc.at/locale?rev=1483596166&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.felixc.at/mariadb?rev=1483597849&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.felixc.at/mongodb?rev=1483688832&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.felixc.at/msmtp?rev=1483670890&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.felixc.at/mysql?rev=1483597881&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.felixc.at/nat?rev=1483597267&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.felixc.at/nginx_ssl?rev=1483596646&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.felixc.at/nginx?rev=1483596476&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.felixc.at/openvpn?rev=1483597197&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.felixc.at/percona?rev=1566705685&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.felixc.at/php-fpm?rev=1483596908&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.felixc.at/php-uwsgi?rev=1483671007&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.felixc.at/php?rev=1483597903&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.felixc.at/pidgin?rev=1483598804&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.felixc.at/portforwarding?rev=1483598584&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.felixc.at/pythonchallenge?rev=1483599304&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.felixc.at/regex.alf.nu?rev=1483599227&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.felixc.at/sidebar?rev=1764543356&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.felixc.at/ssh?rev=1525484674&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.felixc.at/start?rev=1715527257&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.felixc.at/vb6_recipes?rev=1483599168&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.felixc.at/xorg?rev=1483598767&amp;do=diff"/>
            </rdf:Seq>
        </items>
    </channel>
    <image rdf:about="https://wiki.felixc.at/_media/wiki:dokuwiki.svg">
        <title>Felix's Wiki</title>
        <link>https://wiki.felixc.at/</link>
        <url>https://wiki.felixc.at/_media/wiki:dokuwiki.svg</url>
    </image>
    <item rdf:about="https://wiki.felixc.at/aboutme?rev=1483599420&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2017-01-05T06:57:00+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>aboutme</title>
        <link>https://wiki.felixc.at/aboutme?rev=1483599420&amp;do=diff</link>
        <description>FelixYan</description>
    </item>
    <item rdf:about="https://wiki.felixc.at/badvpn?rev=1483670327&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2017-01-06T02:38:47+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>badvpn</title>
        <link>https://wiki.felixc.at/badvpn?rev=1483670327&amp;do=diff</link>
        <description>Supervisor Conf with Docker


cat &gt; /etc/supervisor/conf.d/badvpn-udpgw.conf &lt;&lt;EOF
[program:badvpn-udpgw]
command = /usr/bin/docker run --rm --name badvpn-udpgw --net=host felixonmars/archlinux badvpn-udpgw --listen-addr 127.0.0.1:7300
EOF
supervisorctl update</description>
    </item>
    <item rdf:about="https://wiki.felixc.at/dnsmasq?rev=1483596283&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2017-01-05T06:04:43+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dnsmasq</title>
        <link>https://wiki.felixc.at/dnsmasq?rev=1483596283&amp;do=diff</link>
        <description>DNS Server


no-resolv
no-poll
conf-dir=/etc/dnsmasq.d
server=8.8.4.4
server=8.8.8.8


DHCP Server


dhcp-range=192.168.0.100,192.168.0.200,12h
dhcp-option=option:router,192.168.0.1
dhcp-option=option:dns-server,192.168.0.1


DHCP Whitelist


dhcp-ignore=net:!whitelist
dhcp-host=&lt;MAC-ADDRESS&gt;,net:whitelist</description>
    </item>
    <item rdf:about="https://wiki.felixc.at/dropquest2012?rev=1483599392&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2017-01-05T06:56:32+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dropquest2012</title>
        <link>https://wiki.felixc.at/dropquest2012?rev=1483599392&amp;do=diff</link>
        <description>1. 64529


from scipy.optimize import fsolve
from math import sin,cos

def f(x):
    a = float(x[0])
    b = float(x[1])
    c = float(x[2])
    d = float(x[3])
    e = float(x[4])
    return [
        a*b-24,
        2*d-b,
        d+e-a-c,
        a+b+c+d+e-26,
        b+c-e,
    ]

result = fsolve(f, [1,1,1,1,1])

print result
print f(result)</description>
    </item>
    <item rdf:about="https://wiki.felixc.at/fcitx?rev=1483689824&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2017-01-06T08:03:44+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>fcitx</title>
        <link>https://wiki.felixc.at/fcitx?rev=1483689824&amp;do=diff</link>
        <description>Use regular session dbus


FCITX_NO_PRIVATE_DBUS=1</description>
    </item>
    <item rdf:about="https://wiki.felixc.at/felixyan_badges?rev=1483601963&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2017-01-05T07:39:23+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>felixyan_badges</title>
        <link>https://wiki.felixc.at/felixyan_badges?rev=1483601963&amp;do=diff</link>
        <description>&lt;https://www.openhub.net/accounts/230215?ref=Detailed&gt;

[Stack Overflow]
[Stack Exchange]

[BOINC]

[HE IPv6]</description>
    </item>
    <item rdf:about="https://wiki.felixc.at/felixyan_boinc?rev=1483602046&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2017-01-05T07:40:46+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>felixyan_boinc</title>
        <link>https://wiki.felixc.at/felixyan_boinc?rev=1483602046&amp;do=diff</link>
        <description>[BOINC]

[BOINC] [BOINC]</description>
    </item>
    <item rdf:about="https://wiki.felixc.at/felixyan_osu?rev=1483599987&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2017-01-05T07:06:27+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>felixyan_osu</title>
        <link>https://wiki.felixc.at/felixyan_osu?rev=1483599987&amp;do=diff</link>
        <description>&lt;https://osu.ppy.sh/u/762884&gt;

[OSU!]</description>
    </item>
    <item rdf:about="https://wiki.felixc.at/felixyan_privatetrackers?rev=1737216107&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-01-18T16:01:47+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>felixyan_privatetrackers</title>
        <link>https://wiki.felixc.at/felixyan_privatetrackers?rev=1737216107&amp;do=diff</link>
        <description>U2

CMCT

TTG

皇后

葡萄

HDCity

Redacted

LzTr

HDBits

IPT

TorrentLeech

KeepFRDS

Jpopsuki

BakaBT

HD-Torrents

animebytes

HDSky

JoyHD

HDR

BYRBT

TLFBits

DIC

Inactive

OurDisc

TCCF

HDChina

M-Team

Dead

CHD

六维空间

PianoSheets

HDWinG

SeeHD

What.cd

HDArea

神站

mutracker

清影PT

点击扑通

G.

Waffles.ch

麦田PT

AsianDVDClub

天天高清

CCFBits</description>
    </item>
    <item rdf:about="https://wiki.felixc.at/felixyan?rev=1483599429&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2017-01-05T06:57:09+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>felixyan</title>
        <link>https://wiki.felixc.at/felixyan?rev=1483599429&amp;do=diff</link>
        <description>sidebar</description>
    </item>
    <item rdf:about="https://wiki.felixc.at/iptables_packetflow?rev=1483598938&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2017-01-05T06:48:58+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>iptables_packetflow</title>
        <link>https://wiki.felixc.at/iptables_packetflow?rev=1483598938&amp;do=diff</link>
        <description></description>
    </item>
    <item rdf:about="https://wiki.felixc.at/knowledgebase?rev=1483598114&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2017-01-05T06:35:14+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>knowledgebase</title>
        <link>https://wiki.felixc.at/knowledgebase?rev=1483598114&amp;do=diff</link>
        <description>start</description>
    </item>
    <item rdf:about="https://wiki.felixc.at/linux_network_ppp?rev=1483598344&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2017-01-05T06:39:04+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>linux_network_ppp</title>
        <link>https://wiki.felixc.at/linux_network_ppp?rev=1483598344&amp;do=diff</link>
        <description>/etc/ppp/ip-up.d/01-iprule.sh


ip rule add from $4 lookup $1
ip route add table $1 default dev $1


/etc/ppp/ip-up.d/02-route.sh


ip route add default via $5 || true


Fix MTU


iptables -A FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu</description>
    </item>
    <item rdf:about="https://wiki.felixc.at/linux_network?rev=1541608460&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-11-07T16:34:20+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>linux_network</title>
        <link>https://wiki.felixc.at/linux_network?rev=1541608460&amp;do=diff</link>
        <description>IPv6 Tunnelbroker with systemd-networkd


# cat &gt; /etc/systemd/network/he-tunnel.netdev &lt;&lt; EOF
[Match]

[NetDev]
Name=he-ipv6
Kind=sit
MTUBytes=1480

[Tunnel]
Local=&lt;your_ip_address&gt;
Remote=&lt;tunnelbroker_endpoint&gt;
TTL=255
EOF

# cat &gt; /etc/systemd/network/he-tunnel.network &lt;&lt; EOF
[Match]
Name=he-ipv6

[Network]
Address=2001:470:&lt;yourprefix&gt;::2/64
Gateway=2001:470:&lt;yourprefix&gt;::1
EOF

# sed -i &#039;/\[Network\]/aTunnel=he-ipv6&#039; /etc/systemd/network/default.network</description>
    </item>
    <item rdf:about="https://wiki.felixc.at/linux_risc-v?rev=1743068457&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-03-27T09:40:57+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>linux_risc-v</title>
        <link>https://wiki.felixc.at/linux_risc-v?rev=1743068457&amp;do=diff</link>
        <description>Live Replace


cd /
apt install wget zstd

wget http://mirrors.cernet.edu.cn/archriscv/images/archriscv-latest.tar.zst
mkdir oldroot newroot
cd newroot
tar xf ../archriscv-latest.tar.zst

cd ..
mv archriscv-latest.tar.zst bin etc home lib opt root sbin srv tmp usr var oldroot/

cd newroot
LD_LIBRARY_PATH=&quot;$PWD&quot;/lib &quot;$PWD&quot;/lib/ld-linux-riscv64-lp64d.so.1 &quot;$PWD&quot;/usr/bin/mv bin etc home lib opt root sbin srv tmp usr var ../

cd ..
cp -r oldroot/lib/firmware lib/
cp -r oldroot/lib/modules/ lib/

cp …</description>
    </item>
    <item rdf:about="https://wiki.felixc.at/linux_security?rev=1715526981&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-05-12T15:16:21+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>linux_security</title>
        <link>https://wiki.felixc.at/linux_security?rev=1715526981&amp;do=diff</link>
        <description>Reset Root Password

Add this to your (grub&#039;s kernel line or grub2&#039;s linux line) and boot:


init=/bin/bash


Then just use passwd to reset the root password:


passwd


On old systems you may need to remount the filesystem:


mount -o remount,rw /</description>
    </item>
    <item rdf:about="https://wiki.felixc.at/linux?rev=1715621910&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-05-13T17:38:30+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>linux</title>
        <link>https://wiki.felixc.at/linux?rev=1715621910&amp;do=diff</link>
        <description>Create a Swap File


_size=4g
_location=/
fallocate -l $_size $_location/$_size.swap
chmod 600 $_location/$_size.swap
mkswap $_location/$_size.swap
echo &quot;$_location/$_size.swap none swap defaults 0 0&quot; &gt;&gt; /etc/fstab
swapon -a


btrfs:


btrfs filesystem mkswapfile -s $_size $_location/$_size.swap</description>
    </item>
    <item rdf:about="https://wiki.felixc.at/locale?rev=1483596166&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2017-01-05T06:02:46+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>locale</title>
        <link>https://wiki.felixc.at/locale?rev=1483596166&amp;do=diff</link>
        <description>UTF-8 Environment for Ubuntu Server


echo &quot;en_US.UTF-8 UTF-8&quot; &gt; /var/lib/locales/supported.d/local
locale-gen
update-locale LANG=en_US.UTF-8


Note: For some VPS the last command does not work, you have to add this to ~/.bashrc or /etc/bash.bashrc too:</description>
    </item>
    <item rdf:about="https://wiki.felixc.at/mariadb?rev=1483597849&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2017-01-05T06:30:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>mariadb</title>
        <link>https://wiki.felixc.at/mariadb?rev=1483597849&amp;do=diff</link>
        <description>Percona</description>
    </item>
    <item rdf:about="https://wiki.felixc.at/mongodb?rev=1483688832&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2017-01-06T07:47:12+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>mongodb</title>
        <link>https://wiki.felixc.at/mongodb?rev=1483688832&amp;do=diff</link>
        <description>Authentication

Add A User Administrator as Per Recommended by MongoDB


$ mongo
&gt; db = db.getSiblingDB(&#039;admin&#039;)
&gt; db.createUser({user: &quot;username&quot;, pwd: &quot;password&quot;, roles: [&quot;userAdminAnyDatabase&quot;]})


Add A FULL PRIVILEGED User (to unlock full functionality of RockMongo, etc)</description>
    </item>
    <item rdf:about="https://wiki.felixc.at/msmtp?rev=1483670890&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2017-01-06T02:48:10+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>msmtp</title>
        <link>https://wiki.felixc.at/msmtp?rev=1483670890&amp;do=diff</link>
        <description>Sample Configuration


defaults
auth           on
tls            on
tls_trust_file /etc/ssl/certs/ca-certificates.crt
logfile        /etc/msmtp/msmtp.log
aliases        /etc/aliases

account        sendgrid
host           smtp.sendgrid.net
from           noreply@your.domain
port           587
user           apikey
password       your.api.secret

account default : sendgrid</description>
    </item>
    <item rdf:about="https://wiki.felixc.at/mysql?rev=1483597881&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2017-01-05T06:31:21+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>mysql</title>
        <link>https://wiki.felixc.at/mysql?rev=1483597881&amp;do=diff</link>
        <description>Percona</description>
    </item>
    <item rdf:about="https://wiki.felixc.at/nat?rev=1483597267&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2017-01-05T06:21:07+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>nat</title>
        <link>https://wiki.felixc.at/nat?rev=1483597267&amp;do=diff</link>
        <description>Enable IP Forwarding First


sed -i &#039;s/.*net\.ipv4\.ip_forward.*/net.ipv4.ip_forward = 1/&#039; /etc/sysctl.conf
sysctl -p


NAT using iptables

Recommended Way (If IP is static)


iptables -t nat -A POSTROUTING -s 10.0.0.0/8 -j SNAT --to-source &lt;IP&gt;


Another Way (OpenVZ won&#039;t work this way)</description>
    </item>
    <item rdf:about="https://wiki.felixc.at/nginx_ssl?rev=1483596646&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2017-01-05T06:10:46+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>nginx_ssl</title>
        <link>https://wiki.felixc.at/nginx_ssl?rev=1483596646&amp;do=diff</link>
        <description>Make A Self-signed SSL certificate


cd /etc/nginx
openssl req -new -x509 -nodes -out server.crt -keyout server.key
chmod 600 server.key


Global Settings


ssl_protocols TLSv1.2 TLSv1.1 TLSv1;    
ssl_prefer_server_ciphers on;
ssl_ciphers &quot;EECDH+ECDSA+AESGCM EECDH+aRSA+AESGCM EECDH+ECDSA+SHA384 EECDH+ECDSA+SHA256 EECDH+aRSA+SHA384 EECDH+aRSA+SHA256 EECDH+aRSA+RC4 EECDH EDH+aRSA RC4 !aNULL !eNULL !LOW !3DES !MD5 !EXP !PSK !SRP !DSS !RC4&quot;;</description>
    </item>
    <item rdf:about="https://wiki.felixc.at/nginx?rev=1483596476&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2017-01-05T06:07:56+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>nginx</title>
        <link>https://wiki.felixc.at/nginx?rev=1483596476&amp;do=diff</link>
        <description>Installation on Ubuntu Server


apt install -y software-properties-common
add-apt-repository -y ppa:nginx/stable
apt update &amp;&amp; apt install nginx -y


Installation on Debian Server


wget http://www.dotdeb.org/dotdeb.gpg -O - | apt-key add -

tee /etc/apt/sources.list.d/dotdeb.list &lt;&lt; EOF
deb http://mirror.us.leaseweb.net/dotdeb/ wheezy all
deb-src http://mirror.us.leaseweb.net/dotdeb/ wheezy all
EOF

apt update &amp;&amp; apt install nginx -y</description>
    </item>
    <item rdf:about="https://wiki.felixc.at/openvpn?rev=1483597197&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2017-01-05T06:19:57+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>openvpn</title>
        <link>https://wiki.felixc.at/openvpn?rev=1483597197&amp;do=diff</link>
        <description>Installation on Ubuntu Server


apt-get install openvpn


Installation on Debian Server


tee /etc/apt/sources.list.d/backports.list &lt;&lt; EOF
deb http://ftp.us.debian.org/debian wheezy-backports main
EOF
apt-get update; apt-get -t wheezy-backports install openvpn -y</description>
    </item>
    <item rdf:about="https://wiki.felixc.at/percona?rev=1566705685&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2019-08-25T04:01:25+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>percona</title>
        <link>https://wiki.felixc.at/percona?rev=1566705685&amp;do=diff</link>
        <description>Installation on Ubuntu


wget https://repo.percona.com/apt/percona-release_0.1-3.$(lsb_release -sc)_all.deb
dpkg -i percona-release_0.1-3.$(lsb_release -sc)_all.deb
apt-get update
apt-get install percona-server-server-5.7


Create UTF-8 Database and User</description>
    </item>
    <item rdf:about="https://wiki.felixc.at/php-fpm?rev=1483596908&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2017-01-05T06:15:08+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>php-fpm</title>
        <link>https://wiki.felixc.at/php-fpm?rev=1483596908&amp;do=diff</link>
        <description>PHP-FPM Installation on Ubuntu Server


apt-get install software-properties-common

add-apt-repository ppa:nginx/stable
add-apt-repository ppa:ondrej/php

apt-get update
apt-get install nginx

apt-get install php5.6-cgi php5.6-mysql php5.6-fpm php5.6-curl php5.6-gd php5.6-imap php5.6-mbstring php5.6-mcrypt php5.6-pspell php5.6-recode php5.6-sqlite php5.6-tidy php5.6-xmlrpc php5.6-xsl</description>
    </item>
    <item rdf:about="https://wiki.felixc.at/php-uwsgi?rev=1483671007&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2017-01-06T02:50:07+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>php-uwsgi</title>
        <link>https://wiki.felixc.at/php-uwsgi?rev=1483671007&amp;do=diff</link>
        <description>Supervisor Conf


cat &gt; /etc/supervisor/conf.d/phpenv.conf &lt;&lt;EOF
[program:phpenv]
command = /usr/bin/docker run --rm --name phpenv -v /etc/php:/etc/php -v /etc/msmtp:/etc/msmtp -v /var/run/mysqld:/run/mysqld -v /var/www:/var/www --net=host felixonmars/archlinux uwsgi -s 127.0.0.1:3030 -b 32768 --plugin php -M -p 40 --cheaper 4 --uid 33 --gid 33 --php-sapi-name=apache --disable-logging
stopsignal = QUIT
EOF</description>
    </item>
    <item rdf:about="https://wiki.felixc.at/php?rev=1483597903&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2017-01-05T06:31:43+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>php</title>
        <link>https://wiki.felixc.at/php?rev=1483597903&amp;do=diff</link>
        <description>PHP-FPM</description>
    </item>
    <item rdf:about="https://wiki.felixc.at/pidgin?rev=1483598804&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2017-01-05T06:46:44+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>pidgin</title>
        <link>https://wiki.felixc.at/pidgin?rev=1483598804&amp;do=diff</link>
        <description>Debugging Pidgin

Ignore SIGPIPE used by XMPP plugin


handle SIGPIPE nostop noprint pass


References:

	*  &lt;http://ahlamnote.blogspot.com/2006/12/gdb-ignore-sigpipe.html&gt;</description>
    </item>
    <item rdf:about="https://wiki.felixc.at/portforwarding?rev=1483598584&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2017-01-05T06:43:04+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>portforwarding</title>
        <link>https://wiki.felixc.at/portforwarding?rev=1483598584&amp;do=diff</link>
        <description>Port forwarding using iptables


iptables -t nat -A PREROUTING -p tcp -m tcp --dport &lt;port&gt; -j DNAT --to-destination &lt;host&gt;:&lt;port&gt;</description>
    </item>
    <item rdf:about="https://wiki.felixc.at/pythonchallenge?rev=1483599304&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2017-01-05T06:55:04+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>pythonchallenge</title>
        <link>https://wiki.felixc.at/pythonchallenge?rev=1483599304&amp;do=diff</link>
        <description>&lt;http://www.pythonchallenge.com/&gt;

0:

	*  Change url from 0 to 1
	*  print 2**38 and put the result to url again

1:


s = &#039;g fmnc wms bgblr rpylqjyrc gr zw fylb. rfyrq ufyr amknsrcpq ypc dmp. bmgle gr gl zw fylb gq glcddgagclr ylb rfyr\&#039;q ufw rfgq rcvr gq qm jmle. sqgle qrpgle.kyicrpylq() gq pcamkkclbcb. lmu ynnjw ml rfc spj.&#039;
frm = &#039;&#039;.join([chr(c) for c in range(ord(&#039;a&#039;),ord(&#039;z&#039;) + 1)])
to  = frm[2:] + &#039;ab&#039;
print s.translate(string.maketrans(frm, to))</description>
    </item>
    <item rdf:about="https://wiki.felixc.at/regex.alf.nu?rev=1483599227&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2017-01-05T06:53:47+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>regex.alf.nu</title>
        <link>https://wiki.felixc.at/regex.alf.nu?rev=1483599227&amp;do=diff</link>
        <description>&lt;http://regex.alf.nu/&gt;

Plain strings


foo (207 points)


Anchors


k$ (208 points)


Ranges


^[a-f]+$ (202 points)


Backrefs


(.{3}).*\1 (200 points)


Abba


^(?!.*(.)(.)\2\1) (193 points)


A man, a plan


^(.)(.).*?\2\1$ (175 points)


Prime


^(?!(..+)(\1)+$) (284 points)</description>
    </item>
    <item rdf:about="https://wiki.felixc.at/sidebar?rev=1764543356&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-11-30T22:55:56+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>sidebar</title>
        <link>https://wiki.felixc.at/sidebar?rev=1764543356&amp;do=diff</link>
        <description>About Me

Felix Yan (@felixonmars) is a cat. Meow~

	*  Mastodon
	*  Blog
	*  GitHub
	*  X(Twitter)
	*  Steam
	*  Facebook
	*  AUR
	*  Launchpad
	*  LinkedIn

Some badges:

&lt;https://www.openhub.net/accounts/230215?ref=Detailed&gt;

[Stack Overflow]

	*  My Badges
	*  My BOINC
	*  My osu!</description>
    </item>
    <item rdf:about="https://wiki.felixc.at/ssh?rev=1525484674&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-05-05T01:44:34+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>ssh</title>
        <link>https://wiki.felixc.at/ssh?rev=1525484674&amp;do=diff</link>
        <description>Trust host key without /dev/tty


ssh -o StrictHostKeyChecking=no &lt;username&gt;@&lt;server&gt;


SSHGuard


iptables -A INPUT -m multiport -p tcp --destination-ports 22 -j sshguard
iptables-save &gt; /etc/iptables/iptables.rules


SSH Tunnel

Create New Tunnel Account</description>
    </item>
    <item rdf:about="https://wiki.felixc.at/start?rev=1715527257&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-05-12T15:20:57+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>start</title>
        <link>https://wiki.felixc.at/start?rev=1715527257&amp;do=diff</link>
        <description>General

	* SSH
	* Linux/Security
	* Linux/RISC-V
	* Linux (Miscellaneous)

Networking

	* PortForwarding
	* NAT
	* Dnsmasq
	* Linux/Network
	* Linux/Network/PPP

Web Server

	* Nginx
	* Nginx/SSL

Databases

	* Percona

Email

	* MSMTP

Materials

	* IPTables/PacketFlow

Miscellaneous

	* regex.alf.nu
	* PythonChallenge
	* Dropquest2012

Old

	* PHP-FPM
	* Locale
	* OpenVPN
	* BadVPN
	* VB6/Recipes
	* Pidgin
	* Fcitx
	* Xorg
	* MongoDB
	* PHP-uWSGI</description>
    </item>
    <item rdf:about="https://wiki.felixc.at/vb6_recipes?rev=1483599168&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2017-01-05T06:52:48+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>vb6_recipes</title>
        <link>https://wiki.felixc.at/vb6_recipes?rev=1483599168&amp;do=diff</link>
        <description>Hand Cursor (For Windows &lt;= XP)

API:


Private Declare Function SetCursor Lib &quot;user32&quot; (ByVal hCursor As Long) As Long


Add to `MouseMove`:


If Button = 0 Then SetCursor 65581


Move Window By Object

API:


Private Declare Function ReleaseCapture Lib &quot;user32&quot; () As Long
Private Declare Function SendMessage Lib &quot;user32&quot; Alias &quot;SendMessageA&quot; (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long
Const WM_SYSCOMMAND = &amp;HA1
Const SC_MOVE = 2</description>
    </item>
    <item rdf:about="https://wiki.felixc.at/xorg?rev=1483598767&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2017-01-05T06:46:07+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>xorg</title>
        <link>https://wiki.felixc.at/xorg?rev=1483598767&amp;do=diff</link>
        <description>Enable Mouse Wheel Emulation Automagically for ANY Mouse

Edit the following section of `/etc/X11/xorg.conf.d/10-evdev.conf`


Section &quot;InputClass&quot;
        Identifier &quot;evdev pointer catchall&quot;
        MatchIsPointer &quot;on&quot;
        MatchDevicePath &quot;/dev/input/event*&quot;
        Driver &quot;evdev&quot;
        Option      &quot;EmulateWheel&quot;      &quot;true&quot;
        Option      &quot;EmulateWheelButton&quot;    &quot;2&quot;
        Option      &quot;XAxisMapping&quot;      &quot;6 7&quot;
        Option      &quot;YAxisMapping&quot;      &quot;4 5&quot;
EndSection</description>
    </item>
</rdf:RDF>
