分类:
2008-04-29 08:55:46
SSH(Secure Shell)最初由芬兰的一家公司开发,但由于受版权和加密算法的限制,很多人转而使用免费的替代软件OpenSSH。SSH是由客户端和服务端的软件组成的,有两个不兼容的版本,分别是:1.x和2.x。用SSH 2.x的客户程序是不能连接到SSH 1.x的服务程序上去的。OpenSSH 2.x同时支持SSH 1.x和2.x
solaris10使用的ssh服务器是opensshd,当然也有付费的商业版本的sshd出售。就目前的情况看来,openssh已经在你安装操作系统的时候默认安装在系统上了,而且这个服务会随系统自动运行。可以使用命令svcs查看ssh是否正常运行,如图2 如果已经正常运行可以关闭不安全的telnet服务。
图 2 关闭不安全的telnet服务 |
下面需要理解OPENSSH配置文件/etc/ssh/sshd_config。
“/etc/ssh/sshd_config” 配置文件是OpenSSH的配置文件,允许设置选项改变这个守护进程的运行。这个文件的每一行包含“关键词-值”的匹配,其中“关键词”是忽略大小写的。下面列出来的是最重要的关键词。编辑“sshd_config”文件(vi /etc/ssh/sshd_config),加入或改变下面的参数(#后是说明文字):
Protocol 2 #使用版本2协议# Port 22 # “Port”设置sshd监听的端口号。# ListenAddress :: #“ListenAddress”设置sshd服务器绑定的IP地址。# AllowTcpForwarding no #是否许可端口转发# GatewayPorts no #是否许可使用网关端口# X11Forwarding yes X11DisplayOffset 10 X11UseLocalhost yes #“X11Forwarding”设置是否允许X11转发。# PrintMotd no #“PrintMotd”设置sshd是否在用户登录的时候显示“/etc/motd”中的信息。# KeepAlive yes SyslogFacility auth LogLevel info #“LogLevel”设置记录sshd日志消息的层次。INFO是一个好的选择。查看sshd的man帮助页,已获取更多的信息。# HostKey /etc/ssh/ssh_host_rsa_key HostKey /etc/ssh/ssh_host_dsa_key #“HostKey”设置包含计算机私人密匙的文件。# ServerKeyBits 768 #“ServerKeyBits”定义服务器密匙的位数。# KeyRegenerationInterval 3600 #“KeyRegenerationInterval”设置在多少秒之后自动重新生成服务器的密匙(如果使用密匙)。重新生成密匙是为了防止用盗用的密匙解密被截获的信息。# StrictModes yes # StrictModes”设置ssh在接收登录请求之前是否检查用户家目录和rhosts文件的权限和所有权。这通常是必要的,因为新手经常会把自己的目录和文件设成任何人都有写权限# LoginGraceTime 600 MaxAuthTries 6 MaxAuthTriesLog 3 PermitEmptyPasswords no #是否许可空密码登录# PasswordAuthentication yes #“PasswordAuthentication”设置是否允许口令验证。# PAMAuthenticationViaKBDInt yes PermitRootLogin no #是否许可root用户登录# # sftp subsystem Subsystem sftp /usr/lib/ssh/sftp-server IgnoreRhosts yes RhostsAuthentication no RhostsRSAAuthentication no #“RhostsAuthentication”设置只用rhosts或“/etc/hosts.equiv”进行安全验证是否已经足够。# RSAAuthentication yes #“RSAAuthentication”设置是否允许只有RSA安全验证。# |
另外一个配置文件是“/etc/ssh/ssh_config”文件是OpenSSH系统范围的配置文件,允许你通过设置不同的选项来改变客户端程序的运行方式下面逐行说明上面的选项设置:
Host * :选项“Host”只对能够匹配后面字串的计算机有效。“*”表示所有的计算机。 |
你可以修改这两个配置文件以获得更好的安全性。