CentOS 7 LAMP VPSにSelfoss RSSリーダーをインストールする方法

Selfoss RSSリーダーは、無料でオープンソースの自己ホスト型Webベースの多目的ライブストリーム、マッシュアップ、ニュースフィード(RSS / Atom)リーダー、およびユニバーサルアグリゲーターです。Selfoss RSSリーダーは、OPMLインポート、落ち着いたJSON API、およびそのオープンプラグインシステムを備えており、独自のカスタムデータコネクターを作成することで、デフォルトの機能を簡単に拡張できます。Selfossを使用してライブストリーミングを行い、すべての投稿、ツイート、ポッドキャスト、およびフィードを1か所に集めて、デスクトップまたはモバイルデバイスから簡単にアクセスできます。

このチュートリアルでは、Apache Webサーバー、PHP 7.1、およびMariaDBデータベースを使用して、CentOS 7 LAMP VPSにSelfoss RSSリーダー2.17をインストールします。

前提条件

  • SSHアクセスが可能なクリーンなVultr CentOS 7サーバーインスタンス

ステップ1:Sudoユーザーを追加する

新しいsudoユーザーを追加することから始めます。

まず、次のようにサーバーにログインしますroot

ssh root@YOUR_VULTR_IP_ADDRESS

という新しいユーザーuser1(または任意のユーザー名)を追加します。

useradd user1

次に、user1ユーザーのパスワードを設定します。

passwd user1

プロンプトが表示されたら、安全で覚えやすいパスワードを入力します。

/etc/sudoersファイルをチェックして、sudoersグループが有効になっていることを確認します。

visudo

次のようなセクションを探します。

%wheel        ALL=(ALL)       ALL

この行は、wheelグループのメンバーであるユーザーがsudoコマンドを使用してroot特権を取得できることを示しています。デフォルトではコメント化されていないので、単にファイルを終了できます。

次にuser1wheelグループに追加する必要があります。

usermod -aG wheel user1

user1グループメンバーシップを確認し、usermodコマンドが次のコマンドで機能することを確認できますgroups

groups user1

su次のコマンドを使用して、新しいsudoユーザーuser1アカウントに切り替えます。

su - user1

コマンドプロンプトが更新され、user1アカウントにログインしていることが示されます。これは次のwhoamiコマンドで確認できます。

whoami

次に、sshdサービスを再起動して、ssh作成した新しい非root sudoユーザーアカウントでログインできるようにします。

sudo systemctl restart sshd

user1アカウントを終了します。

exit

rootアカウントを終了します(sshセッションが切断されます):

exit

これでssh、新しい非root sudoユーザーuser1アカウントを使用して、ローカルホストからサーバーインスタンスにアクセスできます。

ssh user1@YOUR_VULTR_IP_ADDRESS

毎回パスワードを入力せずにsudoを実行する場合は/etc/sudoers、次を使用してファイルを再度開きますvisudo

sudo visudo

wheelグループのセクションを編集して、次のようにします。

%wheel        ALL=(ALL)       NOPASSWD: ALL

注: sudoユーザーのパスワード要件を無効にすることはお勧めしませんが、特に長いシステム管理セッション中にサーバー構成をより便利にし、不満を少なくすることができるため、ここに含まれています。セキュリティへの影響が懸念される場合は、管理タスクを完了した後、いつでも構成の変更を元に戻すことができます。

あなたがにログインするたびにroot内からユーザーアカウントsudoユーザーアカウントは、次のいずれかのコマンドを使用することができます。

sudo -i
sudo su -

rootアカウントを終了して、sudoいつでもユーザーアカウントに戻ることができます。

exit

ステップ2:CentOS 7システムを更新する

CentOSサーバーインスタンスにパッケージをインストールする前に、まずシステムを更新します。

root以外のsudoユーザーを使用してサーバーにログインしていることを確認し、次のコマンドを実行します。

sudo yum -y update

ステップ3:Apache Webサーバーをインストールする

Apache Webサーバーをインストールします。

sudo yum -y install httpd

次に、systemctlコマンドを使用して、Apacheを起動し、起動時に自動的に実行できるようにします。

sudo systemctl enable httpd
sudo systemctl start httpd

Apache構成ファイルをチェックして、DocumentRootディレクティブが正しいディレクトリを指していることを確認します。

sudo vi /etc/httpd/conf/httpd.conf 

DocumentRoot設定オプションは、次のようになります。

DocumentRoot "/var/www/html"

では、mod_rewriteApacheモジュールがロードされていることを確認しましょう。これを行うには、Apacheベースモジュール構成ファイルで「mod_rewrite」という用語を検索します。

ファイルを開きます。

sudo vi /etc/httpd/conf.modules.d/00-base.conf

用語を検索しmod_rewriteます。

