
ファイルとディレクトリを保存・共有するためのプラットフォームを導入したら、まず最初にグループの追加と管理を始めることをお勧めします。グループを使用すれば、ユーザーごとにアクセス権限を管理する必要がなく、誰が何にアクセスできるかをより適切に制御できます。グループを使用することで、グループ内の権限を継承するユーザーを追加できるため、より効率的になります。
しかし、すべてのプラットフォームが同じというわけではなく、正しく動作させるには特別な注意が必要なものもあります。そのようなプラットフォームの一つがSFTPGoです。一見するとユーザーとグループの管理は非常に簡単そうに見えますが、すべてが確実に機能するためには、さらに努力が必要です。
グループを追加し、そのグループにユーザーを追加するプロセスを順を追って説明することで、その意味を説明したいと思います。
参照: 知っておくべきオープンソースと Linux の用語 40 選 (TechRepublic Premium)
必要なもの
これを動作させるには、まずSFTPGoのインスタンスを実行する必要があります。これはUbuntu 22.04にSFTPGo STFPサーバーをインストールする方法で詳しく説明しています。また、SFTPGoがインストールされたサーバーへのSSHアクセスと、sudo権限を持つユーザーも必要です。
Linuxでグループとユーザーを追加する方法
SFTPGo を使用する際の注意点の一つは、管理 GUI でユーザーやグループを追加しただけでは、システムに反映されないことです。SFTPGo GUI 内でユーザーやグループを追加することは可能ですが、SFTPGo 内でユーザーやグループを作成するだけでは、ホスティングシステム上には実際には存在しないため、期待通りに動作しないことがあります。
つまり、SFTPGoでユーザー/グループを機能させるには、Linuxホストでもユーザー/グループを作成する必要があります。手順は以下のとおりです。
Linuxにグループを追加する方法
sudo 権限を持つユーザーとして SFTPGo ホストに SSH で接続し、次のように新しいグループを追加します。
sudo addgroup GROUPNAME
ここで、GROUPNAME は追加するグループの名前です。
新しいグループを追加したら、そのグループにユーザーを追加できます。ただし、その前に、次のコマンドでユーザーをシステムに追加する必要があります。
sudo adduser USERNAME
ここで、USERNAME はユーザーの名前です。
次に、次のコマンドを使用して、ユーザーをグループに追加できます。
sudo usermod -aG GROUP USERNAME
ここで、GROUP はグループ名、USERNAME はユーザー名です。
ディレクトリを作成してグループを追加する方法
次の注意点は、ディレクトリを使用するには、ホストシステム上に実際に存在している必要があるということです。SFTPGoでは、仮想ディレクトリまたはユーザーのホームディレクトリとしてディレクトリを作成できますが、そのディレクトリがホストシステム上に適切な所有権で存在していない場合は、SFTPGoでは使用できません。
それでは、ディレクトリを作成して、グループの所有権を変更してみましょう。例えば、dev1というグループを作成し、/developersというディレクトリを作成して、dev1グループを所有者として追加するとします。手順は以下のとおりです。
- でディレクトリを作成します
sudo mkdir /developers
。 - グループの所有権を で変更します
sudo chown -R .dev1 /developers
。
素晴らしいですね。これで、ユーザーが dev1 グループのメンバーであれば、/developers ディレクトリにアクセスできるようになります。
ここで、SFTPGo に移動して、これらの新しいユーザーとグループを追加できます。
SFTPGoでグループを追加する方法
ユーザーを追加する前に、まずグループを追加しましょう。そのためには、SFTPGo管理パネルに管理者ユーザーとしてログインし、「グループ」に移動します。このウィンドウで「+」をクリックして新しいグループを作成します。新しいグループ作成ウィンドウ(図A)で、グループ名と、先ほどコマンドラインから作成したグループのホームディレクトリを使用して、必要な情報を入力します。
図A

必要な情報を入力したら、「送信」をクリックしてグループを保存します。
SFTPGoでユーザーを追加する方法
次に、「ユーザーの表示と管理」に進みます。そのウィンドウ(図B)で「+」をクリックして新しいユーザーを追加します。
図B

表示されるウィンドウ (図 C ) で、新しいユーザーの詳細をすべて入力します。
図C

新しいユーザーのホームディレクトリを、追加した /developers ディレクトリにしたいとします。そのためには、まずユーザーを新しく作成したグループ(この場合は dev1)に割り当て、次に新しいユーザーのホームディレクトリとして /developers を入力します。
必要な情報を入力したら、下にスクロールして「送信」をクリックし、ユーザーを保存します。
この時点で、新しいユーザーは誰でも、Web インターフェイス、デスクトップ ファイル マネージャー、またはコマンド ラインを介して SFTPGo にログインし、アクセス権を持つフォルダーを操作できるようになります。
これは世界で最もシンプルなFTPサーバーとは言えませんが、ユーザーとグループの基本設定を済ませれば、作業は格段に楽になるはずです。もしかしたら、今後のリリースで開発者がWeb UIで作成したユーザー、グループ、フォルダがホストシステムに反映されるようにし、プロセスを簡素化してくれるかもしれません。それまでの間、この小さな欠点を回避する方法をご理解いただけたかと思います。
TechRepublic Academy の以下のリソースを活用して Linux エキスパートになりましょう。
- マスターLinux開発バンドル
- Linux & Docker コーディングバンドル
- 2022年 Linux 認定トレーニング バンドル
- マスターLinuxとGit認定バンドル
Jack Wallen によるビジネス プロフェッショナル向けの最新のテクノロジー アドバイスをすべて知るには、YouTube で TechRepublic の How To Make Tech Work を購読してください。