GNU/Linux >> Linux の 問題 >  >> Debian

Debianchrootインストールを実行する方法

このチュートリアルでは、特にDebianChroot環境を扱います。 chroot環境内でLinuxシステムを実行すると、システム管理者は、サーバーが危険にさらされた場合の本番サーバーへの影響を減らすことができます。

ルートを変更する ルートディレクトリを現在実行中のすべてのプロセスに変更し、その子をchrootjailに変更します。 chrootされた環境でのさまざまなパッケージのインストールとサーバー構成のテストは、chrootjailを利用するもう1つの便利な方法です。

このチュートリアルでは、DebianLinuxでchrootをセットアップするためのステップバイステップの手順を説明します。この手順は、他のDebianベースのシステムでも機能します。

このチュートリアルでは、次のことを学びます。

  • デブートストラップのインストール方法
  • DebianLinuxでchrootを設定する方法
  • chroot刑務所にSSHで接続する方法

ソフトウェア要件とLinuxコマンドラインの規則
カテゴリ 使用する要件、規則、またはソフトウェアバージョン
システム Debian Linux
ソフトウェア debootstrap
その他 rootまたはsudoを介したLinuxシステムへの特権アクセス コマンド。
コンベンション –指定されたLinuxコマンドは、rootユーザーとして直接、またはsudoを使用して、root権限で実行する必要があります。 コマンド
$ –特定のLinuxコマンドを通常の非特権ユーザーとして実行する必要があります

デブートストラップをインストールする


最初に行う必要があるのは、 debootstrapをインストールすることです。 Debianのパッケージ。このソフトウェアを使用すると、chroot環境を作成できます。次のコマンドを使用して、Debianのパッケージマネージャーでパッケージをインストールします。

$ sudo apt update
$ sudo apt install debootstrap

chroot環境をインストールする

次に、chroot環境をインストールします。以下の手順に従ってセットアップしてください。

  1. まず、chroot環境を配置するディレクトリを作成します。シンプルに保ち、/mnt/chrootを使用します このチュートリアルでは。
    $ sudo mkdir -p /mnt/chroot
    
  2. 新しいchrootディレクトリの準備ができたら、debootstrapを使用してchroot環境内に新しいDebianシステムファイルをインストールします。 debootstrapはコアパッケージをダウンロードしてインストールする必要があるため、インストールには時間がかかる場合があります。
    $ sudo debootstrap stable /mnt/chroot http://deb.debian.org/debian/
    

    ターミナルには多くの出力が表示されますが、「I:ベースシステムが正常にインストールされました」というテキストで終了する必要があります。これは、終了したことを意味します。

  3. 最後に、chrootディレクトリ内にマウントして、ホストprocシステムをchroot環境に接続します。これにより、chrootがホストシステムのハードウェアにアクセスできるようになります。
    $ sudo mount -t proc proc /mnt/chroot/proc
    $ sudo mount -t devpts devpts /mnt/chroot/dev/pts
    

ChrootDebian設定

これで、chrootにログインして、いくつかの基本的な構成を行う準備ができました。ホスト環境とchroot環境の間の混乱を避けるために、rootのPS1変数をchroot# のシェルプロンプトに変更できます。 。この手順はオプションですが、お勧めします。

  1. まず、chrootにログインします。
    $ sudo chroot /mnt/chroot /bin/bash --login
    
  2. 次のLinuxコマンドを実行して、rootのシェルプロンプトを永続的に変更して終了します。
    # echo 'PS1="chroot:\w# "' >> ~/.bashrc
    # exit
    
  3. 次にchroot環境に入ると、新しいシェルプロンプトが表示されます。
    # chroot /mnt/chroot /bin/bash --login
    

  4. 次に、ロケールをインストールして再構成します。
    chroot:/# apt install locales
    

  5. ここでロケールを再構成し、メニューからロケールを選択します。
    chroot:/# dpkg-reconfigure locales
    

chrootsshデーモンをインストールします

これで、chroot環境内にサービスをインストールする準備が整いました。 LANまたはWANからのssh接続を使用してchrootにログインできるようになるため、sshから始めましょう。

  1. 次のコマンドを使用してSSHサーバーをインストールします。
    chroot:/# apt install ssh
    
  2. 22とは異なるポートでリッスンするようにchrootedsshサービスを構成します。これは、ホストシステムによってすでに占有されている可能性が高いためです。
    chroot:/# nano /etc/ssh/sshd_config
    
  3. そして行#Port 22を変更します 、リモートルートログインを追加する行も追加します:
    Port 2222
    PermitRootLogin yes
    

  4. 変更を有効にするためにSSHサービスを再起動します。
    chroot:/# /etc/init.d/ssh restart
    Restarting OpenBSD Secure Shell server: sshd.
    
  5. 最後に、chrootされたrootユーザーのパスワードを変更します:
    chroot:/# passwd
    

chrootにリモートでログイン

すべてがうまくいけば、sshを使用して新しいchroot環境にログインできるようになります:

$ ssh root@localhost -p 2222

微調整chroot

ホストオペレーティングシステムの電源を入れても、chrootsshデーモンは自動的に起動しません。したがって、そのタスクを実行するための単純なシェルスクリプトを作成します。

#!/bin/bash

mount -t devpts devpts /mnt/chroot/dev/pts
mount -t proc proc /mnt/chroot/proc
chroot  /mnt/chroot /etc/init.d/ssh start


最後のステップとして、/etc/rc2.d/へのシンボリックリンクを作成します :

# ln -s /etc/init.d/chroot.sh /etc/rc2.d/S98chroot

これで、完全に機能するchroot環境ができました。追加のサービスを自由に探索してインストールしてください。

まとめ

このチュートリアルでは、Debianchroot環境をインストールする方法を見ました。また、SSH経由でchroot環境にログインする方法も学びました。これにより、chroot環境の管理と、テスト用のパッケージのインストールが簡単になります。 chroot環境を持つことは、ソフトウェアをテストし、それをホストオペレーティングシステムから分離しておくための優れた方法です。


Debian
  1. Debian 10(バスター)のインストール方法

  2. Python3.9をDebian10にインストールする方法

  3. Debian9にAnacondaPythonをインストールする方法

  1. Debian10にMemcachedをインストールする方法

  2. Debian10にTeamViewerをインストールする方法

  3. Debian9にGitをインストールする方法

  1. Debian9にGoをインストールする方法

  2. Debian9にPipをインストールする方法

  3. Debian9にRをインストールする方法