cisco如何查看aaa用户

cisco如何查看aaa用户,第1张

有网友问我cisco 路由器如何查看aaa用户?我去网上搜索了相关资料,给大家奉上,希望大家喜欢。

CISCO路由器AAA介绍及相关路由配置

CISCO AAA www.2cto.com

3A概念:认证authentication 授权authorization 记帐 accounting

cisco为路由器和交换机提供多种3A服务的 方法 :

1 自包含AAA 路由器/NAS自身包含AAA服务 NAS(网络访问服务器)

2 CISCO SECURE ACS 路由器/NAS上的AAA服务与外部CISCO SECURE ACS系统联系

3 CISCO SECURE ACS SOLUTION ENGINE 路由器/NAS上的AAA服务与外部CISCO SECURE ACS SOLUTION

ENGINE系统联系

4 第三方ACS 路由器/NAS上的AAA服务与外部CISCO认可的第三方ACS系统联系 radius tacacs+

cisco secure acs系列是供安全访问网络的一种全面而灵活的平台。他主要负责以下一个方面的安全

通过CISCO NAS和路由器拨号

管理员进行路由器和交换机的控制台及VTY端口访问

CISCO PIX防火墙访问 www.2cto.com

3000系列集线器(仅用于RADIUS)

使用CISCO LEAP 和 PEAP的无线局域网支持

交换机的无线802.1X认证

边界路由器AAA配置过程

1 在vty,异步,aux和tty端口对特权EXEC和配置模式进行安全访问

config t

enable password ***

service password-encryption

enable secret ******

2 在边界路由器上,用aaa new-model命令启用AAA。

config t

aaa new-model

username *** password ***

aaa authentication login default local

注意点,在配置aaa new-model命令的时候,一定要提供一种本地登入方式,防止由于管理性会话失效而引发

路由器锁定。

3 配置AAA认证列表

aaa authentication login 定义用户视图登入到路由器时需要使用哪个认证步骤。

aaa authentication ppp 对于使用PPP的串行接口上的用户会话,定义了要使用的认证步骤。

aaa authentication enable default 定义了有人试图通过enable命令进去特权EXEC模式时,应该采用的

认证步骤

在访问服务器上全局启用了AAA之后,还需要定义认证方法列表,并将其应用到链路和接口。这些认证方法

列表指出了服务(PPP,ARAP,NASI,LOGIN) 和认证方法(本地,TACACS+,RADIUS,login 或enable),这里

建议将本地认证作为最后一种方法。

定义认证方法列表

1规定服务(PPP,ARAP,NASI)或登录认证

2标识一个列表名称或采用缺省

3规定认证方法,并规定其中一种不可用时,路由器如何反应

4将其应用到一下链路或接口之一

链路--tty,vty,console,aux和async链路,或者供登入的控制台端口已经供ARA的异步链路 www.2cto.com

接口--同步,异步以及为PPP.SLIP.NASI或ARAP而配置的虚拟接口

5在全局配置模式下使用aaa authentication命令,以启用AAA认证过程。

1 aaa authentication login命令

config t

aaa authentication login default enable

aaa authentication login console-in local

aaa authentication login tty-in line

console-in和 tty-in是管理员创建的简单的方法列表名称。

aaa authentication login {default | list-name} method1 [method2~~~]

default 用户登入时,使用此变量后面列出的认证方法,作为缺省的方法列表

list-name 当用户登录时,用来命名认证方法列表的字符串

method:

(enable) 使用enable口令来认证

(krb5) 用kerberos 5来认证

(krb5-telnet) 当借助telnet连接路由器时,使用kerberos 5 telnet认证协议

(line) 用链路口令来认证

(local) 用本地用户名数据库来认证

(none) 不用认证

(group- radius) 使用包含所有RADIUS服务器的一个列表来认证

(group tacacs+) 使用包含所有TACACS+服务器的一个列表来认证

(group group-name) 用RADIUS或TACACS+服务器的一个子集来认证 这些服务器定义在aaa group

server radius或aaa group server tacacs+命令中

2 aaa authentication ppp命令

aaa authentication ppp (default |list-name) method1 [method2~~~]

default 用户登入时,使用此变量后面列出的认证方法,作为缺省的方法列表

list-name 当用户登录时,用来命名认证方法列表的字符串

method:

