Using a Different System?
-
Install TaskServer (taskd) On CentOS 7
-
Install TaskServer (taskd) on Debian 9
-
Install TaskServer (taskd) on Fedora 26
TaskWarrior is an open source time management tool that is an improvement on the Todo.txt
application and it’s clones. Due to the fact that the average person uses multiple devices/platforms in their daily schedule, it is critical to have the ability to have a centralized repository where the data can be accessed and updated from any device. This tutorial will focus on setting up both the server, called TaskServer (taskd), and the client, called TaskWarrior (task), allowing multiple client devices to access and exchange data securely.
It possesses the following features:
- Unlimited Tasks
- Task Prioritizing
- Search/Filtering
- Tagging
- Automatic Syncing
- Automatic Backup
- Full Control & Privacy
- Encrypted Communication
Prerequisites
- A FreeBSD 11/10 server instance.
- A sudo user.
- Domain name pointed to Vultr instance (taskd.example.com)
Step 1: Update the system
Log in as a regular user who has permission to use the sudo
command. Update the system as follows.
sudo freebsd-update fetch || sudo freebsd-update install
Step 2: Install TaskServer (taskd)
-
Use FreeBSD’s ports to install the TaskServer (taskd).
sudo pkg install taskd
Step 3: Configure TaskServer (taskd)
-
In order for TaskServer (taskd) to communicate and sync with TaskWarrior (task) clients, you will need to use the generation scripts found under
/usr/local/share/taskd/
to generate server and client certificates/keys. Elevate to the root user using the command below and change directory to/usr/local/share/taskd/
.sudo su - cd /usr/local/share/taskd/
-
Use the nano program to create a
vars
file in order to generate a self-signed root CA.nano vars
Add the text below to the vars file. Change ORGANIZATION
, CN
, COUNTRY
, STATE
and LOCALITY
to your satisfaction.
BITS=4096
EXPIRATION_DAYS=365
ORGANIZATION="Vultr.com Inc."
CN=taskd.example.com
COUNTRY=US
STATE="New York"
LOCALITY="New York"
-
Generate the self-signed root CA & cert, server key & cert and server revocation list (optional).
./generate.ca ./generate.crl ./generate.server
These commands will create the following files (ca.cert.pem
, ca.key.pem
, server.cert.pem
, server.key.pem
and server.crl.pem
) inside the /usr/local/share/taskd/
directory. In order for TaskServer (taskd) to start, the ownership and permissions on the certificates and keys generated must be modified to allow TaskServer (taskd) to access them.
chown taskd.taskd ca.cert.pem ca.key.pem server.cert.pem server.crl.pem server.key.pem
chmod 400 ca.cert.pem ca.key.pem server.cert.pem server.crl.pem server.key.pem
-
Configure the TaskServer (taskd) daemon configuration file.
export TASKDDATA=/var/db/taskd cd $TASKDDATA ln -s /usr/local/share/taskd/ca.cert.pem . ln -s /usr/local/share/taskd/server.cert.pem . ln -s /usr/local/share/taskd/server.crl.pem . ln -s /usr/local/share/taskd/server.key.pem . taskd init taskd config server 0.0.0.0:53589 taskd config ca.cert $TASKDDATA/ca.cert.pem taskd config server.cert $TASKDDATA/server.cert.pem taskd config server.crl $TASKDDATA/server.crl.pem taskd config server.key $TASKDDATA/server.key.pem taskd config log /var/log/taskd.log taskd config pid.file /var/run/taskd.pid touch /var/log/taskd.log chown -R taskd:taskd /var/db/taskd/ /var/log/taskd.log
-
Enable the TaskServer (taskd) daemon. Edit
/etc/rc.conf
, add the text below to the file and save it.taskd_enable="YES"
-
Start the TaskServer (taskd) daemon.
service taskd start
TaskServer (taskd) is now installed and setup on your FreeBSD 11 instance.
Step 4: Configure TaskWarrior Client Certificate & Key
Refer to the Step 5: Configure TaskWarrior Client Certificate & Key section in the Install TaskServer (taskd) On CentOS 7 tutorial.
If you need additional reading material, refer to the TaskWarrior (task) documentation here for basic usage and other related topics.
Want to contribute?
You could earn up to $300 by adding new articles
Suggest an update
Request an article