隠しフォルダを非表示にする sftp

隠しフォルダを非表示にする sftp

クライアントはファイルを共有するために sftp サーバーを必要としていたため、amazon ec2 ubuntu マシン上に sftp サーバーを作成し、さまざまなユーザーを追加しました。

ここで必要なのは、ユーザーが winscp または他のクライアント経由で sftp サーバーにログインしたときに、ホーム ディレクトリ内の自分のフォルダーのみが表示され、他のフォルダーは表示されないようにすることです。また、ホーム ディレクトリ内では、ドット (.) で始まるファイルやフォルダーは表示されません。

これは可能ですか? たとえば、以下のスクリーンショット リンクを参照してください。クライアントにトランスクリプト フォルダーを表示/アクセスさせたいだけで、他には何もありません。

https://i.stack.imgur.com/kEHfW.png

答え1

皆さん、ありがとう。最終的にこのリンクのおかげで私のタスクを達成することができました。http://rmtheis.wordpress.com/2011/07/03/setting-up-an-sftp-site-on-amazon-web-services-ec2-creating-an-account-to-share-with-a-third-party-and-restricting-that-account-to-allow-only-sftp/

これは 3 つの部分から構成されます。

  • EC2 上に sftp サイトを設定する
  • 新しいユーザーアカウントを作成する
  • 新しいユーザーアカウントを、SSH権限なしで読み取り専用FTPを実行するように構成する

これは、信頼できるユーザーとの間でファイルを転送するためのものです。私は、そのタスク専用の EC2 インスタンスを使用して、非常に大きなファイルを時々クライアントに送信するのに適したソリューションとしてこれを使用しています。転送が完了したら、インスタンスをシャットダウンまたは削除します。

Amazon Web Services EC2を使用して、Ubuntu Amazon Machine Image (AMI)を選択してサーバーをセットアップします。(AMIは以下から見つけることができます。 Ubuntu 16.04 以降ami-1aad5273 など、無料枠の対象になるものを選択することをお勧めします。

サーバーにsshで接続します:

ssh -i keyfile.pem [email protected]

vsftpdをインストールします:

sudo apt-get install vsftpd

新しいユーザーを作成します:

sudo adduser newusername

AWS マネジメントコンソールを使用して、サードパーティユーザー用の新しいキーペアを生成します。

puttygen を使用して、新しいキー (keyname.pem) をインポートし、その公開キーをコピーします。

サーバー上で、新しいユーザー用の .ssh ディレクトリを作成します。

sudo mkdir /home/newusername/.ssh

公開鍵を に貼り付けます/home/newusername/.ssh/authorized_keys

権限を設定します:

sudo chmod 700 /home/newusername/.ssh

sudo chmod 600 /home/newusername/.ssh/authorized_keys

sudo chown -R newusername:newusername /home/newusername/.ssh

ローカル マシンから新しいユーザーの sftp ログインをテストします。

sftp -o IdentityFile=newkeypair1.pem
[email protected]

sftp のみの使用に制限する必要があるユーザー用の新しいグループを作成します。

sudo groupadd sftponly

sudo adduser newusername sftponly

/etc/ssh/sshd_configサブシステム行を編集して次のように変更します。

Subsystem sftp internal-sftp

そして、次の行を末尾に追加します/etc/ssh/sshd_config

Match group sftponly
ChrootDirectory /home/%u
X11Forwarding no
AllowTcpForwarding no
ForceCommand internal-sftp

EC2 のキーベース認証に必要なファイルを上書きせずに権限を設定します。

sudo chown root:root /home/newusername

sudo chown -R newusername:newusername /home/newusername/.ssh

sudo /etc/init.d/ssh restart

これで、新しいユーザーは sftp で接続できますが、ssh では接続できません。共有したいファイルを に配置し/home/newusername、ユーザーとキーを共有します。

関連情報