Polycom Application not found error

I’ve just bricked one of my polycom ip330 phones when i decided to format the filesystem and forgot that i didnt have a provisioning server. All i wanted to do is reset the phone and get the webinterface working again. This is not something you can do from the phone interface but only with a provisioning server.

Good thing there is a way to get it working again.

Lees verder

Setting up cacti on debian 8.6.0 and adding weathermap.

I’m assuming you already have a running debian system,  i won’t go into explaining how to install debian this time.

First we update the sytem and install apache2, php5, mysql and mysql-server.

apt-get install apache2 php5 mysql-client mysql-server

You will be asked to change the password for the root mysql user, remember this 😉

now install the php5-myql plugin, snmp, unzip, rrd tools and snmp tools

apt-get install php5-mysql php5-snmp rrdtool snmp snmpd unzip

now change directories to the /var/www/html folder and download the latest cacti version, in my case it’s http://www.cacti.net/downloads/cacti-0.8.8h.tar.gz

wget http://www.cacti.net/downloads/cacti-0.8.8h.tar.gz

unpack the file using tar xzvf cacti-0.8.8h.tar.gz and move the folder to cacti with mv cacti-0.8.8h cacti

now, go into the cacti folder and create the database

mysqladmin –user=root -p create cacti

import the database

mysql –user=root -p cacti < cacti.sql

Create the database user and password

mysql –user=root -p mysql
GRANT ALL ON cacti.* TO CHANGETHISUSER@localhost IDENTIFIED BY ‘CHANGETHISPASSWORD’;
flush privileges;
quit;

change the username and password in your config file, nano -w include/config.php

now make sure the rights are set correctly with chown -R www-data rra/ log/

add the crontab in /etc/crontab

*/5 * * * * www-data php /var/www/html/cacti/poller.php > /dev/null 2>&1

Restart apache2 and mysql

service apache2 restart
service mysql restart

now point your browser at http://ipaddress/cacti

you should be seeing the install screen for cacti, everything should be green and in the end you can login using admin/admin and change the password afterwards.

Now, after that we can add the weathermap plugin, i like this plugin because it makes it really easy to see where your network is congested. For example, check out archive.org’s weathermap here https://monitor.archive.org/weathermap/weathermap.html

The releases for the network weathermap are available on github here https://github.com/howardjones/network-weathermap/releases/

for me the last one available is 0.98, download the file to the cacti/plugins folder

wget https://github.com/howardjones/network-weathermap/releases/download/version-0.98/php-weathermap-0.98.zip

and unzip file file using unzip php-weathermap-0.98.zip

change the rights to www-data using chown -R www-data weathermap

go to cacti in your favorite browser and click plugin management, you should see weathermap there. click on the blue arrow and then the green one to enable the plugin. Done!

Change password the first time you login to RDP

Since server 2008 Microsoft introduced higher security on RDP sessions with NLA. If you have a company that never logs in to the domain controller using a pc and policy dictates that people should change passwords at first login this is impossible.

however, you can fix this by going to the collection, edit the properties and select Security.

Disable ‘Allow connections only from computers running Remote Desktop with Network Level Authentication’
Save and now you’re done!

Updating openssl on directadmin for Heartbleed

Updating openSSL for the new Heartbleed exploit.

[code]

cd /usr/src
wget http://www.openssl.org/source/openssl-1.0.1g.tar.gz
tar -xvzf openssl-1.0.1g.tar.gz
cd openssl-1.0.1g

./config –prefix=/usr no-threads shared
make
make test
make install

After updating openSSL, we need to update DirectAdmin
cd /usr/local/direcctadmin/custombuild
./build clean
./build update
./build apache
./build php d
./build exim
./build dovecot

[/code]

MAILSCANNER + POSTFIX PART 2

Dus, de vorige keer hadden we het over baruwa en het installeren daarvan. Dat is natuurlijk een makkie. Nu moeten we het volgende deel namelijk het installeren van mailscanner en instellen hiervan.
Het plan hiervan is het opzetten van een simpel te gebruiken spamfilter welke voor meerdere domeinen werkt zonder teveel issues te zorgen.
Als eerste gaan we Postfix installeren en geen exim, postfix is weliswaar iets wat ikzelf fijner vind werken en daarom verkies ik dat boven exim.
apt-get install postfix
nu wordt exim gelijk weggehaald en postfix erop gezet.

