1、 下载完后将文件解压缩
tar zxvf SSH-1.2.31.tar.gz
2、 开始编译,安装
cd SSH-1.2.31;
./configure;
make;
make install;
3、 编辑/etc/rc.d/rc.local加入/usr/sbin/SSHd以便开机自动启动。
4、 完成
如果你是2台Linux要相连就都要装这个程序,如果是Windows系统要连Linux的话就要安装for Winxx的程序。Winxx部分请自己试试。
Linux的使用方法
/usr/bin/SSH -l username 187.136.5.1
然后输入密码,连进去后是一般的文字界面,就可以开始用了。
另外,SSH可以直接使用root登入。
注:如果你要对连接进来的IP做限制的话可以编辑/etc/hosts.deny和/etc/hosts.allow
示例如下:
/etc/hosts.deny:
ALL:ALL
#禁止所有IP使用所有的服务
/etc/hosts.allow:
SSHd:111.222.333.444
#开放111.222.333.444使用SSH连接
利用SSH来ftp
1、 Linux对Linux传文件:
上传:scp wrong.php bha@187.136.5.1:
这时会问你密码,输入密码吧。
说明:
scp是指令
wrong.php是本地端的文件名
bha@187.136.5.1是远端的用户(user name)和IP
最后记住那个冒号一定要加,那是远端的home directory。
下传:scp bha@187.136.5.1:wrong.php .
说明:
用scp将bha@187.136.5.1目录的wrong.php拷贝到目前的目录(就是那个.)
2、 Win对Linux传文件:
ls:就是dir
et:下传文件
put:上传文件
exit:退出ftp程序
指令:psftp-x86 187.136.5.1
这时会问名字密码和要不要产生加密键值,然后再用put和get来上下传文件。
什么是 RSA/DSA 认证?
SSH,特别是 OpenSSH(完全免费的 SSH 的实现),是一个不可思议的工具。类似于 telnet 或 rsh,ssh 客户程序也可以用于登录到远程机器。所要求的只是该远程机器正在运行 sshd,即 ssh 服务器进程。但是,与 telnet 不同的是,ssh 协议非常安全。加密数据流,确保数据流的完整性,甚至安全可靠的进行认证它都使用了专门的算法。
然而,虽然 ssh 的确很棒,但还是有一个 ssh 功能组件常常被忽略、被危险的误用或者简直就是被误解。这个组件就是 OpenSSH 的 RSA/DSA 密钥认证系统,它可以代替 OpenSSH 缺省使用的标准安全密码认证系统。
OpenSSH 的 RSA 和 DSA 认证协议的基础是一对专门生成的密钥,分别叫做专用密钥和公用密钥。使用这些基于密钥的认证系统的优势在于:在许多情况下,有可能不必手工输入密码就能建立起安全的连接。
尽管基于密钥的认证协议相当安全,但是当用户并不完全了解这些简化操作对安全性的影响,为了方便而使用某些简化操作时,就会出现问题。本文中,我们将详细讨论如何正确使用 RSA 和 DSA 认证协议,使我们不会冒任何不必要的安全性风险。在我的下一篇文章里,我将向您展示如何使用 ssh-agent 隐藏已经解密的专用密钥,还将介绍 keychain,它是 ssh-agent 的前端,可以在不牺牲安全性的前提下提供许多便利。
使用说明
Usage: ssh [options] host [command]
Options:
-l user Log in using this user name.(用户名)
-n Redirect input from /dev/null.
-a Disable authentication agent forwarding.
-x Disable X11 connection forwarding.
-i file Identity for RSA authentication (default: ~/.ssh/identity).
-t Tty; allocate a tty even if command is given.
-v Verbose; display verbose debugging messages.
-V Display version number only.
-q Quiet; don't display any warning messages.
-f Fork into background after authentication.
-e char Set escape character; ``none'' = disable (default: ~).
-c cipher Select encryption algorithm: ``idea'', ``blowfish'', ``3des''
-p port Connect to this port. Server must be on the same port.
-P Don't use privileged source port.
-L listen-port:host:port Forward local port to remote address
-R listen-port:host:port Forward remote port to local address
These cause ssh to listen for connections on a port, and
forward them to the other side by connecting to host:port.
-C Enable compression.
-g Allow remote hosts to connect to local port forwardings
-o 'option' Process the option as if it was read from a configuration file.
一 概述:
本文主要目的是简单介绍如何在局域网上设置一台Linux时间服务器与互联网上的时间服务器同步并且如何使局域网上其它Linux及Windows客户向该Linux时间服务器同步。
二 服务器设置
首先说明我们如何设置LAN上的时间服务器同互联网上的第一或者第二级时间服务器同步来保证精确的时间。
1. 如何让LAN的时间服务器(第三级)与互联网上的时间服务器(第一或者第二级)同步
a. XNTP包,包含在大多数Linux CD里面。
主页在http://www.eecis.udel.edu/~ntp/
你只需要在/etc/ntp.conf中设置server和driftfile两项参数即可,server项你可以从上面的主页中找公共的时间服务器域名。例如
server rackety.udel.edu
server umd1.umd.edu
server lilben.tn.cornell.edu
driftfile /etc/ntp/drift
然后启动XNTPD后台程序
#/etc/rc.d/init.d/xntpd start
b. "getdate",随Slackware而来的小程序,推荐使用,大多数时候,我们对时间的精确性要求不是非常的苛刻,所以这个程序完全够用而且很方便。
下载ftp://metalab.unc.edu/pub/Linux/system/network/misc/getdate_rfc868-1.2.tar.gz
然后设置下面的scripts 取名为/usr/local/sbin/get-date.sh
#!/bin/sh
timehosts="otc2.psu.edu wwvb.erg.sri.com ntp.nasa.gov"
if /usr/local/bin/getdate -adjust 10 200 $timehosts > /dev/null; then
/sbin/clock --systohc
fi
现在可以设置cronjob每小时进行同步
0 0-23 * * * /usr/local/sbin/get-date.sh
2. 如何使得LAN上其它linux/windows客户与该台服务器同步
a. 如果该台时间服务器也是局域网上的Samba服务器,则对Windows来说,不需要安装任何时间同步软件,因为windows客户可以用
net time imeserver /set /yes来与之同步。可以放该命令在startup
中自次启动windows时自动同步
net time 命令利用Netbios over TCP/IP协议来同步时间
但仅对Windows客户有效,Linux客户无法使用。
b. 如果服务器运行NTP后台服务程序,例如前面讲的XNTPD,则对
Windows:
可以安装下面的两个免费软件与服务器同步
http://home.att.net/~Tom.Horsley/ntptime.html (ntptime)
单一的后台程序,自动寻找LAN上的NTP服务器,可在控制面板中设置同步条件
http://nettime.sourceforge.net/ (Nettime)
支持NTP(udp/123) , time(udp/37), time(tcp/37)
Linux:
则可以用ntpdate(随XNTPD而来)运行作为cronjob 与 该局域网上的时间服务器同步。
c. 如果该台服务器使用getdate与互联网上时间服务器同步,则
你可以设置/etc/inetd.conf,打开time udp和time tcp服务,让linux/windows客户与之同步。对windows,你可以使用象上面介绍的Nettime软件。
对Linux客户,你可以用rdate -s 运行作为cronjob 与之同步
time stream tcp nowait root internal
time dgram udp wait.200 root internal
Linux下的rdate -s 命令使用time (37/tcp) , Nettime 你可以指定37/tcp或者37/udp
三 FAQ
1. 怎样确定net time用的是Netbios over TCP/IP?
在Samba服务器上运行tcpdump
# /usr/sbin/tcpdump host 192.168.1.3
(192.168.1.3是windows客户端的IP地址)
2. 怎样确定windows NTP客户ntptime正在后台与Linux NTP时间服务器同步?
在NTP服务器上运行
# tcpdump udp port 123
查看输出
默认是每五分钟ntptime向NTP服务器查询一次,你可以从主页上下载控制面板中的控制条件设置程序
DNS问答集
DNS配置问答集
Q:最近,我在公司的三台电脑上安装了REDHAT5.2(132.20.10.22),REDHAT6.0(132.20.10.254),WIN95 (132.20.10.23)
想实验一下LINUX下的DNS,将REDHAT6.0(132.20.10.254)作为DNS服务器,按照说明配置好,然后在REDHAT5.2 (132.20.10.22)上启动NSLOOKUP 进行测试,显示如下内容:
*** Cant find server name for address 132.20.10.254:server failed
*** Default servers are not available
在REDHAT6.0(132.20.10.254)上启动NSLOOKUP 进行测试,显示同样的出错内容.
这俩台电脑互相能PING通,在REDHAT6.0(132.20.10.254)上已经启动了DNS服务进程,用NDC STOP关掉,然后用NDC START启动,还是不行,没着了,下面我将相关的配置文件列示如下,请各位有经验的朋友解答一下: