インフラエンジニアbacchiのわかったことまとめ

bacchi.me

Linux

CentOS7でscpなchrootの環境をつくる

更新日:

CentOS7でのchrootの設定手順をまとめました。

sftpの設定はらくらく出来たのですが、
scpの設定にドはまりしてしまい大いに時間をかけてしまいました。

同じようにchrootでscpの設定を行う人がスムーズに作業ができればいいなと思います。

事前準備

この例ではscpでの接続のみ許可します。
chrootのユーザーには公開鍵認証で接続することとします。

  • 事前にchroot接続用のユーザーを作成しておく
  • 事前に公開鍵をchrootのユーザーのホームディレクトリに配置しておく
  • chrootユーザーの環境定義スクリプトを配置する

chrootユーザー環境定義スクリプト

以下のスクリプトを配置しておきましょう。

chroot用のディレクトリを掘る

/chrootディレクトリを作り、その下にユーザー名のディレクトリを作ります。
さらに、その下に/binやchroot後のユーザーのホームディレクトリを作ります。

ここでは先にchroot後のユーザーのホームディレクトリを作ります。

chrootに必要なコマンド、ライブラリのコピー

chrootで使用するコマンドや、コマンドが必要とするライブラリをコピーしてやる必要があります。

mkdirでディレクトリを掘って、lddで必要なライブラリを探して、コピーして・・

と作業してもよいですが、面倒くさいのでスクリプトで一気に作ります。

スクリプトを配置したら、実行権限を付与しておくとよいです。

引数にユーザー名を指定して、create_chroot_env.shを実行します。

スクリプトを実行した後は以下のようなディレクトリが出来ます。

これで環境の構築は完了です。

sshd_configの設定

/etc/ssh/sshd_configのおしりに以下を記述し、sshをreloadもしくはrestartします。

これでchrootでscpを行う用意が出来ました。

Sponsor Link

スポンサーリンク

Sponsor Link

スポンサーリンク

-Linux

Copyright© bacchi.me , 2018 AllRights Reserved.