Nu gaan we Mailscanner aanpassen, deze verwacht dat we nog Exim gebruiken maar dat willen we niet. Dus aanpassen!
nano -w /etc/MailScanner/MailScanner.conf
Zoek nu naar Run As User = Debian-exim en pas deze aan naar postfix. Doe dit ook voor Run As Group.
Nu de incoming dir en de Outgoing dir. Deze staan nu naar Exim en moeten dus ook aangepast worden.
Incoming Queue Dir = /var/spool/postfix/hold
Bij Outgoing Queue Dir = /var/spool/exim4_outgoing/input pas je deze aan naar Outgoing Queue Dir = /var/spool/postfix/incoming.
Hierna nog MTA aanpassen naar Postfix en klaar.
Pas nu /etc/default/mailscanner aan, uncomment run_mailscanner=1 en start mailscanner. Mailscanner logt standaard naar /var/log/mail.log
Mailscanner is klaar.

Terug naar Postfix, voor postfix moeten we 3 dingen nog doen, dit zijn transport, relay en header_check.
Voeg aan main.cf de volgende lines toe:

relay_domains = /etc/postfix/relay
transport_maps = hash:/etc/postfix/transport
header_checks = regexp:/etc/postfix/header_checks

Als eerste passen we header_checks aan. Hierin plaats je het volgende: /^Received:/ HOLD .
De overige 2 zijn voor het werkelijk versturen van mail. In de transport rule komt het volgende te staan:

domein.tld smtp:mailserver.domein.tld

Dit zegt: ik ga transport doen voor het domein domein.tld en ik verstuur dit naar de mailserver.domein.tld via SMTP. Nu de relay_domains nog. Zonder dit file gaat postfix de mail niet eens accepteren. Dus aanpassen 🙂 nano -w relay_domains en zet daar alleen het domein in. Zonder extra subdomeinen.

domein.tld

Hierna zowel baruwa als mailscanner en Postfix herstarten en testen. Testen doen we met telnet.

telnet “spamfilter” 25
helo x
mail from: mail@hacktheplanet.nl
rcpt to: ontvanger@hacktheplanet.nl
data
subject: test van htp.nl

dit is een test zodat we weten of de mailserver werkt.

.

Waarbij je “spamfilter” moet aanpassen naar het ip of hostname van je zojuist geinstalleerde spamfilter.
Mocht je hier verder nog vragen over hebben, gooi het in de comments of via twitter!

SETTING UP ELASTIX ON A SHARED HOSTING PLATFORM WITH FIREWALL

Setting up Elastix on a shared hosting platform like ours is not that different from any other installation. The only key difference is that we host clients on it and that security + monitoring are KEY!

first agenda point, defaulting the config so everone can do this.
We want to have this system secure, so first we will use the intergrated update tool:

yum update
yum upgrade
yum update elastix-* -y
yum update elastix- -y
yum update elastix -y
reboot

after rebooting your system should be up to date.
Next, we start securing the box. I prefer to use fail2ban for this
Install fail2ban, if not installed yet using yum install fail2ban

nano -w /etc/asterisk/sip_general_custom.conf
alwaysauthreject=yes
srvlookup=yes
allowguest=yes
useragent=Something

Now fail2ban, we need to create a file

nano -w /etc/fail2ban/filter.d/asterisk.conf
and add the following lines to it.

[Definition]

#_daemon = asterisk

# Option: failregex
# Notes.: regex to match the password failures messages in the logfile. The
# host must be matched by a group named “host”. The tag “” can
# be used for standard IP/hostname matching and is only an alias for
# (?:::f{4,6}:)?(?P\S+)
# Values: TEXT
#

