AIX上的FTP设置(原创)

本文详细介绍AIX系统中FTP服务的基本配置方法,包括修改上传文件的默认属性、使用ftp自动传输文件、记录ftp的日志、拒绝某些用户的ftp访问、限制FTP用户只可访问自己的目录及限制FTP上传文件的权限等内容。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

FTP服务

FTP是用于Internet上的控制文件双向传输的协议。同时,它也是一个应用程序(Application)。用户可以通过它把自己的PC机与世界各地所有运行FTP协议的服务器相连,访问服务器上的大量程序和信息。
FTP的主要作用,就是让用户连接上一个远程计算机(这些计算机上运行着FTP服务器程序)查看远程计算机有哪些文件,然后把文件从远程计算机上拷贝到本地计算机,或把本地计算机的文件传送到远程计算机上去。
IBM AIX操作系统在安装完之后会默认安装ftp,查看/etc/inetd.conf文件,会有如下行
ftp stream tcp6 nowait root /usr/sbin/ftpd ftp
这表明系统会默认启动AIX自带的ftpd,使AIX提供标准的ftp服务。但是AIX提供的ftp服务具有一定的局限性,对用户的控制不够灵活,往往需要借助wu-ftp,vsftpd这类第三方ftp工具进行ftp管理。
默认ftp 属于inetd内的服务,/etc/initab ->rc.tcpip inetd 通过/etc/inetd.conf来配置是否运行
lssrc -ls inetd
startsrc -t ftp              #启动ftp
startsrc -s tcpip         #把所有tcpip子系统都起来,当然是inetd和inittab没有关闭FTP情况下

配置ftp

修改上传文件的默认属性

在AIX环境中,当用户从Windows上传文件到AIX服务器时所传文件的缺省读写属性为640(rw-r-----)。如想改变缺省读写属性为 644,首先用vi编辑器打开/etc/inetd.conf文件,在"ftp"定义行的末尾加上"-u 033",如

ftp stream tcp6 nowait root /usr/sbin/ftpd ftp -u 033

然后刷新inetd进程:
refresh -s inetd
这就改变了ftp文件的缺省属性。
使用ftp自动传输文件
作为客户端,使用ftp自动传输文件
1. 在用户根目录下创建文件.netrc
2. 设置.netrc的属性为600,owner 为ftp用户
3.定制.netrc的内容.如:
machine <host_name> login <ftp_user> password <ftp_user_password>
macdef init
get file1
put file2
....
quit
<space_line>
注:.netrc必须以一空行结束。
记录ftp的日志
日志的记录可以便于我们及时的发现ftp中的异常行为,对ftp能够进行较为全面的监控。
修改办法:
1. 修改/etc/syslog.conf文件,并加入一行:
daemon.info /var/ftp.log
将FTP日志记录在 /var/ftp.log中,该文件需在日志记录生效前生成。
2. 运行"refresh -s syslogd"命令刷新syslogd 后台程序。
3. 修改/etc/inetd.conf文件,修改下面的数据行:
ftp stream tcp6 nowait root /usr/sbin/ftpd ftpd -l
4. 运行“refresh -s inetd”命令刷新inetd后台程序。
拒绝某些用户的ftp访问
系统中存在着很多用户,各个用户都有其相对应的职能,在这其中不乏有很多是权限级别较高的用户,对于这部分用户ftp的控制就显得尤为重要。
修改办法:
编辑 /etc/ftpusers ,添加需要拒绝的用户,每用户一行。例如:
#more /etc/ftpusers
lhq
ljb
当尝试 ftp 登录时,系统报错:
Name (localhost:root): lhq
530 User lhq access denied.
Login failed
限制FTP用户只可访问自己的目录
系统中每个用户的目录是相对较独立的,有时候需要系统中涉及到的一些敏感信息仅能被该文件属主所查阅,然而ftp默认的登录方式是允许用户查看所有的目录结构,因此也存在着一定的安全隐患,对FTP登录之后用户访问的控制也很有必要。
修改办法:
#vi /etc/ftpaccess.ctl
puseronly: update,staff  
注意,update为你需要限制目录的用户,staff是你需要限制目录的组)。
执行 refresh -s inetd;
$HOME标示该用户的主目录
# mkdir bin
# chown root bin
# cp /bin/ls $HOME/bin/ls
# chmod 111 $HOME/bin/ls
# chmod 555 $HOME/bin
# chgrp system $HOME/bin
拷贝必须的库文件:
# mkdir lib
# chmod 555 lib
# chgrp system $HOME/lib
# cp /lib/libc.a lib/libc.a
# cp /lib/libcurses.a lib/libcurses.a
# cp /lib/libcrypt.a lib/libcrypt.a
重启ftp服务:
#stopsrc -t ftp
#startsrc -t ftp

关于/etc/ftpaccess.ctl的详细配置可参见如下链接