場合はmod_rewriteApacheモジュールがロードされている、あなたはこのように見ている設定行を見つけます。

LoadModule rewrite_module modules/mod_rewrite.so

上記の行がセミコロンで始まる場合は、セミコロンを削除して、行のコメントを解除してモジュールをロードする必要があります。もちろん、これは他の必要なApacheモジュールにも当てはまります。

mod_rewrite次に、Selfoss RSSリーダーで正しく機能するように、Apacheのデフォルト設定ファイルを編集する必要があります。

ファイルを開きます。

sudo vi /etc/httpd/conf/httpd.conf

次に、で始まるセクションを見つけて<Directory "/var/www/html">、に変更AllowOverride noneAllowOverride Allます。最終結果(すべてのコメントが削除された)は次のようになります。

<Directory "/var/www/html">
    Options Indexes FollowSymLinks
    AllowOverride All
    Require all granted
</Directory>

次に、Apache構成ファイルを保存して閉じます。

このチュートリアルの終わりにApacheを再起動しますが、インストールと構成中にApacheを定期的に再起動するのは確かに良い習慣です。今すぐ実行しましょう。

sudo systemctl restart httpd

手順4:Webファイアウォールのポートを開く

デフォルトでブロックされるため、ここでデフォルトHTTPHTTPSポートを開く必要がありfirewalldます。

ファイアウォールポートを開きます。

sudo firewall-cmd --permanent --add-port=80/tcp
sudo firewall-cmd --permanent --add-port=443/tcp

ファイアウォールをリロードして変更を適用します。

sudo firewall-cmd --reload

successファイアウォール設定コマンドが成功するたびに、端末に単語が表示されます。

HTTPブラウザでサーバーインスタンスのIPアドレスまたはドメインにアクセスすることにより、Apache ポートが開いていることをすばやく確認できます。

http://YOUR_VULTR_IP_ADDRESS/

ブラウザにデフォルトのApache Webページが表示されます。

ステップ5:SELinuxを無効にする(有効な場合)

SELinuxは「Security Enhanced Linux」の略です。これは、ユーザーおよび管理者がアクセス制御をより詳細に制御できるようにするLinuxのセキュリティー強化です。Vultr CentOS 7インスタンスではデフォルトで無効になっていますが、クリーンインストールから開始しておらず、以前に有効になっていた場合に備えて、無効にする手順について説明します。

Selfoss RSSリーダーでのファイル権限の問題を回避するには、SELinuxが無効になっていることを確認する必要があります。

まず、次のsestatusコマンドでSELinuxが有効か無効かを確認します。

sudo sestatus

次のようなSELinux status: disabledメッセージが表示された場合は、無効になっているため、ステップ6に進んでください。他のメッセージが表示された場合は、このセクションを完了する必要があります。

お好みのターミナルエディターでSELinux設定ファイルを開きます。

sudo vi /etc/selinux/config

に変更SELINUX=enforcingしてSELINUX=disabled、ファイルを保存します。

設定変更を適用するには、SELinuxでサーバーの再起動が必要になるため、Vultrコントロールパネルを使用してサーバーを再起動するか、shutdown次のコマンドを使用できます。

sudo shutdown -r now

サーバーが再起動すると、SSHセッションが切断され、'broken pipe'またはについて通知するメッセージが表示される場合があります'Connection closed by remote host'。これは心配する必要はありません。20秒ほど待ってから、SSHで(独自のユーザー名とドメインを使用して)再度ログインします。

ssh user1@YOUR_DOMAIN

または(独自のユーザー名とIPアドレスを使用):

ssh user1@YOUR_VULTR_IP_ADDRESS

再度ログインしたら、sestatus次のコマンドを使用してSELinuxのステータスを再度確認し、適切に無効化されていることを確認する必要があります。

sudo sestatus

と言うメッセージが表示されますSELinux status: disabledSELinux status: enabled(または同様の)メッセージが表示された場合は、上記の手順を繰り返し、サーバーを正しく再起動する必要があります。

ステップ6:PHP 7.1をインストールする

CentOS 7では、PHP 7.1をインストールするために外部リポジトリを追加する必要があるため、次のコマンドを実行します。

sudo rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm

これで、Selfoss RSSリーダーに必要なすべての必要なPHPモジュールとともに、PHP 7.1をインストールできます。

sudo yum -y install php71w php71w-gd php71w-mbstring php71w-mysql php71w-xml php71w-common php71w-pdo php71w-mysqlnd

ステップ7:MariaDB(MySQL)サーバーをインストールする

CentOS 7はデフォルトでMariaDBデータベースサーバーを使用します。これは、強化された完全にオープンソースのコミュニティ開発のMySQLサーバーのドロップイン代替品です。

MariaDBデータベースサーバーをインストールします。

