GNU/Linux >> Linux の 問題 >  >> Cent OS

CentOS8にGuacamoleリモートデスクトップをインストールして使用する

Apache Guacamoleは、VNC、RDP、SSHなどの標準プロトコルをサポートする無料のオープンソースのWebベースのクライアントレスリモートデスクトップアプリケーションです。これにより、RDP、SSH、またはVNCを介してWebブラウザからLinuxおよびWindowsPCにアクセスできます。クライアントレスなので、プラグインやクライアントソフトウェアをインストールする必要はありません。これは、GuacamoleServerとGuacamoleClientの2つのコンポーネントで構成されています。 Guacamoleサーバーは、リモートPCへの接続に必要なサーバー側およびネイティブコンポーネントを提供しますが、Guacamoleクライアントは、リモートPCへの接続に使用されるHTML5Webアプリケーションです。

このチュートリアルでは、CentOS8にGuacamoleサーバーをインストールする方法を紹介します。

前提条件
  • CentOS8を実行しているサーバー。
  • ルートパスワードがサーバーに設定されます。
はじめに

まず、サーバーにいくつかの必要なパッケージをインストールする必要があります。次のコマンドですべてをインストールできます:

dnf install -y unzip curl make cmake wget gcc zlib-devel compat-openssl10

必要なすべてのパッケージをインストールした後、システムでEPEL、PowerTools、およびDevelリポジトリを有効にする必要があります。次のコマンドで有効にできます:

dnf install epel-release -y
dnf config-manager --set-enabled PowerTools
dnf config-manager --enable Devel

次に、次のコマンドを使用して他の必要なツールをインストールします。

dnf install cairo-devel libuv-devel libjpeg-turbo-devel libjpeg-devel libpng-devel libtool uuid-devel freerdp-devel pango-devel libvncserver-devel pulseaudio-libs-devel openssl-devel libvorbis-devel libwebp-devel libssh2-devel libtheora opus lame-libs

次に、次のコマンドを使用してDevelリポジトリを無効にします。

dnf config-manager --disable Devel

次に、システムでTelnetライブラリをコンパイルする必要があります。

まず、次のコマンドでダウンロードします。

curl -s https://api.github.com/repos/seanmiddleditch/libtelnet/releases/latest | grep browser_download_url | cut -d '"' -f 4 | wget -qi -

ダウンロードしたら、次のコマンドを使用してダウンロードしたファイルを抽出します。

tar -xf libtelnet-*.tar.gz

次に、ディレクトリを抽出ディレクトリに変更し、次のコマンドで構成します。

cd libtelnet-*/
./configure

次に、次のコマンドを使用してシステムにインストールします。

make 
make install

インストールしたら、次のステップに進むことができます。

Javaのインストール

GuacamoleはJavaベースのソフトウェアであるため、サーバーにJavaをインストールする必要があります。インストールされていない場合は、次のコマンドでインストールできます:

dnf install java-11-openjdk-devel

インストールしたら、次のコマンドを使用してJavaのバージョンを確認します。

java -version

次の出力が得られるはずです:

openjdk version "11.0.9.1" 2020-11-04
OpenJDK Runtime Environment (build 11.0.9.1+1-Ubuntu-0ubuntu1.20.04)
OpenJDK 64-Bit Server VM (build 11.0.9.1+1-Ubuntu-0ubuntu1.20.04, mixed mode, sharing)
Tomcatをインストールする

Apache Tomcatは、ワカモレクライアントコンテンツを提供するために使用されます。そのため、サーバーにTomcatをインストールする必要があります。

まず、次のコマンドを使用して、Tomcat用に個別のユーザーとグループを作成します。

groupadd --system tomcat
useradd -d /usr/share/tomcat -r -s /bin/false -g tomcat tomcat

次に、次のコマンドを使用して最新バージョンのTomcatをダウンロードします。

wget https://archive.apache.org/dist/tomcat/tomcat-9/v9.0.43/bin/apache-tomcat-9.0.43.tar.gz

ダウンロードが完了したら、次のコマンドを使用してダウンロードしたファイルを抽出します。

tar -xvf apache-tomcat-9.0.43.tar.gz

次に、Tomcatを/ usr/shareディレクトリに移動します

mv apache-tomcat-9.0.43 /usr/share/tomcat

次に、Tomcatディレクトリに適切な所有権を設定します。

chown -R tomcat:tomcat /usr/share/tomcat/

