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

Centos – CentosでSftpユーザーを作成する方法は?

サポート担当者に一時的なSFTPアクセスを許可したいと思います。 SFTPユーザーを作成するにはどうすればよいですか?そして、仕事が終わったらどうすればそれを削除できますか?

また、それらのホームディレクトリを指定するにはどうすればよいですか?ホームディレクトリ内の特定のサブディレクトリにアクセスできないようにすることはできますか?

CentOS6.3とfzSftpを使用しています

承認された回答:

非chrootアクセス

FTPサーバーをセットアップしておらず、ログインするユーザーを信頼し、サーバーをあちこち見回さないようにする場合は、代わりにシステムへのSFTPのアカウントを提供する傾向があります。

CentOS wikiは、「これをかなり苦痛のないものにする単純なSFTPセットアップ」というタイトルの簡単なハウツーを維持しています。

文字通りアカウントを作成し、ファイアウォールがSSHトラフィックを許可していることを確認し、SSHサービスが実行されていることを確認するだけで、ほぼ完了しているため、問題はありません。

sshdの場合 まだ実行されていません:

$ /etc/init.d/sshd start

ユーザーを追加するには:

$ sudo useradd userX
$ sudo passwd userX
... set the password ...

アカウントを使い終わったら:

$ sudo userdel -r userX

chrootアクセス

一方、このユーザーを指定されたディレクトリに制限する場合は、SSHに含まれているSFTPサーバー(openssh)が、これを簡単に有効にする構成を提供します。少し手間がかかりますが、それほど多くはありません。この手順については、LinuxでChroot SFTPをセットアップする方法(SSHではなくSFTPのみを許可する)というタイトルのこのチュートリアルで説明しています。

/etc/ssh/sshd_configにこれらの変更を加えます ファイル。

Subsystem       sftp    internal-sftp

## You want to put only certain users (i.e users who belongs to sftpusers group) in the chroot jail environment. Add the following lines at the end of /etc/ssh/sshd_config

Match Group sftpusers
  ChrootDirectory /sftp/%u
  ForceCommand internal-sftp

次に、このユーザーがロックされるchrootされたディレクトリツリーを作成する必要があります。

$ sudo mkdir -p /sftp/userX/{incoming,outgoing}
$ sudo chown guestuser:sftpusers /sftp/guestuser/{incoming,outgoing}

権限は次のようになります。

$ ls -ld /sftp/guestuser/{incoming,outgoing}
drwxr-xr-x 2 guestuser sftpusers 4096 Dec 28 23:49 /sftp/guestuser/incoming
drwxr-xr-x 2 guestuser sftpusers 4096 Dec 28 23:49 /sftp/guestuser/outgoing

このようなトップレベルのディレクトリ:

$ ls -ld /sftp /sftp/guestuser
drwxr-xr-x 3 root root 4096 Dec 28 23:49 /sftp
drwxr-xr-x 3 root root 4096 Dec 28 23:49 /sftp/guestuser

sshdを再起動することを忘れないでください サーバー:

$ sudo service sshd restart

次に、userXアカウントを作成します:

$ sudo useradd -g sftpusers -d /incoming -s /sbin/nologin userX
$ sudo passwd userX
... set password ...

アカウントが正しく作成されたことを確認できます:

$ grep userX /etc/passwd
userX:x:500:500::/incoming:/sbin/nologin

アカウントを使い終わったら、上記と同じ方法でアカウントを削除します。

$ sudo userdel -r userX

…そして、上記で行った構成ファイルの変更を削除してから、sshdを再起動することを忘れないでください。 それらをもう一度アクティブにします。

関連:「forin * do」ループの結果を反転しますか?
Cent OS
  1. DebianでSudoユーザーを作成する方法

  2. RockyLinuxおよびCentOSでSudoユーザーを作成する方法

  3. CentOS7でsudoユーザーを作成する方法

  1. CentOS8でシェルアクセスなしでSFTPユーザーを作成する方法

  2. RockyLinux8でSudoユーザーを作成する方法

  3. CentOSでsudoユーザーを作成する

  1. CentOSでSFTPサーバーをセットアップする方法

  2. CentOS、Ubuntu、DebianでSudoユーザーを作成する方法

  3. Centos – Centosで非特権ユーザーを作成する方法は?