https://gist.github.com/willurd/5720255
Failed and working projects, notes etc.
UPDATE
git pull
make new local branch:
git checkout -b [name]
CHANGES
make changes, then add all:
git add .
commit:
git commit -m "comment"
push changes and create new branch:
git push
TO GET THE LATEST VERSION
git checkout master git pull git checkout [USER] git rebase master
Step 1. Fetch and check out the branch for this merge request
git fetch origin git checkout -b [USER] origin/[USER]
Step 2. Review the changes locally
Step 3. Merge the branch and fix any conflicts that come up
git fetch origin git checkout origin/master git merge --no-ff [USER]
Step 4. Push the result of the merge to GitLab
git push origin master
(In this case [USER] is foxsan. And you are not him.)
Virtualmin is a rock solid control panel for your VPS, it’s simple as that. It’s sometimes not so simple to set it up correctly due to its many options.
I’ve tried my best to make a decent manual that explains how to set up a domain and email in a quick and dirty way. I’m not talking about security and stuff yet. It’s just about setting things up.
I am also assuming your freshly (re)built VPS has a root password set and that you are now ssh-ing into it. If not, do it now.
ifconfig
It’s probably venet0 (that’s venetzero)
apt-get update
apt-get install wget nano curl ca-certificates -y
cd ~
wget http://software.virtualmin.com/gpl/scripts/install.sh
sudo /bin/sh install.sh
@ 1000 MX 10 mail.domainname.tld * 1000 A 0 VPS_IP_ADDRESS @ 1000 A 0 VPS_IP_ADDRESS ftp 1000 A 0 VPS_IP_ADDRESS localhost 1000 A 0 127.0.0.1 mail 1000 A 0 VPS_IP_ADDRESS pop 1000 A 0 VPS_IP_ADDRESS www 1000 A 0 VPS_IP_ADDRESS
Don’t worry about the SPF, domainkey, the acme-challenge and the dmarc yet.
All should be ready now and you should see a few success messages. If not, go fix.
apt-get update
apt-get upgrade -y
apt-get dist-upgrade -y
apt-get autoremove
apt-get autoclean
https://HOSTNAME:10000
Virtualmin is configured to setup DNS zones, but this system is not setup to use itself as a DNS server. Either add 127.0.0.1 to the list of DNS servers, or turn off the BIND feature on the module config page.
Click list of DNS servers and add 127.0.0.1 in the DNS Servers field and press Save. Next, click Apply Configuration. Then, click the Virtualmin on top, click System Settings and then Re-check Configuration.
Your Virtualmin installation is now ready to had domain names etc added.
DOMAINNAME 1000 TXT 0 v=spf1 a mx a:DOMAINNAME.TLD ip4:IPADDRESS1 ip4:IPADDRESS2 ?all
For the acme challenges:
_acme-challenge.mail 1000 TXT 0 RANDOMSTRING_OFCHARACTERS _acme-challenge 1000 TXT 0 RANDOMSTRING_OFCHARACTERS
Error requesting challenges: Error creating new authz :: too many failed authorizations recently: see https://letsencrypt.org/docs/rate-limits/
Now this has been set up, you can poke your DNS settings again! Woo!
Now, clean up the rest in Notepad++:
“v=DKIM1; k=rsa; t=s; p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAq8/I4PwduFS/q” “U4y6pDFNFYf868Z2p+BNw+QRMphZ6YnVt1MWeVtNIXnYvhUtf6jhAX2BZ5gl8R2ILyL9NCkFe8W5cAVR” “/cZkZl6OIc7fdTiLePYNCS3HcVcTiE0Szb3zwDRAZE2XyAqFvNQJuVe/H5tJxlOAu1vhqv3FuZM1viv9” “VfiPQ77oQ9eOmQMZH59+QL/Vw4fnUnui4QhqRaH+iLb1bQdcJqIu1y3M+bgSCmrSu7v40V1G+wmUY13J” “fg41SIvYbuEe+CGjwMjVW0KFC15x3m5ChwM3q68b5gBv0L+JeMG27+DDQ5CSUIZSAJU0XifyeAfTIfRe” “5L+Bec7hQIDAQAB”
VALIDATE and install FAIL2BAN
(sorry, i can’t remember how to proceed this installation since the last edit was two years ago.)
Good luck.
WARNING. As explained on the “About” page that this is a blog based on my notes, whether they fail or not. So proceed at your own risk.
My Zyxel router currently has firmware version 1.00(AAKL.14)C0 and since Zyxel is a good boye, they keep their devices up to date. Like all manufacturers should do IMO.
Good luck.
apt-get update
apt-get upgrade
apt-install git libjson-webtoken-perl libauthen-ntlm-perl libcgi-pm-perl libcrypt-openssl-rsa-perl libdata-uniqid-perl libfile-copy-recursive-perl libio-socket-inet6-perl libio-socket-ssl-perl libio-tee-perl libhtml-parser-perl libjson-webtoken-perl libmail-imapclient-perl libparse-recdescent-perl libmodule-scandeps-perl libreadonly-perl libregexp-common-perl libsys-meminfo-perl libterm-readkey-perl libtest-mockobject-perl libtest-pod-perl libunicode-string-perl liburi-perl libwww-perl libtest-nowarnings-perl libtest-deep-perl libtest-warn-perl make cpanminus
cd /home
git clone https://github.com/imapsync/imapsync.git
cd imapsync
chmod +x imapsync
./imapsync
cpanm File::Tail
cp imapsync /usr/bin/
Done!
Item 10 is to make sure you can use this command anywhere on the server. Have fun!
Probably caused by utilizing the wrong method in an older version, where one had to manually enter the paid amount instead of selecting “mark invoice paid”
Step 1. Check the affected clients and make sure that the actual paid sum is correct, regardless what the “minus” amount says.
Step 2. Make a backup, or find a proper host where you can do an easy roll-back in case you mess up.
Step 3. Open the database of Invoice Ninja and find the “clients” table
Step 4. In the column “Balance” you will see a negative amount. Double-click in that field, enter 0.00 (zero-point-zero-zero) and press enter.
Done
Due to CONTINUOUS database corruptions I was forced to downgrade my unRAID back to 6.6.7 to see if that fixes the corruption issue. It’s really terrible and apparently hard to fix because LimeTech has not fixed the issue yet, not is is acknowledged as an issue.
1. download the following file
https://s3.amazonaws.com/dnld.lime-technology.com/stable/unRAIDServer-6.6.7-x86_64.zip
2. Extract the files on your drive
3. Ditch all extracted files except these:
./bzfirmware ./bzimage ./bzmodules ./bzroot ./bzroot-gui
4. Start an FTP program like Filezilla and go to the /boot/ folder
5. MAKE A BACKUP OF THE FILES MENTIONED AT STEP 3
6. Remove the files from the server and upload the extracted files mentioned in step 3 onto the server.
7. Check the date of the files on the server and make sure it’s 777 and root:root
8. Restart the server and you’re back at 6.6.7
Good luck.