sudo yum -y install mariadb-server

MariaDBサーバーを起動し、起動時に自動的に実行できるようにします。

sudo systemctl enable mariadb
sudo systemctl start mariadb    

MariaDBサーバーのインストールを保護します。

sudo mysql_secure_installation

rootパスワードは、そう簡単にするためにプロンプトが表示されたら、Enterキーを押し、空白になりますrootパスワード。

MariaDB / MySQL rootユーザーを作成するように求められたら、「Y」を選択し(はいの場合)、安全なrootパスワードを入力します。デフォルトの提案が最も安全なオプションであるため、他のすべてのはい/いいえの質問に「Y」と答えてください。

ステップ8:Selfoss RSSリーダーのデータベースを作成する

root次のコマンドを実行して、MariaDB ユーザーとしてMariaDBシェルにログインします。

sudo mysql -u root -p

MariaDBコマンドプロンプトにアクセスするには、プロンプトが表示されたらMariaDB rootパスワードを入力するだけです。

次のクエリを実行して、Selfoss RSSリーダーのMariaDBデータベースとデータベースユーザーを作成します。

CREATE DATABASE selfoss_db CHARACTER SET utf8 COLLATE utf8_general_ci;
CREATE USER 'selfoss_user'@'localhost' IDENTIFIED BY 'UltraSecurePassword';
GRANT ALL PRIVILEGES ON selfoss_db.* TO 'selfoss_user'@'localhost';
FLUSH PRIVILEGES;
EXIT;

必要に応じて、データベース名selfoss_dbとユーザー名selfoss_userを好みに合わせて置き換えることができます。(CentOS 7上のMariaDBのユーザー名のデフォルトの最大長は16文字であることに注意してください)。また、「UltraSecurePassword」を実際に安全なパスワードに置き換えてください。

手順9:Selfoss RSSリーダーファイルをインストールする

現在の作業ディレクトリをデフォルトのWebディレクトリに変更します。

cd /var/www/html/

'No such file or directory'次のようなエラーメッセージが表示される場合は、次のコマンドを試してください。

cd /var/www/ ; sudo mkdir html ; cd html

現在の作業ディレクトリは次のようになります /var/www/html/。これはpwd(印刷作業ディレクトリ)コマンドで確認できます。

pwd

次にwget、Selfoss RSSリーダーのインストールパッケージをダウンロードするために使用します。

sudo wget --content-disposition https://github.com/SSilence/selfoss/archive/2.17.zip

注: Selfoss RSSリーダーのダウンロードページにアクセスして、最新バージョンを必ず確認してください

現在のディレクトリを一覧表示して、ファイルが正常にダウンロードされたことを確認します。

ls -la

すぐにインストールしunzipて、ファイルを解凍できるようにします。

sudo yum -y install unzip

次に、zipアーカイブを解凍します。

sudo unzip selfoss-2.17.zip

すべてのインストールファイルをWebルートディレクトリに移動します。

