??谢谢!
angel518 回复于:2003-07-30 19:29:41 |
li2002 回复于:2003-07-30 19:53:21 |
首先建立主机信任。
rcp host:path/file path/file man rcp 可看到详细帮助 |
凝嫣 回复于:2003-07-30 21:33:32 |
rcp就是远程机复制文件到本地机上,也可以从本地复制到远程机,使用格式一般是
rcp 远程主机名:远程文件 本地主机名:本地文件 (反着也行) 本地主机名可以省略 |
angel518 回复于:2003-07-31 20:16:36 |
[quote:a88256fb30="li2002"]首先建立主机信任。
rcp host:path/file path/file man rcp 可看到详细帮助[/quote:a88256fb30] 怎么建立主机信任 |
li2002 回复于:2003-07-31 20:26:12 |
给你找了一篇,其中讲到主机信任。
[code:1:f5a83aa794] [转帖]SCO Unix系统网络风险防范 作者:wkl 发表时间:2002/11/14 10:10pm 转贴 摘自中国金融电脑 SCO Unix系统网络风险防范 浙江省宁波市区信用联社 洪兆其 SCO Unix操作系统因其运行稳定,对硬件配置的要求不高,目前正被广泛应用于银行、电信、保险、证券、铁路等行业,但这些行业一般都不是单机应用,而是使用内部网络进行数据处理,对系统安全性的要求又相当高。SCO Unix支持网络功能,但网络安全要靠系统管理员手工限定。 笔者单位用装有SCO OpenServer5.0.5版本操作系统的IBM Netfinity系列服务器作为应用系统的前置机,后台主机用RS/6000小型机,考虑到应用的实际情况,租用电信的DDN线路来连接各前置机和主机。整个网络除本单位内部各主机可以互通外,还与人行和其他中间业务单位的主机互通。虽然在路由器上进行了一定的安全设置,但网络上主机互通给系统带来了极大的不安全因素。笔者根据多年的系统维护和开发经验,对单位的所有前置机进行了一定的安全限制,最大限度地保障了应用需要和系统安全,以下步骤均在SCO OpenServer5.0.5操作系统上应用通过。 1.为所有前置机建立信任关系 中心机房备有一台和前置机相同配置的服务器,专门用来管理前置机,也用此机对前台进行应用程序的上传更新。通过下面的方法建立信任关系,如管理机的主机名为sqls,地址为130.30.1.200,则在前置机的/etc/hosts文件中加入一行130.30.1.200 sqls,然后在前置机的超级用户根目录下创建文件.rhosts,文件写入sqls后保存。SCO Unix操作系统安装时并没有.rhosts文件,需要建立信任关系时,必须手工建立此文件。建立好信任关系后,管理机就可以直接用rlogin、rcp等远程命令来管理和控制前置机了,所有这些r 开头的命令都不需要输入密码。而前置机则不允许直接rlogin 到管理机上,所以信任关系的建立是单向的。我们要求下级信用社的系统管理员自己掌握超级用户和一般用户的密码,并定期更换。建立信任关系后,日常管理和维护就方便了。 2.修改Telnet、Ftp端口参数 我们知道,无论是Windows还是Unix操作系统,都有端口号这个概念,计算机之间的通讯,是通过对应的端口号实现的。一般系统都用缺省的端口号,比如Ftp的端口号为21,Telnet的端口号为23,Http的端口号为80 等,当我们使用Telnet登录到其它计算机上时,系统就使用默认端口号23,这是很不安全的。笔者对辖内的前置机和管理机进行了Telnet和Ftp端口号的更改,具体为编辑/etc/services文件,找到想要修改的Telnet和Ftp行,修改端口号,比如把Telnet的23/tcp改成6364/tcp,但不要用/etc/services文件中已存在的端口号。这样使用Telnet命令登录到该主机时,必须给出端口号,即用Telnet xxx.xxx.xxx.xxx 6364 才能进行登录,否则会被系统拒绝。通过修改端口号可以使不知道相应端口号的远程用户不能登录,进一步提高了系统的安全性。 3.禁止对前置机使用Ftp传输文件 如果系统对用户的Ftp权限不做限制,那么用户不仅可以通过Ftp来获得操作系统的重要文件(如/etc/passwd、/etc/hosts等),还可以进一步得到其他重要的数据文件,造成数据的泄露。笔者单位的前置机上因装有多个应用系统,建立的用户也比较多,所以应对大部分用户的Ftp权限进行限制。具体做法是,创建编辑/etc/ftpusers文件,把不允许使用Ftp功能的用户写到该文件中,每个用户占一行,保存后即时生效,这些用户就不能使用Ftp命令进行连接了。 4.禁止外来主机远程登录到前置机 笔者单位以前曾经发生过这样的事情,某个信用社的系统管理员利用其他途径获得了另外一个信用社前置机的用户密码,于是他就通过自己的主机远程登录到另外那个信用社的计算机上,进行一些非法操作。虽然没造成严重的后果,但这件事给笔者敲响了警钟,必须严格限制非法登录。笔者首先在/etc/profile文件中case "$0" in -sh | -rsh | -ksh | -rksh)下添加限制非授权主机远程登录代码: remote_ip=who -mx|awk ‘{print $6}’ PTTY=who -mx|awk ‘{ printf“%.4s\n”, $2; }’ if [ “$PTTY” =“ttyp” ] then remote=who -mx if [ -n “remote_ip” -a “x$remote_ip” != “x” ] then case $remote_ip in 130.30.1.100) echo “成功 $remote $LOGNAME” >> /usr/adm/telnet.log;; 130.30.1.201) echo “成功 $remote $LOGNAME” >> /usr/adm/telnet.log;; sqls) echo “成功 $remote $LOGNAME”>> /usr/adm/telnet.log;; *) echo “被杀 $remote” >> /usr/adm/telnet.log echo “\n\t\t哈哈哈!你被我抓到了!你的地址($remote_ip)” echo “ ” exit esac fi fi 以上代码用来记录远程登录到本机的历史,笔者创建的日志文件为/usr/adm/telnet.log,该文件会记录远程用户登录时的用户名、时间、终端号以及IP地址,可以随时查看此文件。然后在所有用户的.profile文件里加入trap''0 1 2 3 14 15,屏蔽键盘中断,防止允许远程登录的主机用键盘中断进入操作系统的命令行提示符。 5.清除SCO Unix系统中的大漏洞 完成上面的几步后,应该说已经比较安全了,但还是存在不安全因素,因为SCO Unix 有一个大BUG——任何普通用户都可以成为超级用户,笔者相信知道这个漏洞的人不会很多,但作为一个金融计算机工作者,有必要向国内所有同行提个醒,及早消除安全隐患。可进行如下操作: ①用普通用户登录到系统,然后进入一个可以写的目录; ②ln /etc/shadow debug.log; ③/etc/sysadm.d/bin/userOsa >>ttt。 则/etc/shadow文件被覆盖,任何人可以用/etc/passwd中存在的任何用户登录而无需密码。若第二步改为ln /etc/passwd debug.log 则/etc/passwd被覆盖,谁也登录不上来了!之所以会出现这样的现象,主要是因为SCO Unix 中/etc/sysadm.d/bin/us- erOsa 程序在运行时会生成一个名叫debug.log的文件,这个文件用户属于root 组,而且此程序有BUG,不会检查用户权限,因此可以覆盖任何文件,包括passwd和shadow。你在一个可写目录中建立连接将某个文件指向debug.log文件,运行userOsa将出错信息写入debug.log文件时,实际上就覆盖了那个你想破坏的文件!奇怪的是,这个漏洞好像跟机器有关系,笔者单位有20%的计算机存在此漏洞,而其余的计算机做第二步连接时就报错。要清除此漏洞,可用超级用户登录,进到/etc/sysadm.d/bin下,执行chmod o-x userOsa即可。 [/code:1:f5a83aa794] |
li2002 回复于:2003-07-31 20:52:06 |
再来一篇了。
[code:1:d68692fa21] SCO TCP/IP网络管理---信任关系 http://www.xici.net 作者: 大鹰 (2001-05-11 10:07:35) 前面我们讲了FTP的配置,它在网络管理里面也是比较重要的一个服务,下面我们讲一 下网络管理的另一个比较重要的概念,就是信任关系。还是拿NT来做对比,在NT里面,建立 了信任关系后,比如A信任B,在B里的帐户就可以在A登录了,这对于administrator和user 来说都是一个非常方便的事情。同样,在UNIX系统中也有这样的管理方式,了解这个管理方 式对你学习UNIX的网络很重要哦,欺骗(spoofing)技术就是利用这种管理方式的。 UNIX中的受托访问可以让用户更方便,更安全的利用企业网络,增强网络的安全性。 如果没有为rlogin命令配置受托访问,它会提示用户输入密码。这个密码会通过网络, 甚至INTERNET来传输。含有这些密码的数据包就会很容易被识别和窃取。如果设置了受托访 问,就无需为rlogin设置密码。在没有受托访问的情况下,你甚至都无法使用rcmd和rcp命 令。系统管理员有责任管理受托访问及用户等同。下面列出了为r命令和TCP实用程序: rlogin Allows users to log into a remote host. If trusted access is set up. no password is needed,otherwise a password is needed. rcp Allows users to copy files from one host to another. Requires trusted access. telnet Similar to rlogin, only a user name and password are almost always required, and trusted access is not consulted ftp Similar to rcp, only a user name and password is always required and trusted access is not consulted 受托主机访问的意义在于可以规定一台主机完全“信任”另一台主机上的用户。这些用户在 那台主机上均有可识别的login名称,无需密码就可使用rlogin,rcp及rcmd命令。配置受托 主机访问要以root登录到系统中。主要步骤是编辑/etc/hosts.equiv文件,必要时还要创建 此文件。/etc/hosts.equiv文件中的每一选项规定的是那些有权访问该主机的远程系统。下 面是一个该文件的例 子: -------------------------------------------------------------------------------- barbados tortola bob guam -------------------------------------------------------------------------------- 假设该文件是一台名为corfu的机器上的设置,它们的意义分别如下: barbados barbados机器上与corfu中有相同的用户名的用户有权访问corfu。也就是 说,在barbados上的用户jane可以rlogin,rcp,rcmd到corfu的用户jane上,不需要给出 jane在corfu上的密码。 tortola bob 容许tortola上的用户bob可以用除root外的任何用户名访问corfu。不过, 这是很危险的。 root帐户是永远都不能与/etc/hosts.equiv文件的选项等同的。如果你是在INTERNET上, 为了安全起见,应该用/etc/hosts.equiv文件授权的主机名。配置受托用户访问,就是指定 另一系统上的“可信任”用户,他们可以不用密码即可通过rlogin,rcmd及rcp命令访问本系 统。与受托主机访问不同的饿是,受托用户访问可为用户在不同的机器上创建不同的login名 称。系统管理员可以为用户设置这项功能,也可以交给用户自己去做。配置受托用户访问的 主要步骤是在用户目录中创建或修改.rhosts文件。该文件必须是root或主目录所有者的,而 且只有所有者才可以写此文件,否则任何更改都是无效的。.rhosts文件格式 与/etc/hosts.equiv文件相同,但意义却不同,我们仍然可以以上面的例子来举例,假设那 些选项是corfu上用户jane的主目录下,则它的意义如下: barbados barbados上的用户jane是corfu上用户jane的授权用户,即前者可以jane这个名字rlogin,rcp,rcmd到corfu,而无需corfu上jane的密码。 tortola bob tortola上的用户bob是corfu上的用户jane的授权用户。即bob可以jane的名字rlogin,rcp,rcmd到corfu,只要使用社党的命令参数,不需要给出jane的密码。 无论系统执行rlogin命令,rcmd命令,还是rcp命令,系统会有一定的工作流程来确定是否已配置了受托访问。本地主机的受托访问通常经过以下步骤:1,用户发出前面提及的r类型命令。2,本地主机解析远程主机名,并获得它的IP地址。3,如果不能获得远程主机的IP地址,系统将显示错误信息:host_name:Host name lookup failure 。4,如果地道了远程主机的IP地址,r命令会通过TCP/IP与远程主机相连。 远程主机的受托访问通常经过以下步骤:1,在密码数据库上寻找用户帐户名称。2,如果在密码库没有找到帐户名,系统就不会执行rcmd和rcp命令。执行rlogin命令时则提示用户输入密码,然后显示该命令执行失败。3,系统检查用户帐户是否有一个加密的密码。4,如果 该帐户没有密码,系统即执行r命令。但这样捉是很危险的。通常系统用户都应有自己的密码,尤其是与INTERNET相连的情况下更应注意这一点。5,系统检查用户帐户名,判断该用户是否为root,如果不是,系统会检查/etc/host.equiv中是否有用户本地主机的名字。如果该文件中列出了本地主机名,系统开始执行r命令。6,如果第五步中检查到用户为root,或者虽然不是root,而/etc/host.equiv中也没有列出主机名,系统会检查远程用户主目录的.rhosts文件,看看其中是否包括了本地主机名或者本地用户名,具体使用哪种名称,取决于r命令的被调用方式。7,如果.rhosts文件包括了所需的选项,系统就执行r命令。 [/code:1:d68692fa21] |
延伸阅读
文章来源于领测软件测试网 https://www.ltesting.net/