{{anchor href="top"}}
Hits : **{{hits}}**
==prosody==
This page is reserved for ((http://prosody.im/ prosody im))
{{ToC from="h2" to="h3"}}
=== USER/GROUP ===
prosody can and must run without root privileges, so create a new user
%%
# groupadd prosody
# useradd prosody -g prosody
%%
== Download ==
Download the below files from the prosody's download area:
%%(bash)
wget -c http://prosody.im/downloads/source/prosody-0.9.6.tar.gz
wget -c http://prosody.im/downloads/source/prosody-0.9.6.tar.gz.asc
%%
The two files are the source code of the prosody and the digital signature of the package.
== Verify ==
Why this step is necessary ?
It is necessary cause with this step you can verify the integrity of the source code and that nobody has manipulate the files on the download area:
%%
[~]# gpg -v --verify prosody-0.9.6.tar.gz.asc prosody-0.9.6.tar.gz
Version: GnuPG v1
gpg: armor header:
gpg: Signature made Wed 15 Oct 2014 12:33:42 PM EEST using RSA key ID 7BDD6BFE
gpg: Can't check signature: No public key
%%
No public key found !
quick searching through pgp.mit.edu we can find the public key of ((https://matthewwild.co.uk/ Mathew Wild))
https://pgp.mit.edu/pks/lookup?search=0x7BDD6BFE
Download his public key from pgp.mit.edu:
%%
[~]# gpg --recv-keys 0x7BDD6BFE --key-server pgp.mit.edu
gpg: "--key-server" not a key ID: skipping
gpg: "pgp.mit.edu" not a key ID: skipping
gpg: requesting key 7BDD6BFE from hkp server keys.gnupg.net
gpg: key 7BDD6BFE: public key "Matthew Wild <me@matthewwild.co.uk>" imported
gpg: no ultimately trusted keys found
gpg: Total number processed: 1
gpg: imported: 1 (RSA: 1)
%%
Now we can verify the source code of prosody:
%%
[~]# gpg -v --verify prosody-0.9.6.tar.gz.asc prosody-0.9.6.tar.gz
Version: GnuPG v1
gpg: armor header:
gpg: Signature made Wed 15 Oct 2014 12:33:42 PM EEST using RSA key ID 7BDD6BFE
gpg: using PGP trust model
gpg: Good signature from "Matthew Wild <me@matthewwild.co.uk>"
gpg: WARNING: This key is not certified with a trusted signature!
gpg: There is no indication that the signature belongs to the owner.
Primary key fingerprint: 32A9 EDDE 3609 931E B98C EAC3 1590 7E8E 7BDD 6BFE
gpg: binary signature, digest algorithm SHA1
%%
We need the "Good signature " message to verify the source code
== Build ==
%%
> tar xf prosody-0.9.6.tar.gz
> cd prosody-0.9.6
> ./configure --prefix=/usr --sysconfdir=/home/prosody/etc/prosody/ --datadir=/home/prosody/var/lib/prosody
> make
> su -
# make install
# chown -R prosody:prosody ~prosody
%%
== Conf ==
The configuration file is based on lua format .
There are two sections:
1. Global Settings
2. Site Settings
Everything you need to conf/setup must be before any virtualhost directive.
You should read this file: **prosody.cfg.lua.dist**
take a look on my conf
%%(html)
admins = { "ADMIN@FOUFOUTOS.GR" }
modules_enabled = {
-- Generally required
"saslauth"; -- Authentication for clients and servers. Recommended if you want to log in.
"tls"; -- Add support for secure TLS on c2s/s2s connections
"dialback"; -- s2s dialback support
"disco"; -- Service discovery
-- Not essential, but recommended
--"compression"; -- Stream compression
-- Nice to have
"version"; -- Replies to server version requests
-- Other specific functionality
"posix"; -- POSIX functionality, sends server to background, enables syslog, etc.
};
allow_registration = false;
-- global SSL
ssl = {
key = "/www/certs/PRIVATE.key";
certificate = "/www/certs/PUPLIC_CERT.pem";
}
authentication = "internal_plain"
authentication = "internal_hashed"
log = {
info = "/home/prosody/var/log/prosody.log"; -- Change 'info' to 'debug' for verbose logging
error = "/home/prosody/var/log/prosody.err";
-- "*syslog"; -- Uncomment this for logging to syslog
-- "*console"; -- Log to the console, useful for debugging with daemonize=false
}
-- posix module
pidfile = "/home/prosody/var/run/prosody.pid"
-- daemonize = false
VirtualHost "FOUFOUTOS.GR"
%%
values you should change are in CAPITALS
== START/STOP ==
%%
# su - prosody
> prosodyctl start
%%
== ADD/REMOVE JID ==
%%
> prosodyctl adduser ADMIN@FOUFOUTOS.GR
Enter new password:
Retype new password:
%%
%%
> prosodyctl deluser ADMIN@FOUFOUTOS.gr
%%
== gtalk ==
if you are using google apps,
you have to login to domain dashboard
and remove your Talk service from your users.
== DNS ==
on your domain:
%%
xmpp IN A 1.2.3.4
_xmpp-client._tcp IN SRV 0 5 5222 xmpp.FOUFOUTOS.gr
_xmpp-server._tcp IN SRV 0 5 5269 xmpp.FOUFOUTOS.gr
%%
https://balaskas.gr/img/gtalk.png