分类: 嵌入式
2010-04-10 13:32:19
1.ssh2协议连接服务器时,服务器的sshd(/usr/sbin/sshd)必须是运行着的。
当已经与服务器连接正常后,关闭服务器端的sshd(/usr/sbin/sshd),连接仍能正常工作。
因为/usr/sbin/sshd为每个连接建立一个进程,如下所示:
[root@localhost ~]# ps -ajx | grep ssh
Warning: bad syntax, perhaps a bogus '-'? See /usr/share/doc/procps-3.2.7/FAQ
1 2221 2221 2221 ? -1 Ss 0 0:00 /usr/sbin/sshd
2782 2882 2882 2882 ? -1 Zs 0 0:00 [ssh-agent]
2221 7554 7554 7554 ? -1 Ss 0 0:00 sshd:
7586 7965 7964 7586 pts/1 7964 R+ 0 0:00 grep ssh
---其中"sshd: "对应当前一个ssh连接,它是/usr/sbin/sshd的子进程。
2.chkconfig --list命令查看系统默认启动了哪些服务。
service sshd stop 关闭sshd服务后,chkconfig --list并不会显示出来,因为chkconfig --list显示的并不是系统现在有哪些服务在运行,而是系统默认启动了哪些服务。用service sshd stop关闭的服务,在下次系统重启后,服务仍会被打开。
chkconfig --level 5 sshd off 并不会关闭服务,这时会在chkconfig --list中显示出来,表示重启系统后,该服务会被关闭。(--level 5表示关闭运行级别为5的sshd服务).
service sshd status查看sshd服务进程的运行状态。
3./etc/services中有各种网络服务使用的端口号。
4.修改/etc/services文件可修改sshd服务的端口号吗?不能。/etc/services什么作用呢?
/etc/services里面端口号对xinetd管理的网络服务有用。stand-alone类型服务不使用这个
文件,stand-alone类型网络服务的配置文件一般在/etc/sysconfig/目录下,在其配置文件
中可更改其服务的端口号。
6./etc/sysconfig/iptables配置接受或不接受哪些端口号的数据包,这应该就是防火墙的功能
---iptables其实就是linux上的防火墙,它是一个stand-alone类型服务。
5./etc/services和/etc/ssh/sshd_config都可以进行端口设置,那么哪个起作用呢?
在sshd_config中添加Port 4022,/etc/services不用更改,然后service sshd restart。
这样,sshd 端口号变为4022,再用sercureCRT建立ssh连接时设置连接的端口号为4022,否则
连接不上。
相反,只更改/etc/services里面的ssh端口号根本不起作用。
原因:本人机器上sshd服务是stand-alone类型,而不是由xinetd管理的。
7.修改防火墙,禁止对某一端口的连接请求的方法?
修改/etc/sysconfig/iptables文件禁止相应的端口。