終了したら、次のステップに進むことができます。

Tomcat用のSystemdサービスファイルを作成する

次に、Tomcat用のsystemdサービスファイルを作成する必要があります。次のコマンドで作成できます:

nano /etc/systemd/system/tomcat.service

次の行を追加します:

[Unit]
Description=Tomcat Server
After=syslog.target network.target

[Service]
Type=forking
User=tomcat
Group=tomcat

Environment=JAVA_HOME=/usr/lib/jvm/jre
Environment='JAVA_OPTS=-Djava.awt.headless=true'
Environment=CATALINA_HOME=/usr/share/tomcat
Environment=CATALINA_BASE=/usr/share/tomcat
Environment=CATALINA_PID=/usr/share/tomcat/temp/tomcat.pid
Environment='CATALINA_OPTS=-Xms512M -Xmx1024M'
ExecStart=/usr/share/tomcat/bin/catalina.sh start
ExecStop=/usr/share/tomcat/bin/catalina.sh stop

[Install]
WantedBy=multi-user.target

ファイルを保存して閉じてから、次のコマンドを使用してsystemdデーモンをリロードします。

systemctl daemon-reload

次に、Tomcatサービスを開始し、システムの再起動時に開始できるようにします。

systemctl start tomcat
systemctl enable tomcat

次のコマンドを使用して、Tomcatのステータスを確認することもできます。

systemctl status tomcat

次の出力が得られるはずです:

? tomcat.service - Tomcat Server
   Loaded: loaded (/etc/systemd/system/tomcat.service; disabled; vendor preset: disabled)
   Active: active (running) since Tue 2021-02-16 09:34:45 EST; 6s ago
  Process: 26546 ExecStart=/usr/share/tomcat/bin/catalina.sh start (code=exited, status=0/SUCCESS)
 Main PID: 26551 (java)
    Tasks: 35 (limit: 12523)
   Memory: 89.7M
   CGroup: /system.slice/tomcat.service
           ??26551 /usr/lib/jvm/jre/bin/java -Djava.util.logging.config.file=/usr/share/tomcat/conf/logging.properties -Djava.util.logging.man>

Feb 16 09:34:45 centos8 systemd[1]: Starting Tomcat Server...
Feb 16 09:34:45 centos8 systemd[1]: Started Tomcat Server.

ApacheGuacamoleをインストールします

まず、次のコマンドを使用して最新バージョンのGuacamoleをダウンロードします。

wget https://downloads.apache.org/guacamole/1.3.0/source/guacamole-server-1.3.0.tar.gz

ダウンロードが完了したら、次のコマンドを使用してダウンロードしたファイルを抽出します。

tar -xvzf guacamole-server-1.3.0.tar.gz

次に、ディレクトリを抽出したディレクトリに変更し、次のコマンドで構成します。

cd guacamole-server-1.3.0
./configure --with-init-dir=/etc/init.d

次に、次のコマンドを使用してシステムにインストールします。

make
make install
ldconfig

次に、次のコマンドを使用してsystemdデーモンをリロードします。

systemctl daemon-reload

次に、Guacamoleサービスを開始し、システムの再起動時に開始できるようにします。

systemctl start guacd
systemctl enable guacd

次のコマンドを使用して、ワカモレのステータスを確認できます。

systemctl status guacd

次の出力が得られるはずです:

? guacd.service - LSB: Guacamole proxy daemon
   Loaded: loaded (/etc/rc.d/init.d/guacd; generated)
   Active: active (running) since Tue 2021-02-16 09:37:15 EST; 4s ago
     Docs: man:systemd-sysv-generator(8)
  Process: 35723 ExecStart=/etc/rc.d/init.d/guacd start (code=exited, status=0/SUCCESS)
    Tasks: 1 (limit: 12523)
   Memory: 12.1M
   CGroup: /system.slice/guacd.service
           ??35726 /usr/local/sbin/guacd -p /var/run/guacd.pid

Feb 16 09:37:15 centos8 systemd[1]: Starting LSB: Guacamole proxy daemon...
Feb 16 09:37:15 centos8 guacd[35723]: Starting guacd: guacd[35724]: INFO:        Guacamole proxy daemon (guacd) version 1.3.0 started
Feb 16 09:37:15 centos8 guacd[35723]: SUCCESS
Feb 16 09:37:15 centos8 guacd[35726]: Listening on host 127.0.0.1, port 4822
Feb 16 09:37:15 centos8 systemd[1]: Started LSB: Guacamole proxy daemon.

