「SCP と SFTP」の版間の差分
(関連リンク) |
(関連記事) |
||
| 3行目: | 3行目: | ||
[[en:SCP and SFTP]] |
[[en:SCP and SFTP]] |
||
{{Related articles start}} |
{{Related articles start}} |
||
| − | {{ |
+ | {{Related|SSHFS}} |
| + | {{Related|SFTP chroot}} |
||
{{Related|Pure-FTPd}} |
{{Related|Pure-FTPd}} |
||
{{Related articles end}} |
{{Related articles end}} |
||
| 43行目: | 44行目: | ||
パッケージには chroot を作成するスクリプトが付属しています。使用するには: |
パッケージには chroot を作成するスクリプトが付属しています。使用するには: |
||
| − | + | # /usr/share/doc/scponly/setup_chroot.sh |
|
| − | {{bc|# ./setup_chroot.sh}} |
||
* 質問に答えてください。 |
* 質問に答えてください。 |
||
* {{ic|/path/to/chroot}} の所有者を {{ic|root:root}} にして others の権限を {{ic|r-x}} にします。 |
* {{ic|/path/to/chroot}} の所有者を {{ic|root:root}} にして others の権限を {{ic|r-x}} にします。 |
||
2017年8月7日 (月) 22:53時点における版
関連記事
Secure copy (SCP) は Secure Shell 接続を使ってファイルを転送するプロトコルです。SSH file transfer protocol (SFTP) は同じようなプロトコルで、SCP と同様に Secure Shell をバックエンドとして使います。どちらのプロトコルでもパスワードや転送データが暗号化されるので、安全にファイルを転送できます。ただし、SFTP プロトコルには、中断した転送の再開やリモートのファイルを削除したりする機能が追加されています。
目次
Secure file transfer protocol (SFTP)
OpenSSH をインストール・設定するだけで SFTP のセットアップも完了しています。SSH が動作しているのであれば、SSH のデフォルト設定で有効になっているので SFTP も同じく動作しています。設定が古い場合は以下の手順に従ってください。
適当なエディタで /etc/ssh/sshd_config を開いて、以下の行を (存在しない場合) 追加してください:
Subsystem sftp /usr/lib/ssh/sftp-server
sshd.service デーモンを再起動すれば SFTP が機能します。
sftp プログラムや sshfs を使ってファイルを操作できるはずです。標準的な FTP プログラムも大抵は動作します。
Secure copy protocol (SCP)
openssh をインストール・設定して起動してください。パッケージにはファイルを転送するための scp コマンドが含まれています。詳しくは Secure Shell を参照。
rsshAUR や scponly などのパッケージをインストールすることでさらに機能を追加できます。下を参照。
Scponly
Scponly は scp/sftp だけでしかコンピュータにアクセスできないようにする制限的なシェルです。さらに、scponly で特定のディレクトリに chroot をセットアップして更にセキュリティを高めることもできます。
既にユーザーを作成している場合、ユーザーのシェルを scponly に設定するだけです:
# usermod -s /usr/bin/scponly username
これで完了です。適当な sftp クライアントを使用してテストしてみてください。
chroot 監獄の追加
パッケージには chroot を作成するスクリプトが付属しています。使用するには:
# /usr/share/doc/scponly/setup_chroot.sh
- 質問に答えてください。
/path/to/chrootの所有者をroot:rootにして others の権限をr-xにします。- 使用するユーザーのシェルを
/usr/bin/scponlycに変更します。 - sftp-server は libnss_files などの libnss モジュールを必要とします。モジュールを chroot の
/libパスにコピーしてください。