GNU/Linux >> Linux の 問題 >  >> Ubuntu

Ubuntu 20.04にRadicaleCalendar(CalDAVおよびCardDAV)をインストールする方法

Radicaleは、無料のオープンソースCalDAV(カレンダー、やることリスト)およびCardDav(連絡先)サーバーです。小型で軽量(CalDAVおよびCardDav)サーバーアプリケーションでありながら、パワフルですぐに使用できることを目指しています。 Radicaleを使用すると、CalDAV、CardDAV、およびHTTPSを介してカレンダーと連絡先リストを共有できます。そして最も重要なことは、TLS接続と認証によって安全にできることです。また、gnome-calendar、evolution、Mozilla thunderbird、DAVx(Android用)など、多くのCalDAVおよびCardDAVクライアントで動作します。

Radicaleにはシンプルな構成が付属しており、構成とインストールが簡単です。 RadicaleはPythonで記述されており、Linux、BSD、macOS、Windowsなどのオペレーティングシステムで動作します。

このチュートリアルでは、Ubuntu20.04にRadicaleをインストールして構成する方法を学習します。

前提条件
  • Ubuntu20.04。パッケージとリポジトリが更新されていることを確認します。
  • rootユーザーまたはroot権限を持つユーザー。これは、新しいパッケージのインストールとシステム構成の編集に使用されます。

PasslibとBcryptライブラリのインストール

最初に、radicaleインストール用のいくつかのパッケージ依存関係をインストールします。 python-pip、python-passlibモジュールをインストールしてから、PyPI(pythonリポジトリ)からpythonbcryptモジュールをインストールします。

1.次のaptコマンドを実行して、python-pipおよびpython-passlibモジュールをUbuntuシステムにインストールします。

sudo apt install python3-pip python3-passlib

' Yと入力します 'を押して'Enter 'これらのパッケージをすべてインストールします。

2.インストールが完了したら、Pythonbcryptモジュールをインストールするために以下のpipコマンドを実行します。

sudo pip3 install bcrypt

これで、次の出力が表示されます。

Radicaleのインストールと構成

デフォルトでは、radicaleパッケージはUbuntuリポジトリで入手できます。

1.以下のaptコマンドを実行して、Ubuntuシステムにradicaleをインストールします。

sudo apt install radicale

' Yと入力します 'を押して'Enter 'ラジカルパッケージをインストールします。

2.インストールが完了したら、' / etc / radiole / configで利用できるデフォルトのradicale構成を編集します。 '。

以下のnanoコマンドを使用してラジカル構成を編集します。

sudo nano /etc/radicale/config

3.[サーバー]で セクションで、次の構成を使用してデフォルト構成を変更します。

[server]

host = 127.0.0.1:5232
max_connections = 20
max_content_length = 100000000
timout = 30

ラジカルサーバーは、Apache Webサーバーをリバースプロキシとして前面に配置するため、ローカルIPアドレスでのみ実行されます。

4.次に、SSL暗号化はApacheリバースプロキシを介して行われるため、SSL構成について以下のようにコメントします。

# SSL flag, enable HTTPS protocol
#ssl = False

# SSL certificate path
#certificate = /etc/ssl/certs/ssl-cert-snakeoil.pem

# SSL private key
#key = /etc/ssl/private/ssl-cert-snakeoil.key

5.その後、'[auth]'に移動します セクションを作成し、デフォルトの構成を次のように変更します。

[auth]
type = htpasswd
htpasswd_filename = /etc/radicale/users
htpasswd_encryption = bcrypt

使用している認証タイプは'htpasswd '強力な暗号化を使用'bcrypt '、およびユーザーのリストは' / etc / radiole / users に保存されます 'ファイル。

6.次に、下部の構成に'[storage]が表示されます。 ' セクション。ラジカルストレージバックエンドを有効にするには、以下のように構成を変更します。

[storage]
type = multifilysystem
filesystem_folder = /var/lib/radicale/collections
filesystem_locking = True

ラジカルのデフォルトのストレージバックエンドは「multifilesystem」であり、すべてのユーザーのデータは「/ var / lib / radiole/collections」ディレクトリで利用できます。

次に、' Ctrl + xを押します。 'と入力して'y' 、次に' Enterを押します 'ボタンを押して保存して終了します。

ラジカルのユーザーを生成

この段階で、ラジカルの構成が完了します。そして今のところ、radicaleの新しいユーザーとパスワードを作成します。これは、「htpasswd」コマンド(「apache2-utils」パッケージの一部)を使用して生成できます。

1.以下のaptコマンドを実行して、' apache2-utilsをインストールします。 'パッケージ。

sudo apt install apache2-utils

' Yと入力します 'を押して'Enter 'インストールを続行します。

2.次に、以下のhtpasswdコマンドを実行して、新しいユーザー(この例ではユーザー'johndoe')とパスワードを生成します。

sudo htpasswd -B -c /etc/radicale/users johndoe

次に、ユーザー' johndoeのパスワードを入力して繰り返します。 '。

知っておくべき重要なオプション:

  • -Bオプション -これにより、デフォルトの「md5」ではなく、強力な暗号化「bcrypt」が強制的に使用されます。
  • -cオプション -作成するパスワードファイル。ユーザー名とパスワードはそのファイルで利用できます。

別のユーザーを追加するには、一番上でコマンドを実行し、ユーザー名を自分のものに変更します。

必要に応じて、生成されたパスワードファイル' / etc / radiole / usersを確認します。 '以下のようにcatコマンドを使用します。

cat /etc/radicale/users

3.ユーザーとパスワードのファイルを生成したら、起動時にラジカルサービスが自動的に開始されるようにします。

sudo systemctl enable radicale

4.次に、ラジカルサービスを開始し、次のコマンドを実行してサービスステータスを確認します。