failregex = NOTICE.* .*: Registration from ‘.*’ failed for ‘:.*’ – Wrong password
NOTICE.* .*: Registration from ‘.*’ failed for ‘:.*’ – No matching peer found
NOTICE.* .*: Registration from ‘.*’ failed for ‘:.*’ – Username/auth name mismatch
NOTICE.* .*: Registration from ‘.*’ failed for ‘:.*’ – Device does not match ACL
NOTICE.* failed to authenticate as ‘.*’$
NOTICE.* .*: No registration for peer ‘.*’ (from )
NOTICE.* .*: Host failed MD5 authentication for ‘.*’ (.*)
VERBOSE.* logger.c: — .*IP/-.* Playing ‘ss-noservice’ (language ‘.*’)

# Option: ignoreregex
# Notes.: regex to ignore. If this regex matches, the line is ignored.
# Values: TEXT
#
ignoreregex =

Edit the

nano -w /etc/fail2ban/jail.conf
file and add the next lines to the bottom:

[asterisk-iptables]

enabled = true
filter = asterisk
action = iptables-allports[name=ASTERISK, protocol=all]
sendmail-whois[name=ASTERISK, dest=root, sender=fail2ban@example.org]
logpath = /var/log/asterisk/full
maxretry = 3
bantime = 600

Check the config with

chkconfig fail2ban
on and start fail2ban with

/etc/init.d/fail2ban start
Thats it for now.

BARUWA ANTISPAM FILTERING

Momenteel gebruiken we een betaalde, semiwerkende appliance voor het spamfiltering. Mijn baas, welke graag houdt van een uitdaging voor ons, heeft besloten dat we over gaan op Baruwa.

Baruwa is een opensource antispam/antivirus systeem, het systeem bestaat uit Postfix, clamav en spamassasin. De webinterface (voor de baas ;)) is AJAX en de backend draait SQL. Het mooie is dat baruwa ook geclusterd kan worden zodat een volledig exchange platform erachter kan worden gezet zonder problemen.

Als basis pak ik zoals altijd ubuntu 12.10, even updaten:

apt-get update && apt-get upgrade
So far, so good, altijd makkelijk.

apt-get install rabbitmq-server
RabbitMQ is de messaging service tussen het frontend en de server. Zodra je clustert zal Rabbit de loadbalancing en clustering bijhouden.

rabbitmqctl add_user baruwa wachtwoordopgeven
rabbitmqctl add_vhost baruwa
rabbitmqctl set_permissions -p baruwa baruwa “.*” “.*” “.*”
Onze servers staan achter firewalls en worden hierdoor afgeschermd. Hang je nou je baruwa server direct aan het internet, zorg er dan voor dat de rabbitmq port niet vanaf andere machines dan je eigen systemen benaderd kan worden.

Nu, om het leven een stuk makkelijker te maken heeft baruwa zijn eigen APT server draaien, altijd een pluspunt als je installs moet doen.

wget -O – http://apt.baruwa.org/baruwa-apt-keys.gpg | apt-key add –
Hiermee laad je de juiste gpg key in voor de apt source, de apt source is http://apt.baruwa.org/. Nu nog de juiste line voor onze ubuntu install.

deb http://apt.baruwa.org/ubuntu quantal main
Doordat we gebruik maken van de apt sources van baruwa is het opeens een stuk makkelijker geworden om de install te starten.

apt-get update
apt-get install baruwa
Veel makkelijker kan haast niet! dependancies worden automatisch ingeladen en de installatie start. Hierbij wordt apache, mysql, mailscanner en baruwa geinstalleerd.
De interactieve installer doet ook nog:

apache virtualhost name
database host
database admin user
database admin password
database user
database password
database name
rabbitmq host
rabbitmq vhost
rabbitmq user
rabbitmq password
baruwa admin user
baruwa admin password
baruwa admin email
Volgende stap is het laden van de database gegevens. Ook dit is vrij simpel in baruwa:

baruwa-admin syncdb –noinput
for name in $(echo “accounts messages lists reports status fixups config”); do
baruwa-admin migrate $name;
done
Nog een baruwa admin user toevoegen voor beheren:

baruwa-admin createsuperuser
Done, baruwa is nu geinstalleerd. Volgende post zal ik mailscanner uitleggen en instellen.