http://pic.dhe.ibm.com/infocenter/aix/v7r1/index.jsp?topic=%2Fcom.ibm.aix.files%2Fdoc%2Faixfiles%2Fftpaccess.ctl.htm
限制FTP上传文件的权限
用户使用ftp向服务器传输文件后,经常会很沮丧的告诉管理员,我不小心把文件误操作了,能不能帮我们再上传一次,我们不能期望所有的用户都是专家,所以对ftp上传文件进行权限设置不失为一个理想的选择。
修改办法:
1. 将文件 /etc/inetd.conf中ftp一行改为:
ftp stream tcp6 nowait root /usr/sbin/ftpd ftpd -u xxx
其中-u是新的umask。666-xxx所得权限为设定的ftp上传文件默认权限。
2. refresh -s inetd
这种方法对所有使用ftp的用户有效。已经连接的用户需要重新连接使新设置生效。

 

参考至:http://unix-cd.com/vc/www/38/2010-12/17385.html

                 http://www.aixchina.net/club/thread-16736-1-1.html

                 http://swvip.iteye.com/blog/1000774

                 http://pic.dhe.ibm.com/infocenter/aix/v7r1/index.jsp?topic=%2Fcom.ibm.aix.files%2Fdoc%2Faixfiles%2Fftpaccess.ctl.htm

                 http://www.aixchina.net/home/space.php?uid=14302&do=blog&id=25561

                 http://tiany.blog.51cto.com/513694/791845

                 http://blog.youkuaiyun.com/qshpeng/article/details/8511303

                 http://blog.chinaunix.net/uid-20326103-id-1966238.html
本文原创,转载请注明出处、作者

如有错误,欢迎指正
邮箱:czmcj@163.com

<think>我们参考引用[3]来配置AIX系统的FTP服务器。根据引用[3],配置步骤如下:1.**创建用户**:使用`useradd`命令创建用户,并指定用户组和主目录。例如,创建一个用户名为`ftpuser`,用户组为`dba`,主目录为`/home/ftpuser`的用户:```bashuseradd -g dba -d /home/ftpuserftpuser```然后设置密码:```bashpasswdftpuser```2.**为用户主目录准备必要的库文件并设置权限**:-进入用户主目录:```bashcd /home/ftpuser```-创建`bin`和`lib`目录:```bashmkdir binlib```-拷贝必要的库文件:```bashcp/bin/lsbin/cp/lib/libc.a lib/cp /lib/libcrypt.a lib/cp /lib/libcurses.alib/```-设置权限(必须为555):```bashchown -R rootlib binchgrp -R systemlib binchmod-R555lib bin``` 3. **修改FTP访问控制文件`/etc/ftpaccess.ctl`**:添加以下内容(冒号后为用户名和组名):```puseronly:ftpuser,dba```这表示只允许用户`ftpuser`和组`dba`访问FTP服务。 4. **重启FTP服务**:```bashstopsrc -sftpd#停止ftp服务startsrc -s ftpd#启动ftp服务```注意:以上步骤假设系统已经安装了FTP服务器。如果没有安装,可能需要先安装相应的软件包。 另外,引用[2]中提到安全组配置,如果是在云环境中,还需要确保安全组规则允许FTP端口(默认21)的访问。 §§相关问题§§1.如何测试AIX系统中的FTP服务器是否配置成功?2.如何配置AIX系统的FTP服务器以允许匿名访问? 3. AIX系统中FTP服务器的安全配置有哪些注意事项?</think>### 在AIX系统中配置FTP服务器的步骤 根据引用[3]的配置方法,以下是AIX系统设置FTP服务器的完整流程: 1. **创建FTP用户** ```bash # 创建用户(指定用户组和主目录) useradd -g dba -d /path/to/ftp_home ftp_user # 设置用户密码 passwd ftp_user ``` - `-g dba`:指定用户组为dba(可替换为其他组) - `-d /path/to/ftp_home`:设置FTP根目录(需提前创建) 2. **准备用户目录环境** ```bash cd /path/to/ftp_home mkdir bin lib # 复制必需的系统文件 cp /bin/ls bin/ cp /lib/libc.a lib/ cp /lib/libcrypt.a lib/ cp /lib/libcurses.a lib/ # 设置权限(关键步骤) chown -R root bin lib chgrp -R system bin lib chmod -R 555 bin lib ``` 3. **配置FTP访问控制** ```bash vi /etc/ftpaccess.ctl ``` 添加访问规则(格式:`puseronly:用户名,用户组`): ``` puseronly:ftp_user,dba ``` 4. **重启FTP服务** ```bash stopsrc -s ftpd # 停止服务 startsrc -s ftpd # 启动服务 ``` 5. **防火墙配置(可选)** - 开放21号端口: ```bash chsec -f /etc/security/config -s ipsec -a "port_21=21/tcp" refresh -s inetd ``` > **重要说明**: > 1. 用户主目录权限需设置为`755`:`chmod 755 /path/to/ftp_home` > 2. 若需匿名访问,创建用户`ftp`并设置`/etc/ftpaccess.ctl`添加`anonymous:*` > 3. 安全组需开放21端口(云环境参考引用[2])
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值