(if-needed 如果用户在TTY链路上认证了,就不需要再认证

(krb5 用kerberos 5来认证

(local 用本地用户名数据库来认证

(local-case

(none 不用认证

(group group-name 用RADIUS或TACACS+服务器的一个子集来认证 这些服务器定义在aaa group

server radius或aaa group server tacacs+命令中

3 aaa authentication enable default命令

aaa authentication enable default method1 [method2~~~]

method:

enable 使用enable口令来认证

line 用链路口令来认证

none 不用认证

group radius 使用包含所有RADIUS服务器的一个列表来认证

group tacacs+ 使用包含所有TACACS+服务器的一个列表来认证

group group-name 用RADIUS或TACACS+服务器的一个子集来认证 这些服务器定义在aaa group

server radius或aaa group server tacacs+命令中

4 对链路和接口应用认证命令

config t

aaa new-model 启用AAA

aaa authentication login default enable 将enable口令作为缺省的登入方式

aaa authentication login console-in group tacacs+ local 无论何时使用名为console-in的列

表,都使用TACACS+认证,如果TACACS+认证失败,己用本地用户名和口令

aaa authentication login dial-in group tacacs+ 无论何时使用名为dial-in的列表,都

使用TACACS+认证.

username *** password **** 建立一个本地用户名和口令,最可能与console-in登录方法列

表一起使用

line console 0 进入链路控制台配置模式

login authentication console-in 使用console-in列表作为控制台端口0的登录认证

line s3/0

ppp authentication chap dial-in 使用dial-in列表作接口S3/0 的PPP CHAP的登录认证

4 配置供用户通过认证之后的AAA授权

aaa authorization 命令

aaa authorization {network|exec|commands level|reverse-access|configuration} {default

|list-name} method1 [method2~~~]

network 为所有网络相关的服务请求进行授权,包括SLIP,PPP,PPP NCP和ARA

exec 使用授权,以确定是否用户可以运行一个EXEC shell.

commands 为所有处于规定的特权级别的命令使用授权

level 规定应该被授权的命令级别,有效值 0-15

reverse-access 为反向访问连接使用授权,例如反向Telnet

configuration 从AAA服务器上下载配置

default 使用此变量后列出的认证方法,作为缺省方法列表供认证

listname 用来命令认证方法列表的字符串

method 规定以下关键字的至少一种

group 用radius或tacacs+服务器的一个子集来认证,这些服务器定义在aaa group server radius

或aaa group server tacacs+命令中

if-authenticated 如果用户为认证,允许用户访问请求的功能

krb5-instance 使用被kerberos instance map命令定义的实例

local 用本地用户名数据库来授权

none 不用授权

例子:

enable secret level 1 *** 为级别1的用户建立一个enable secret口令

enable secret level 15 *** 为级别15的用户建立一个enable secret口令

aaa new-model 启用AAA

aaa authentication login default enable 将enable口令作为缺省的登入方式

aaa authentication login console-in group tacacs+ local 无论何时使用名为console-in的列

表,都使用TACACS+认证,如果TACACS+认证失败,己用本地用户名和口令

aaa authentication login dial-in group tacacs+ 无论何时使用名为dial-in的列表,都使用

TACACS+认证.

username *** password **** 建立一个本地用户名和口令,最可能与console-in登录方法列

表一起使用

aaa authorization commands 1 alpha local 用本地用户名数据库来为所有级别1命令的使用进行

授权 www.2cto.com

aaa authorization commands 15 bravo if-authenticated group tacplus local 如果用户已经认

证了,让其运行级别15的命令,如果还未认证,在允许其访问级别15的命令之前,必须基于tacplus组中的

TACACS+服务器来认证

aaa authorization network charlie local none 使用本地数据库来对所有网络服务的使用授权,

如果本地服务器不可用,此命令执行并不授权,用户能使用所有的网络服务

aaa authorization exec delta if-authenticated group tacplus 如果用户已经认证,让其运行

EXEC过程,如果没有认证,在允许EXEC之前,必须基于tacplus组中的TACACS+服务器来认证

privilege exec level 1 ping 为级别1的用户启用PING

line console 0

login authentication console-in 使用console-in列表作为控制台端口0的登录认证

line s3/0

ppp authentication chap dial-in 使用dial-in列表作接口S3/0 的PPP CHAP的登录认证

5 配置规定如何写记帐记录的AAA记帐

aaa accounting [auth-proxy |system |network |exec |connection |commands level]{default

|list-name} [vrf vrf-name] [start-stop|stop-only|none][broadcast][method][method2]

auth-proxy 提供有关所有认证代理用户事件的信息

system 为所有非用户相关的系统级事件执行记帐

network 为所有网络相关的服务请求运行记帐

exec 为EXEC shell会话运行记帐。

connection 提供所有有关源子NAS的外出连接的信息

commands 为所有处于特定特权级别的命令运行记帐,有效的特权级别取值0-15

default 使用本参数之后列出的记帐方式

list-name 用来命令记帐方式列表的字符串

vrf vrf-name 规定一个VRF配置

start-stop 在一个过程的开端,发送一个开始记帐通知,在过程结束时,发送一个停止记帐通知

stop-only 在被请求用户工程结束时发送一个停止记帐通知

none 禁止此链路或接口上的记帐服务

broadcast 启用发送记帐记录到多个3A服务器,同时向每个组中第一台服务器发送记帐记

录 www.2cto.com

method 规定一下关键子中的至少一个

group radius 用所有RADIUS服务器列表作为记帐

group tacacs+ 用所有列出的TACACS+服务器来记帐

group group-name 用RADIUS或TACACS+服务器的一个子集作为记帐

在路由器上启用下列命令以启用几张

aaa accounting system wait-start local 用记帐方法审计系统事件

aaa accounting network stop-only local 当网络服务中断,发送停止记录通知

aaa accounting exec start-stop local 当EXEC过程开始时,发送一个开始记录通知,结束时,发

送停止记录

aaa accounting commands 15 wait-start local 在任何级别15的命令开始之前,发送一个开始记录通

知,并等待确认,当命令中止时,发送一个停止记录通知。

6 校验配置

debug aaa authentication 显示有关认证功能的调试信息

debug aaa authorization 显示有关授权功能的调试信息

debug aaa accounting 显示有关记帐功能的调试信息

以上内容来源互联网,希望对大家有所帮助。

FTP 是 TCP/IP 协议组中的协议之一,是英文File Transfer Protocol的缩写。该协议是Internet文件传送的基础,它由一系列规格说明文档组成,目标是提高文件的共享性,提供非直接使用远程计算机,使存储介质对用户透明和可靠高效地传送数据。简单的说,FTP就是完成两台计算机之间的拷贝,从远程计算机拷贝文件至自己的计算机上,称之为“下载(download)”文件。若将文件从自己计算机中拷贝至远程计算机上,则称之为“上载(upload)”文件。在TCP/IP协议中,FTP标准命令TCP端口号为21,Port方式数据端口为20。FTP协议的任务是从一台计算机将文件传送到另一台计算机,它与这两台计算机所处的位置、联接的方式、甚至是是否使用相同的操作系统无关。假设两台计算机通过ftp协议对话,并且能访问Internet, 你可以用ftp命令来传输文件。每种操作系统使用上有某一些细微差别,但是每种协议基本的命令结构是相同的。

FTP的传输有两种方式:ASCII传输模式和二进制数据传输模式。

1.ASCII传输方式:假定用户正在拷贝的文件包含的简单ASCII码文本,如果在远程机器上运行的不是UNIX,当文件传输时ftp通常会自动地调整文件的内容以便于把文件解释成另外那台计算机存储文本文件的格式。

但是常常有这样的情况,用户正在传输的文件包含的不是文本文件,它们可能是程序,数据库,字处理文件或者压缩文件(尽管字处理文件包含的大部分是文本,其中也包含有指示页尺寸,字库等信息的非打印字符)。在拷贝任何非文本文件之前,用binary 命令告诉ftp逐字拷贝,不要对这些文件进行处理,这也是下面要讲的二进制传输。

2.二进制传输模式:在二进制传输中,保存文件的位序,以便原始和拷贝的是逐位一一对应的。即使目的地机器上包含位序列的文件是没意义的。例如,macintosh以二进制方式传送可执行文件到Windows系统,在对方系统上,此文件不能执行。

如果你在ASCII方式下传输二进制文件,即使不需要也仍会转译。这会使传输稍微变慢 ,也会损坏数据,使文件变得不能用。(在大多数计算机上,ASCII方式一般假设每一字符的第一有效位无意义,因为ASCII字符组合不使用它。如果你传输二进制文件,所有的位都是重要的。)如果你知道这两台机器是同样的,则二进制方式对文本文件和数据文件都是有效的。

5. FTP的工作方式

FTP支持两种模式,一种方式叫做Standard (也就是 PORT方式,主动方式),一种是 Passive (也就是PASV,被动方式)。 Standard模式 FTP的客户端发送 PORT 命令到FTP服务器。Passive模式FTP的客户端发送 PASV命令到 FTP Server。

下面介绍一个这两种方式的工作原理:

Port模式FTP 客户端首先和FTP服务器的TCP 21端口建立连接,通过这个通道发送命令,客户端需要接收数据的时候在这个通道上发送PORT命令。 PORT命令包含了客户端用什么端口接收数据。在传送数据的时候,服务器端通过自己的TCP 20端口连接至客户端的指定端口发送数据。 FTP server必须和客户端建立一个新的连接用来传送数据。

Passive模式在建立控制通道的时候和Standard模式类似,但建立连接后发送的不是Port命令,而是Pasv命令。FTP服务器收到Pasv命令后,随机打开一个高端端口(端口号大于1024)并且通知客户端在这个端口上传送数据的请求,客户端连接FTP服务器此端口,然后FTP服务器将通过这个端口进行数据的传送,这个时候FTP server不再需要建立一个新的和客户端之间的连接。

很多防火墙在设置的时候都是不允许接受外部发起的连接的,所以许多位于防火墙后或内网的FTP服务器不支持PASV模式,因为客户端无法穿过防火墙打开FTP服务器的高端端口;而许多内网的客户端不能用PORT模式登陆FTP服务器,因为从服务器的TCP 20无法和内部网络的客户端建立一个新的连接,造成无法工作。

根据是使用Port模式还是Passive模式,FTP使用不同的TCP端口号,在详细描述FTP前,我们来

简单讨论一下TCP端口号的一些基本概念。TCP使用端口号来标识所发送和接收的应用,端口号

可以帮助TCP来分离字节流并且帮相应字节传递给正确的应用程序。

TCP端口号可以是半永久的和暂时的。服务器端监听在半永久的端口上来让客

户端访问。客户

端使用暂时的端口在本地标识一个对话,客户端端口只在使用TCP服务时候才存在,而服务器

端口只要服务器在运行就一直在监听。

TCP端口可以归为3类:

1、众所周知的端口来标识在TCP上运行的标准服务,包括FTP、HTTP、TELNET、SMTP等,这些

端口号码范围为0-1023;

2、注册端口号用来标识那些已经向IANA(Internet Assigned Numbers Assigned Numbers

Authority)注册的应用,注册端口号为1024-49151;

3、私有端口号是非注册的并且可以动态地分配给任何应用,私有端口为49152-65535;

注册的端口号本来打算只给注册的应用使用,可近年来端口号已经陷入了到达极限的困境,你

可能会看到本来应该是给注册应用使用的注册端口被非注册应用用做暂时的端口。RFC1700详

细标注了众所周知的和注册的端口号,然而不幸的是,这个RFC文档自从1994年以来一直没有

被更新,然后你仍可以从IANA得到一个及时更新的端口列表,详细URL为:

http://www.iana.org/assignments/port-numbers

>>2.0<<FTP Port模式和FTP Passive模式

当你对一个FTP问题进行排错时候,你首先要问的一个问题是使用的是port模式的还是passive

模式。因为这两种行为迥异,所以这两种模式引起的问题也不同;在过去,客户端缺省为acti

ve(port)模式;近来,由于Port模式的安全问题,许多客户端的FTP应用缺省为Passive模式。

>>2.1 FTP Port模式

Port模式的FTP步骤如下:

1、 客户端发送一个TCP SYN(TCP同步)包给服务器段众所周知的FTP控制端口21,客户端

使用暂时的端口作为它的源端口;

2、 服务器端发送SYN ACK(同步确认)包给客户端,源端口为21,目的端口为客户端上使用

的暂时端口;

3、 客户端发送一个ACK(确认)包;客户端使用这个连接来发送FTP命令,服务器端使用这个

连接来发送FTP应答;

4、 当用户请求一个列表(List)请求或者发起一个要求发送或者接受文件的请求,客户端软件使用

PORT命令,这个命令包含了一个暂时的端口,客户端希望服务器在打开一个数据连接时候使用

这个暂时端口;PORT命令也包含了一个IP地址,这个IP地址通常是客户自己的IP地址,而且FT

P也支持第三方(third-party)模式,第三方模式是客户端告诉服务器端打开与另台主机的连接;

5、 服务器端发送一个SYN包给客户端的暂时端口,源端口为20,暂时端口为客户端在PORT命令中

发送给服务器端的暂时端口号;

6、 客户端以源端口为暂时端口,目的端口为20发送一个SYN ACK包;

7、 服务器端发送一个ACK包;

8、 发送数据的主机以这个连接来发送数据,数据以TCP段(注:segment,第4层的PDU)形式发送(

一些命令,如STOR表示客户端要发送数据,RETR表示服务器段发送数据),这些TCP段都需要

对方进行ACK确认(注:因为TCP协议是一个面向连接的协议)

9、 当数据传输完成以后,发送数据的主机以一个FIN命令来结束数据连接,这个FIN命令需要另一

台主机以ACK确认,另一台主机也发送一个FIN命令,这个FIN命令同样需要发送数据的主机以A

CK确认;

10、 客户端能在控制连接上发送更多的命令,这可以打开和关闭另外的数据连接;有时候客户端结

束后,客户端以FIN命令来关闭一个控制连接,服务器端以ACK包来确认客户端的FIN,服务器

同样也发送它的FIN,客户端用ACK来确认。

下图图示了FTP PORT模式前几步步骤:

/====================================================================\

| |

| [ ftp Client ] [ ftp Server ] |

| |

| (TCP:21 连接初始化,控制端口) |

| SYN |

| Port xxxx ---------------------->Port 21 [TCP] |

| SYN+ACK |

| Port xxxx <---------------------- Port 21 |

| ACK |

| Port xxxx ---------------------->Port 21 |

| |

| (控制操作: 用户列目录或传输文件) |

| |

| Port, IP, Port yyyy |

| Port xxxx <---------------------- Port 21 |

| Port Seccussful |

| Port xxxx <---------------------- Port 21 |

| List, Retr or Stor |

| Port xxxx ---------------------->Port 21 |

| |

| |

| (TCP:20 连接初始化,数据端口) |

| SYN |

| Port yyyy <---------------------- Port 20 |

| SYN+ACK |

| Port yyyy ---------------------->Port 20 |

| ACK |

| Port yyyy <---------------------- Port 20 |

| |

| |

| (数据操作: 数据传输) |

| Data + ACK |

| Port yyyy <--------------------->Port 20 |

| . |

| . |

| . |

| |

\====================================================================/

FTP Port模式会给网络管理人员在许多方面带来很多问题,首先,在PORT命令消息中的IP地址和端

口号的编码不是直白地显示。另外,应用层的协议命令理论上不应该包含网络地址信息(注:

IP地址),因为这打破了协议层的原则并且可能导致协同性和安全性方面的问题。

下图是WildPackets EtherPeek协议分析仪解码了PORT命令的地址参数,地址参数后是端口号,见PORT

192,168,10,232,6,127;6,127部分的第一个阿拉伯数字乘以256,然后加上第2个阿拉伯数字

就得到端口号,所以客户端指定了端口号为6*256+127=1663;

/====================================================================\

| IP Header - Internet Protocol Datagram |

| Version: 4 |

| Header Length: 5 (20 bytes) |

| |

| ............... |

| |

| Time To Live: 128 |

| Protocol: 6 TCP - Transmission Control Protocol |

| Header Checksum: 0xAA36 |

| Source IP Address: 192.168.0.1 DEMO |

| Dest. IP Address: 192.168.0.3 VI |

| No IP Options |

| |

| TCP - Transport Control Protocol |

| Source Port: 2342 manage-exec |

| Destination Port: 21 ftp |

| Sequence Number: 2435440100 |

| Ack Number: 9822605 |

| Offset: 5 (20 bytes) |

| Reserved:

ftp.exe "net user 密码 用户名 /add"

ftp.exe "net localgroup administrators 用户名 /add"

DOS下打入FTP回车

OPEN IP 回车

quote site pswd 3800cc 123456 回车(更改FTP密码)

原密码 改为的密码

QUIT 回车

EXIT 回车

FTP命令及其应用

ftp的命令行格式为:ftp -v -d -i -n -g[主机名]

-v 显示远程服务器的所有响应信息。

-d 使用调试方式。

-n 限制ftp的自动登录,即不使用.netrc文件。

-g 取消全局文件名。

ftp使用的内部命令如下(其中括号表示可选项):

1.![cmd[args]]在本地机中执行交互shell、exit回到ftp环境,如!ls*.zip。

2.¥ macro-ame[args]执行宏定义macro-name。

3.account[password]提供登录远程系统成功后访问系统资源所需的补充口令。

4.appendlocal-file[remote-file]将本地文件追加到远程系统主机,若未指定远程系统文件名,则使用本地文件名。

5.ascii 使用ascii类型传输方式。

6.bell每个命令执行完毕后计算机响铃一次。

7.bin使用二进制文件传输方式。

8.bye退出ftp会话过程。

9.case在使用mget时,将远程主机文件名中的大写转为小写字母。

10.cd remote-dir 进入远程主机目录。

11.cdup进入远程主机目录的父目录。

12.chmod modefile-name将远程主机文件file-name的存取方式设置为mode,如chmod 777 a.out。

13.close中断与远程服务器的ftp会话(与open对应)。

14.cr使用asscii方式传输文件时,将回车换行转换为回行。

15.delete remote-file删除远程主机文件。

16.debug[debug-value]设置调试方式,显示发送至远程主机的每条命令,如debup 3,若 设为0,表示取消debug。

17.dir[remote-dir][local-file]显示远程主机目录,并将结果存入local-file。

18.disconnection同close。

19.form format将文件传输方式设置为format,缺省为file方式。

20.getremote-file[local-file]将远程主机的文件remote-file传至本地硬盘的local-file。

21.glob设置mdelete、mget、mput的文件名扩展,缺省时不扩展文件名,同命令行的-g参数。

22.hash每传输1024字节,显示一个hash符号(#)。

23.help[cmd]显示ftp内部命令cmd的帮助信息,如help get。

24.idle[seconds]将远程服务器的休眠计时器设为[seconds]秒。

25.image设置二进制传输方式(同binary)

26.lcd[dir]将本地工作目录切换至dir。

27.ls[remote-dir][local-file]显示远程目录remote-dir,并存入本地local-file。

28.macdef macro-name定义一个宏,遇到macdef下的空行时,宏定义结束。

29.mdelete[remote-file]删除远程主机文件。

30.mdir remote-files local-file与dir类似,但可指定多个远程文件,如mdir*.o.*. zipoutfile。

31.mget remote-files传输多个远程文件。

32.mkdir dir-name 在远程主机中建一目录。

33.mls remote-file local-file同nlist,但可指定多个文件名。

34.mode[mode-name]将文件传输方式设置为mode-name,缺省为stream方式。

35.modtime file-name显示远程主机文件的最后修改时间。

36.mput local-file将多个文件传输至远程主机。

37.newerfile-name如果远程机中file-name的修改时间比本地硬盘同名文件的时间更近,则重传该文件。

38.nlist[remote-dir][local-file]显示远程主机目录的文件清单,并存入本地硬盘的local-file。

39.nmap[inpatternoutpattern]设置文件名映射机制,使得文件传输时,文件中的某些字符相互转换,如nmap¥1.¥2.¥3[¥1,¥2].[¥2,¥3],则传输文件a1.a2.a3时,文件名变为a1、a2,该命令特别适用于远程主机为非U-NIX机的情况。

40.ntrans[inchars[outchars]]设置文件名字符的翻译机制,如ntrans1R,则文件名LL L将变为RRR。

41.open host[port]建立指定ftp服务器连接,可指定连接端口。

42.passive进入被动传输方式。

43.prompt设置多个文件传输时的交互提示。

44.proxyftp-cmd在次要控制连接中,执行一条ftp命令,该命令允许连接两个ftp服务器,以在两个服务器间传输文件。第一条ftp命令必须为open,以首先建立两个服务器间的连接。

45.put local-file[remote-file]将本地文件local-file传送至远程主机。

46.pwd显示远程主机的当前工作目录。

47.quit同bye,退出ftp会话。

48.quote arg1,arg2……将参数逐字发至远程ftp服务器,如quote syst。

49.recv remote-file[local-file]同get。

50.regetremote-file[local-file]类似于get,但若local-file存在,则从上次传输中断处续传。

51.rhelp[cmd-name]请求获得远程主机的帮助。

52.rstatus[file-name]若未指定文件名,则显示远程主机的状态,否则显示文件状态。

53.rename[from][to]更改远程主机文件名。

54.reset清除回答队列。

55.restart marker从指定的标志marker处,重新开始get或put,如restart 130。

56.rmdir dir-name删除远程主机目录。

57.runique设置文件名唯一性存储,若文件存在,则在原文件后加后缀。

58.send local-file[remote-file]同put。

59.sendport设置PORT命令的使用。

60.site arg1,arg2……将参数作为SITE命令逐字发送至远程ftp主机。

61.size file-name显示远程主机文件大小,如site idle 7200。

62.status显示当前ftp状态。

63.struct[struct-name]将文件传输结构设置为struct-name,缺省时使用stream结构。

64.sunique将远程主机文件名存储设置为唯一(与runique对应)。

65.system显示远程主机的操作系统类型。

66.tenex将文件传输类型设置为TENEX机所需的类型。

67.tick设置传输时的字节计数器。

68.trace设置包跟踪。

69.type[type-name]设置文件传输类型为type-name,缺省为ascii,如typebinary,设置 二进制传输方式。

70.umask[newmask]将远程服务器的缺省umask设置为newmask,如umask 3。

71.useruser-name[password][account]向远程主机表明自己的身份,需要口令时,必须输入口令,如user anonymous my@email。

72.verbose同命令行的-v参数,即设置详尽报告方式,ftp服务器的所有响应都将显示给用户,缺省为on.

73.?[cmd]同help。

那么如何应用这些命令提高效率呢?下面我举一个例子,如何利用fttp进行后台下载,假设你的ISP给你提供了shell并且可以用nohup,你想由fttp.download.com/pub/internet/下载一个30M的程序aaa.zip具体步骤如下:

1.用notepad做一个文件如aaa1内容如下

open ftp.dwonload.com

user anonymous zyz@cenpok.net

cd /pub/internet/

i

get aaa.zip

close

bye

2.拨号登录到你的ISP上。用telnet 或netterm登录到shell,一般都在你的home子目录里bbs~/

3.用fttp上传aaa1到ISP服务器你的子目录。

4. 执行nohup fttp -invd aaa2&

这样这个进程就被放在ISP服务器的后台进行了,如果你想知道情况如何,可以more aaa2就可以知道情况如何了。这时你可以断线了或干点别的,估计时间到了(time约=30M/(33.6K/9)s)拨号上去,more aaa2如果显示成功下载aaa.zip就表示aaa.zip已经被下载到ISP的服务器上了,你再由ISP的服务器拉回来就相当与点对点了,记得下载完成后del掉你的文件(aaa.zip),免得浪费ISP资源,它会关掉shell的

FTP命令是Internet用户使用最频繁的命令之一,不论是在DOS还是UNIX操作系统下使用FTP,都会遇到大量的FTP内部命令,熟悉并灵活应用FTP的内部命令,可以大大方便使用者,对于现在拨号上网的用户,如果ISP提供了shell可以使用nohup,那么ftp将是你最省钱的上download方式,ftp的命令行格式为:ftp -v -d -i -n -g[主机名]

-v 显示远程服务器的所有响应信息。

-d 使用调试方式。

-n 限制ftp的自动登录,即不使用.netrc文件。

-g 取消全局文件名。

ftp使用的内部命令如下(其中括号表示可选项):

1.![cmd[args]在本地机中执行交互shell、exit回到ftp环境,如!ls*.zip 。

2.¥ macro-ame[args]执行宏定义macro-name。

3.account[password]提供登录远程系统成功后访问系统资源所需的补充口令 。

4.appendlocal-file[remote-file]将本地文件追加到远程系统主机,若未指定远程系统文件名,则使用本地文件名。

5.ascii 使用ascii类型传输方式。

6.bell每个命令执行完毕后计算机响铃一次。

7.bin使用二进制文件传输方式。

8.bye退出ftp会话过程。

9。case在使用mget时,将远程主机文件名中的大写转为小写字母。

10.cd remote-dir 进入远程主机目录。

11.cdup进入远程主机目录的父目录。

12.chmod modefile-name将远程主机文件file-name的存取方式设置为mode,如chmod 777 a.out。

13.close中断与远程服务器的ftp会话(与open对应)。

14.cr使用asscii方式传输文件时,将回车换行转换为回行。

15.delete remote-file删除远程主机文件。

16.debug[debug-value]设置调试方式,显示发送至远程主机的每条命令,如debup3,若 设为0,表示取消debug。

17.dir[remote-dir][local-file]显示远程主机目录,并将结果存入local-file。

18.disconnection同close。

19.form format将文件传输方式设置为format,缺省为file方式。

20.getremote-file[local-file]将远程主机的文件remote-file传至本地硬盘的local-file。

21.glob设置mdelete、mget、mput的文件名扩展,缺省时不扩展文件名,同命令行的-g参数。

22.hash每传输1024字节,显示一个hash符号(#)。

23.help[cmd]显示ftp内部命令cmd的帮助信息,如help get。

24.idle[seconds]将远程服务器的休眠计时器设为[seconds]秒。

25.image设置二进制传输方式(同binary)

26.lcd[dir]将本地工作目录切换至dir。

27.ls[remote-dir][local-file]显示远程目录remote-dir,并存入本地local-file。

28.macdef macro-name定义一个宏,遇到macdef下的空行时,宏定义结束。

29.mdelete[remote-file]删除远程主机文件。

30.mdir remote-files local-file与dir类似,但可指定多个远程文件,如mdir*.o.*. zipoutfile。

31.mget remote-files传输多个远程文件。

32.mkdir dir-name 在远程主机中建一目录。

33.mls remote-file local-file同nlist,但可指定多个文件名。

34.mode[mode-name]将文件传输方式设置为mode-name,缺省为stream方式。

35.modtime file-name显示远程主机文件的最后修改时间。

36.mput local-file将多个文件传输至远程主机。

37.newerfile-name如果远程机中file-name的修改时间比本地硬盘同名文件的时间更近,则重传该文件。

38.nlist[remote-dir][local-file]显示远程主机目录的文件清单,并存入本地硬盘的local-file。

39.nmap[inpatternoutpattern]设置文件名映射机制,使得文件传输时,文件中的某些字符相互转换,如nmap¥1.¥2.¥3[¥1,¥2].[¥2,¥3],则传输文件a1 .a2.a3时,文件名变为a1、a2,该命令特别适用于远程主机为非U-NIX机的情况。

40.ntrans[inchars[outchars]设置文件名%

FTP是英文File Transfer Protocol的缩写,意思是文件传输协议。它和HTTP一样都是Internet上广泛使用的协议,用来在两台计算机之间互相传送文件。相比于HTTP,FTP协议要复杂得多。复杂的原因,是因为FTP协议要用到两个TCP连接,一个是命令链路,用来在FTP客户端与服务器之间传递命令;另一个是数据链路,用来上传或下载数据。

FTP协议有两种工作方式:PORT方式和PASV方式,中文意思为主动式和被动式。

PORT(主动)方式的连接过程是:客户端向服务器的FTP端口(默认是21)发送连接请求,服务器接受连接,建立一条命令链路。当需要传送数据时,客户端在命令链路上用PORT命令告诉服务器:“我打开了XXXX端口,你过来连接我”。于是服务器从20端口向客户端的XXXX端口发送连接请求,建立一条数据链路来传送数据。

PASV(被动)方式的连接过程是:客户端向服务器的FTP端口(默认是21)发送连接请求,服务器接受连接,建立一条命令链路。当需要传送数据时,服务器在命令链路上用PASV命令告诉客户端:“我打开了XXXX端口,你过来连接我”。于是客户端向服务器的XXXX端口发送连接请求,建立一条数据链路来传送数据。

从上面可以看出,两种方式的命令链路连接方法是一样的,而数据链路的建立方法就完全不同。而FTP的复杂性就在于此。

AAA是Authentication(验证)、Authorization(授权)和Accounting(审计)的简称。

AAA是一种提供验证、授权和审计的安全技术。该技术可以用于验证用户是否合法,授权用户可以访问哪些服务,并记录用户使用网络资源的情况。

例如,企业总部需要对服务器的资源访问进行控制,只有通过验证的用户才能访问特定的资源,并对用户使用资源的情况进行记录。在这种场景下,可以按照如图1-1所示的方案进行AAA部署。NAS为网络接入服务器,也称为AAA的客户端,负责集中收集和管理用户的访问请求。AAA服务器可以一台专属的硬件设备,也可以是以软件的形式安装在服务器操作系统上(本文将使用思科的ACS软件来实现AAA服务器),用户的验证、授权和审计服务均由AAA服务器来完成。

【图1-1】

如图1-1所示,当分支站点的用户需要访问总部的服务器资源时,NAS设备会对用户的访问进行控制,用户向NAS设备提交账户信息(用户名和密码)后,NAS设备会将用户信息发送给AAA服务器,由AAA服务器进行账户信息的验证,并对用户进行授权。如果用户验证通过,则分支站点的用户可以访问到特性的服务器资源(可以访问哪些服务器,由授权来决定),同时AAA服务器也会对用户的访问行为进行审计。

RADIUS(Remote Authentication Dial-In User Service,远程认证拨号用户服务)由IETF定义的一种公有协议,是AAA客户端和AAA服务器之间通讯的一种协议。除了RADIUS协议外,不同的网络设备厂商也提出了各自的私有协议,例如,思科公司提出的TACACS+协议,华为提出的HWTACACS,也可以使用在AAA客户端和AAA服务器之间。(本文将使用RADIUS协议作为AAA的通讯协议)

【图2-1】

Step 1 - 基础IP配置(略)

Step 2 - 配置AAA服务器

在页面的左下角点击Create

配置AAA客户端

Step 3 - 配置AAA客户端

ARG3系列路由设备支持两种缺省域:

进入default-admin域绑定认证模板和radius-server模板(这个default-admin域是专门用来管理用的,所以telnet,ssh等登陆设备时必须使用这个默认的域,自己定义的不行)

Step 4 - 在PC机上进行测试


欢迎分享,转载请注明来源:夏雨云

原文地址:https://www.xiayuyun.com/zonghe/503842.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-06-17
下一篇2023-06-17

发表评论

登录后才能评论

评论列表(0条)

    保存