Guacamoleクライアントをインストール

次に、Guacamoleのディレクトリを作成し、次のコマンドを使用してGuacamoleクライアントファイルをダウンロードします。

mkdir /etc/guacamole
wget https://downloads.apache.org/guacamole/1.3.0/binary/guacamole-1.3.0.war

ダウンロードしたら、ダウンロードしたファイルを/ etc/guacamoleディレクトリに移動します。

mv guacamole-1.3.0.war /etc/guacamole/guacamole.war

次に、guacamole.warファイルの/ usr / share/tomcatディレクトリへのシンボリックリンクを作成します。

ln -s /etc/guacamole/guacamole.war /usr/share/tomcat/webapps/

次に、次のコマンドを使用してGuacamoleホームディレクトリを設定します。

echo "GUACAMOLE_HOME=/etc/guacamole" | tee -a /etc/default/tomcat

次に、次のコマンドを使用してGuacamole構成ファイルを作成します。

nano /etc/guacamole/guacamole.properties

次の行を追加します:

guacd-hostname: localhost
guacd-port:    4822
user-mapping:    /etc/guacamole/user-mapping.xml
auth-provider:    net.sourceforge.guacamole.net.basic.BasicFileAuthenticationProvider

ファイルを保存して閉じてから、/ etc/guacamoleディレクトリのシンボリックリンクを作成します。

ln -s /etc/guacamole /usr/share/tomcat/.guacamole
ワカモレを設定

次に、Guacamoleユーザーマッピングファイルを作成して、Guacamoleから接続するリモートサーバーを定義する必要があります。

まず、次のコマンドを使用してシークレットパスワードを生成します。

echo -n your-password | openssl md5

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

(stdin)= 0f6e4a1df0cf5ee97c2066953bed21b2

次に、次のコマンドを使用してuser-mapping.xmlファイルを作成します。

nano /etc/guacamole/user-mapping.xml

以下に示すように、リモートウィンドウとLinuxサーバーの詳細を追加します。

<user-mapping>
<authorize 
            username="admin"
            password="0f6e4a1df0cf5ee97c2066953bed21b2"
            encoding="md5">

        <!-- First authorized Remote connection -->
        <connection name="CentOS 8">
            <protocol>ssh</protocol>
            <param name="hostname">69.87.218.51</param>
            <param name="port">22</param>

        </connection>

        <connection name="Windows Server">
            <protocol>rdp</protocol>
            <param name="hostname">15.185.162.149</param>
            <param name="port">3389</param>
            <param name="username">administrator</param>

        </connection>

    </authorize>

</user-mapping>

ファイルを保存して閉じてから、GuacamoleサービスとTomcatサービスの両方を再起動して、変更を適用します。

systemctl restart tomcat guacd

終了したら、次のステップに進むことができます。

ファイアウォールの構成

次に、ポート4822と8080がファイアウォールを通過できるようにする必要があります。次のコマンドで許可できます:

firewall-cmd --permanent --add-port=4822/tcp
firewall-cmd --permanent --add-port=8080/tcp

次に、firewalldをリロードして変更を適用します:

firewall-cmd --reload

GuacamoleWebUIにアクセス

次に、Webブラウザーを開き、URL http:// your-server-ip:8080 / guacamoleを使用してGuacamoleWebインターフェースにアクセスします。 。次の画面が表示されます。

管理者のユーザー名とパスワードを入力し、ログインをクリックします ボタン。次の画面にGuacamoleダッシュボードが表示されます。

上の画面では、WindowsサーバーとLinuxサーバーの両方を見ることができます。クリックすると、リモートサーバーに接続して管理できます。

結論

おめでとう!これで、CentOS 8にGuacamoleサーバーが正常にインストールおよび構成されました。これで、Guacamoleサーバーにリモートサーバーを追加し、Webブラウザーを介してそれらを管理できます。


Cent OS
  1. CentOS7にPHPComposerをインストールして使用する方法

  2. CentOS7にifconfigをインストールして使用する方法

  3. xrdpリモートデスクトップをCentOS6/RHEL6にインストールします

  1. CentOS7にDockerをインストールして使用する方法

  2. CentOS7にDockerComposeをインストールして使用する方法

  3. CentOS7にPHPComposerをインストールして使用する方法

  1. CentOS7にFFmpegをインストールして使用する方法

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

  3. CentOS8にCurlをインストールして使用する方法