sudo systemctl start radicale
sudo systemctl status radicale

ラジカルサービスがアクティブで実行中の場合、以下のような出力が表示されます。それ以外の場合は、ログメッセージの下部にラジカルサービスのステータスが「失敗」と表示されます。

ApacheをRadicaleのリバースプロキシとしてセットアップする

この段階で、Apacheをラジカルのリバースプロキシとしてインストールおよび構成します。

1.以下のaptコマンドを実行してApacheパッケージをインストールします。

sudo apt install apache2

ここで「Y」と入力します 'を押して'Enter 'インストールを続行します。

2.インストールが完了したら、次のコマンドを実行してApacheのプロキシモジュールを有効にし、mod_sslモジュールを有効にします。

sudo a2enmod proxy proxy_ajp proxy_http rewrite deflate headers proxy_balancer proxy_connect proxy_html ssl

3.次に、作業ディレクトリを「 / etc / apache2 / sites-available」に変更します。 'そして新しい仮想ホスト構成を作成します'radiole.conf '。

cd /etc/apache2/sites-available/
sudo nano radicale.conf

次の構成をコピーして貼り付け、ドメイン名を自分のものに変更してください。

<VirtualHost *:80>
        
    ServerName cal.domain-name.io
    ServerAdmin [email protected]

    ErrorLog ${APACHE_LOG_DIR}/cal-dmain-name.io.error.log
    CustomLog ${APACHE_LOG_DIR}/cal-dmain-name.io.access.log combined

    ProxyRequests Off
    <Proxy *>
        Order deny,allow
        Allow from all
    </Proxy>

    RewriteEngine On
    RewriteRule ^/radicale$ /radicale/ [R,L]

    <Location "/radicale/">
        AuthType     Basic
        AuthName     "Radicale - Password Required"
        AuthUserFile "/etc/radicale/users"
        Require      valid-user

        ProxyPass        http://localhost:5232/ retry=0
        ProxyPassReverse http://localhost:5232/
        RequestHeader    set X-Script-Name /radicale
        RequestHeader    set X-Remote-User expr=%{REMOTE_USER}
    </Location>

    <Location />
        Order allow,deny
        Allow from all
    </Location>

</VirtualHost>

' Ctrl + x を押して、構成を保存します 'と入力して'y '、次に' Enter '。

この構成を使用すると、ラジカルは、ドメイン名のルートパスではなく、ドメインパス「domain.com/radicale」で利用できるようになります。

4.次に、次のコマンドを実行して、仮想ホスト構成'radicale.conf'をアクティブ化します。 。

sudo a2ensite radicale.conf

5.その後、Apache構成を確認し、エラーがないことを確認してから、Apacheサービスを再起動して、新しい仮想ホスト構成を適用します。

sudo apachectl configtest
sudo systemctl restart apache2

Apacheの構成が正しい場合は、「 Syntax OK」というメッセージが表示されます。 'apachectl'コマンドを実行した後。そして、以下はあなたが得る同様の出力です。

SSLLetsencryptを生成

この段階では、SSLLetsencryptを使用してラジカルインストールを保護します。

1.次のコマンドを実行して、certbotおよびcertbot-apacheプラグインをインストールします。

sudo apt install certbot python-certbot-apache

2.インストールが完了したら、以下のcertbotコマンドを使用して、radicaleドメイン名の新しいSSLLetsencrtyptを生成します。

sudo certbot --apache -d domain-name.io -d www.domain-name.io

そして、以下のいくつかの質問があります。

  • メールアドレス:SSL証明書の有効期限が切れると、このメールが通知されます。
  • Letsencrypt TOS(利用規約):「 A」と入力します '同意します。
  • EFFとのメールの共有:「 N」を選択できます 'いいえ。
  • HTTPをHTTPSに自動的にリダイレクトします:番号 '2'を選択します 自動リダイレクトを有効にします。

プロセスが完了すると、SSL証明書が「/etc/letsencrypt/live/domain.com」ディレクトリで利用可能になっていることがわかります。また、Apache仮想ホストは、letsencryptからの追加構成で変更されました。

インストールの確認

Webブラウザーを開き、アドレスバーにラジカルURLインストールを入力します。

https://cal.domain-name.io/radicale/

ここで、Apache基本認証のユーザーとパスワードの入力を求められます。

ユーザーとパスワードを入力し、[ログイン]をクリックします 'ボタン。

そして、以下のようにRadicaleログインページが表示されます。

Radicaleのユーザーとパスワードを入力し、[次へ]をクリックします 'ボタン。

ログインしたら、リンクをクリックします'新しい名簿またはカレンダーを作成する '。

タイトル、説明、タイプ、色を自分で変更し、[作成]をクリックします 'ボタン。

これで、以下のようにラジカルユーザーダッシュボードにリダイレクトされます。

結論

おめでとう!これで、Ubuntu20.04サーバーにRadicaleが正常にインストールされました。次の段階では、コンピューターまたはスマートフォンのAndroidからCalDAV / CardDAVクライアントを使用して、新しいラジカルサーバーに安全に接続できます。


Ubuntu
  1. Ubuntu18.04および20.04にNode.jsとNPMをインストールする方法

  2. Ubuntu18.04または20.04にPHP7.4および8.0をインストールする方法

  3. Ubuntu18.04および20.04にAnacondaをインストールする方法

  1. Ubuntu20.04にWineをインストールして使用する方法

  2. Ubuntu18.04にNode.jsとnpmをインストールする方法

  3. Ubuntu18.04にRedisをインストールして構成する方法

  1. Ubuntu18.04にRedmineをインストールして設定する方法

  2. Ubuntu18.04にFFmpegをインストールして使用する方法

  3. Ubuntu18.04にSambaをインストールして設定する方法