sudo mv -v selfoss-2.17/* selfoss-2.17/.* /var/www/html 2>/dev/null

権限の問題を回避するために、Webファイルの所有権を変更します。

sudo chown -R apache:apache * ./

Apacheを再起動します。

sudo systemctl restart httpd

ステップ10:Composerをインストールして実行する

Selfoss RSSリーダーを使用composerするには、一部のプラグインをダウンロードする必要があるため、インストールしてみましょうcomposer

sudo yum -y install composer

ここで、webrootディレクトリにいることを確認します。

cd /var/www/html

apacheユーザーを使用してcomposerを実行します。

sudo -u apache composer install

composerキャッシュに書き込めないという警告メッセージが表示されますが、すべて問題なくインストールされるので、あまり気にしないでください。

これで、最後のステップに進む準備ができました。

手順11:Selfoss RSSリーダーのインストールを完了する

  1. 最初に、Selfoss RSSリーダー構成ファイルconfig.iniを正しいデータベース設定で更新する必要があるので、webrootディレクトリにいることを確認し、次の場所にコピーdefaults.iniconfig.iniます。

    sudo cp -iv defaults.ini config.ini
    
  2. 次に、config.ini構成ファイルを開き、次のデータベース値を追加します。

    [globals]
    db_type=mysql
    db_host=localhost
    db_database=selfoss_db
    db_username=selfoss_user
    db_password=UltraSecurePassword
    db_port=3306
    
  3. ここでにパスワードハッシュを追加する必要がありますconfig.iniが、最初にそれを生成する必要があるため、ブラウザで次のURLにアクセスします。

    http://YOUR_VULTR_IP_ADDRESS/password
    

    次に、Passwordフィールドに希望のパスワードを入力して、をクリックしGenerateます。

    結果のハッシュ値をconfig.iniファイルのパスワードオプションにコピーするだけで、パスワードセクションは次のようになります。

    username=admin
    password=b729a37c34ff9648c33d67de3b289b58b7486dd71236343a6c2c275c2cc0477bd1d254eb92248bfa753169547d4bd2e81c2c9e460ba5bba822af1e87722dd12a
    salt=<long string of random chracters>
    

    注: パスワードハッシュは明らかに上記のハッシュとは異なり、別のユーザー名を自由に選択できます。

  4. config.iniファイルから他のすべての未編集オプションを削除して、完全な構成ファイルが次のようになるようにします。

    [globals]
    db_type=mysql
    db_host=localhost
    db_database=db1
    db_username=u1
    db_password=usecpass1
    db_port=3306
    username=admin
    password=b729a37c34ff9648c33d67de3b289b58b7486dd71236343a6c2c275c2cc0477bd1d254eb92248bfa753169547d4bd2e81c2c9e460ba5bba822af1e87722dd12a
    salt=<long string of random chracters>
    

    注: オプションのいずれかを変更する場合は、defaults.ini上記のオプションのリストにオプションを追加するだけです。

    構成ファイルの編集が終了したら、ファイルを保存して終了できます。

  5. これで、ホームページにアクセスしてユーザー名とパスワードを入力することにより、Selfoss RSSリーダーにログインできます。

     http://YOUR_VULTR_IP_ADDRESS/
    
  6. 読者にフィードを自動更新させたい場合(そしてほぼ間違いなくそうする場合)は、crontabを編集する必要があります。

    sudo crontab -e
    

    次の行を追加して、フィードを1時間ごとに更新します。

    0 * * * * apache cd /var/www/html && php cliupdate.php
    

Vultr DNS設定をまだ構成していない場合は、Vultr DNSコントロールパネルを使用して構成できます。

ほとんどの最新のブラウザーは、サイトでSSLが有効になっておらず、SSL証明書が無料で入手できる場合に警告を表示するため、SSLを使用するようにサイトを構成することもお勧めします。

いずれの場合でも、必要に応じて、フィードを追加し、リーダーをさらにカスタマイズすることができます。



Leave a Comment

CentOS 7にApacheをインストールする方法

CentOS 7にApacheをインストールする方法

CentOS 7サーバーにApache 2.4をインストールする方法を説明します。安定したウェブサーバーを構築するための前提条件と手順を解説します。

FreeBSD 11.1にBlacklistdをインストールする方法

FreeBSD 11.1にBlacklistdをインストールする方法

FreeBSD 11.1におけるBlacklistdのインストール方法について詳しく解説します。この方法を通じて、強力なセキュリティ対策を実装できます。

Windows Serverのサーバーマネージャーを使用した複数サーバーの管理

Windows Serverのサーバーマネージャーを使用した複数サーバーの管理

サーバーマネージャーを使用して、Windows Serverの管理が向上します。セキュリティリスクを軽減し、効率的な管理を実現します。

CentOS 7にSeafileサーバーをインストールする方法

CentOS 7にSeafileサーバーをインストールする方法

CentOS 7にSeafileサーバーをインストールする方法。Seafile(コミュニティバージョン)は、ownCloudに似た無料のオープンソースファイル同期および共有ソリューションです。

DebianでSnortを設定する方法

DebianでSnortを設定する方法

Snortは無料のネットワーク侵入検知システムです。最新の方法で、SnortをDebianにインストールし、設定する手順を紹介します。ネットワークのセキュリティを強化しましょう。

CentOS 7にGraylogサーバーをインストールする方法

CentOS 7にGraylogサーバーをインストールする方法

CentOS 7にGraylogサーバーをインストールし、ログ管理を行う方法を学びます。

WindowsでhMailServerを使用してメールサーバーを構築する

WindowsでhMailServerを使用してメールサーバーを構築する

WindowsサーバーでWebサイトを実行している場合、電子メールも受信できるようにするためにhMailServerを使用する方法を解説します。

Ubuntu 19.04にFiveMサーバーをインストールする方法

Ubuntu 19.04にFiveMサーバーをインストールする方法

FiveMサーバーをUbuntu 19.04にインストールするための詳細なガイド。必要条件からインストール、起動、トラブルシューティングまで、すべてのステップを含みます。

WsgiDAVを使用してDebian 10にWebDAVをデプロイする

WsgiDAVを使用してDebian 10にWebDAVをデプロイする

Debian 10にWebDAVをデプロイする方法を学び、WsgiDAVとSSL証明書で安全な接続を実現しましょう。

ヘルスケア2021における人工知能の影響

ヘルスケア2021における人工知能の影響

ヘルスケアにおけるAIは、過去数十年から大きな飛躍を遂げました。したがって、ヘルスケアにおけるAIの未来は、日々成長を続けています。