セキュア・ユーザー・アカウントで匿名 FTP をセットアップすることができます。
このシナリオでは、コマンド・ライン・インターフェースおよびスクリプトを使用して、セキュア・ユーザー・アカウントで匿名 FTP をセットアップします。
- 次のコマンドを入力して、 bos.net.tcp.client ファイルセットがシステムにインストールされていることを確認します。
lslpp -L | grep bos.net.tcp.client
- root 権限で、 /usr/samples/tcpip ディレクトリーに移動します。 次に例を示します。
- アカウントをセットアップするには、次のスクリプトを実行します。
-
Are you sure you want to modify
/home/ftp?のプロンプトが出されたら、 yesと入力します。 次のような出力が表示されます。Added user anonymous.
Made /home/ftp/bin directory.
Made /home/ftp/etc directory.
Made /home/ftp/pub directory.
Made /home/ftp/lib directory.
Made /home/ftp/dev/null entry.
Made /home/ftp/usr/lpp/msg/en_US directory.
- /home/ftp ディレクトリーに移動します。 次に例を示します。
- 次のように入力して、 home サブディレクトリーを作成します。
- 次のように入力して、 /home/ftp/home ディレクトリーの許可を
drwxr-xr-xに変更します。
- 次のように入力して、 /home/ftp/etc ディレクトリーに移動します。
- 次のように入力して、 objrepos サブディレクトリーを作成します。
- 次のように入力して、 /home/ftp/etc/objrepos ディレクトリーの許可を
drwxrwxr-xに変更します。
- 次のように入力して、 /home/ftp/etc/objrepos ディレクトリーの所有者とグループを root ユーザーとシステム・グループに変更します。
chown root:system objrepos
- 次のように入力して、 security サブディレクトリーを作成します。
- 次のように入力して、 /home/ftp/etc/security ディレクトリーの許可を
drwxr-x---に変更します。
- 次のように入力して、 /home/ftp/etc/security ディレクトリーの所有者とグループを root ユーザーとセキュリティー・グループに変更します。
chown root:security security
- 次のように入力して、 /home/ftp/etc/security ディレクトリーに移動します。
- 次の SMIT 高速パスを入力して、ユーザーを追加します。
このシナリオでは、test という名前のユーザーを追加しています。
- SMIT フィールドに以下の値を入力します。
User NAME [test]
ADMINISTRATIVE USER? true
Primary GROUP [staff]
Group SET [staff]
Another user can SU TO USER? true
HOME directory [/home/test]
変更を入力したら、Enter を押してユーザーを作成します。 SMIT プロセスが完了したら、SMIT を終了します。
- 次のコマンドで、このユーザーのパスワードを作成します。
プロンプトが出されたら、希望するパスワードを入力します。 確認のために、新規パスワードをもう一度入力しなければなりません。
- 次のように入力して、 /home/ftp/etc ディレクトリーに移動します。
- 次のコマンドを使用して、 /etc/passwd ファイルを /home/ftp/etc/passwd ファイルにコピーします。
cp /etc/passwd /home/ftp/etc/passwd
- 任意のエディターを使用して、 /home/ftp/etc/passwd ファイルを編集します。 次に例を示します。
- コピーした内容から、root、ftp、およびテスト・ユーザー以外のすべての行を除去します。 編集後、内容は次のようになります。
root:!:0:0::/:/bin/ksh
ftp:*:226:1::/home/ftp:/usr/bin/ksh
test:!:228:1::/home/test:/usr/bin/ksh
- 変更を保存し、エディターを終了します。
- 次のように入力して、 /home/ftp/etc/passwd ファイルのアクセス権を
-rw-r--r--に変更します。
- 次のように入力して、 /home/ftp/etc/passwd ファイルの所有者とグループを root ユーザーとセキュリティー・グループに変更します。
chown root:security passwd
- 次のコマンドを使用して、 /etc/security/passwd ファイルの内容を /home/ftp/etc/security/passwd ファイルにコピーします。
cp /etc/security/passwd /home/ftp/etc/security/passwd
- 任意のエディターを使用して、 /home/ftp/etc/security/passwd ファイルを編集します。 次に例を示します。
- コピーした内容から、テスト・ユーザーに関するスタンザ以外のすべてのスタンザを除去します。
- テスト・ユーザー・スタンザから
flags = ADMCHG 行を削除します。 編集後、内容は次のようになります。 test:
password = 2HaAYgpDZX3Tw
lastupdate = 990633278
- 変更を保存し、エディターを終了します。
- 次のように入力して、 /home/ftp/etc/security/passwd ファイルのアクセス権を
-rw-------に変更します。 chmod 600 ./security/passwd
- 次のように入力して、 /home/ftp/etc/security/passwd ファイルの所有者とグループを root ユーザーとセキュリティー・グループに変更します。
chown root:security ./security/passwd
- 任意のエディターを使用して、 /home/ftp/etc/group ファイルを作成および編集します。 次に例を示します。
- 次の行をファイルに追加します。
system:*:0:
staff:*:1:test
- 変更を保存し、エディターを終了します。
- 次のように入力して、 /home/ftp/etc/group ファイルのアクセス権を
-rw-r--r-–に変更します。
- 次のように入力して、 /home/ftp/etc/group ファイルの所有者とグループを root ユーザーとセキュリティー・グループに変更します。
chown root:security group
- 任意のエディターを使用して、 /home/ftp/etc/security/group ファイルを作成および編集します。 次に例を示します。
- 次の行をファイルに追加します。
system:
admin = true
staff
admin = false
- 変更を保存し、エディターを終了します。
これを行うには、以下のステップを実行します。
- 次のように入力して、
/etc/security/user ファイルを /home/ftp/etc/security ディレクトリーにコピーします。cp /etc/security/user /home/ftp/etc/security
cd /home/ftp/etc/
- エディターを使用し、次のように入力して、コピーした内容から、
test ユーザーに関するスタンザ以外のすべてのスタンザを除去します。vi ./security/user
- 変更を保存し、エディターを終了します。
- 次のように入力して、 /home/ftp/etc/security/group ファイルの許可を
-rw-r-----に変更します。chmod 640 ./security/group
- 次のように入力して、/home/ftp/etc/security/group ファイルの所有者とグループを、root ユーザーとセキュリティー・グループに変更します。
chown root:security ./security/group
- 以下のコマンドを使用して、適切な内容を /home/ftp/etc/objrepos ディレクトリーにコピーします。
cp /etc/objrepos/CuAt ./objrepos
cp /etc/objrepos/CuAt.vc ./objrepos
cp /etc/objrepos/CuDep ./objrepos
cp /etc/objrepos/CuDv ./objrepos
cp /etc/objrepos/CuDvDr ./objrepos
cp /etc/objrepos/CuVPD ./objrepos
cp /etc/objrepos/Pd* ./objrepos
- 次のように入力して、 /home/ftp/home ディレクトリーに移動します。
- 次のように入力して、ユーザー用に新しいホーム・ディレクトリーを作成します。
mkdir test
これが新しい ftp ユーザーのホーム・ディレクトリーになります。
- 次のように入力して、 /home/ftp/home/test ディレクトリーの所有者とグループを
test ユーザーとスタッフ・グループに変更します。
- 次のように入力して、 /home/ftp/home/test ファイルのアクセス権を
-rwx------に変更します。
- 次のように入力して、テスト・ユーザーのリモート・ログインとコンソール・ログインを使用不可にします。
chuser login=false rlogin=false test
この時点で、ftp サブログインがマシンに設定されました。 以下の手順で、これをテストできます。
- ftp を使用して、
test ユーザーを作成したホストに接続します。 次に例を示します。ftp MyHost
anonymous としてログインします。 パスワードを求めるプロンプトが出されたら、Enter を押します。
- 次のコマンドを使って、新規に作成された
test ユーザーに切り替えます。user test
パスワードを求めるプロンプトが出されたら、ステップ 18 で作成したパスワードを使用します。
- pwd コマンドを使用して、ユーザーのホーム・ディレクトリーが存在するかどうかを検査します。 次に例を示します。
ftp> pwd
/home/test
この出力では、/home/test が ftp サブディレクトリーとして示されています。 ホスト上の絶対パス名は、実際には /home/ftp/home/test です。
注:
- ftp サブユーザーに対してのみユーザーを切り替えることができます。 例えば、
test は ftp サブユーザーです。
- スクリプト
anon.users.ftp を使用して ftp anonymous ユーザーを作成すると、スクリプトの username を置き換えて、任意の名前をユーザーに割り当てることができます。
anonymous ユーザーの場合、サーバーがユーザー・アカウントのホーム・ディレクトリーで chroot コマンドを実行するので、fileftpaccess.ctl などの構成に関連したすべてのファイルは、それぞれの匿名ユーザーの ~/etc/ などのホーム・ディレクトリー内になければなりません。 /etc/ftpaccess.ctl ファイルでの「書き込み専用」、「読み取り専用」、および「読み取り/書き込み」の制約事項として、chrooted パスに関連するパスがある必要があります。