sshd 配置的配置文件端口用开吗?

文章数:86
访问量:338207
注册日期:
阅读量:5863
阅读量:12276
阅读量:323805
阅读量:1033777
51CTO推荐博文
&现在远程管理linux系统基本上都要使用到ssh,原因很简单:telnet、FTP等传输方式是&以明文传送用户认证信息,本质上是不安全的,存在被网络窃听的危险。SSH(Secure Shell)目前较可靠,是专为远程登录会话和其他网络服务提供安全性的协议。利用SSH协议可以有效防止远程管理过程中的信息泄露问题,透过SSH可以对所有传输的数据进行加密,也能够防止DNS欺骗和IP欺骗。
ssh_config和sshd_config都是ssh服务器的配置文件,二者区别在于,前者是针对客户端的配置文件,后者则是针对服务端的配置文件。两个配置文件都允许你通过设置不同的选项来改变客户端程序的运行方式。下面列出来的是两个配置文件中最重要的一些关键词,每一行为&关键词&值&的形式,其中&关键词&是忽略大小写的。
&&1、编辑 /etc/ssh/ssh_config 文件
# Site-wide defaults for various options
&&&&&&&&ForwardAgent no
&&&&&&&&ForwardX11 no
&&&&&&&&RhostsAuthentication no
&&&&&&&&RhostsRSAAuthentication no
&&&&&&&&&RSAAuthentication yes
&&&&&&&&PasswordAuthentication yes
&&&&&&&&FallBackToRsh no
&&&&&&&&UseRsh no
&&&&&&&&BatchMode no
&&&&&&&&CheckHostIP yes
&&&&&&&&StrictHostKeyChecking no
&&&&&&&&IdentityFile ~/.ssh/identity
&&&&&&&&Port 22
&&&&&&&&Cipher blowfish
&&&&&&&&EscapeChar ~
下面对上述选项参数逐进行解释:
# Site-wide defaults for various options
带&#&表示该句为注释不起作,该句不属于配置文件原文,意在说明下面选项均为系统初始默认的选项。说明一下,实际配置文件中也有很多选项前面加有&#&注释,虽然表示不起作用,其实是说明此为系统默认的初始化设置。
&Host&只对匹配后面字串的计算机有效,&*&表示所有的计算机。从该项格式前置一些可以看出,这是一个类似于全局的选项,表示下面缩进的选项都适用于该设置,可以指定某计算机替换*号使下面选项只针对该算机器生效。
ForwardAgent no
&ForwardAgent&设置连接是否经过验证代理(如果存在)转发给远程计算机。
ForwardX11 no
&ForwardX11&设置X11连接是否被自动重定向到安全的通道和显示集(DISPLAY set)。
RhostsAuthentication no
&RhostsAuthentication&设置是否使用基于rhosts的安全验证。
RhostsRSAAuthentication no
&RhostsRSAAuthentication&设置是否使用用RSA算法的基于rhosts的安全验证。
RSAAuthentication yes
&RSAAuthentication&设置是否使用RSA算法进行安全验证。
PasswordAuthentication yes
&PasswordAuthentication&设置是否使用口令验证。
FallBackToRsh no
&FallBackToRsh&设置如果用ssh连接出现错误是否自动使用rsh,由于rsh并不安全,所以此选项应当设置为&no&。
&UseRsh&设置是否在这台计算机上使用&rlogin/rsh&,原因同上,设为&no&。
BatchMode no
&BatchMode&:批处理模式,一般设为&no&;如果设为&yes&,交互式输入口令的提示将被禁止,这个选项对脚本文件和批处理任务十分有用。
CheckHostIP yes
&CheckHostIP&设置ssh是否查看连接到服务器的主机的IP地址以防止DNS欺骗。建议设置为&yes&。
StrictHostKeyChecking no
&StrictHostKeyChecking&如果设为&yes&,ssh将不会自动把计算机的密匙加入&$HOME/.ssh/known_hosts&文件,且一旦计算机的密匙发生了变化,就拒绝连接。
IdentityFile ~/.ssh/identity
&IdentityFile&设置读取用户的RSA安全验证标识。
&Port&设置连接到远程主机的端口,ssh默认端口为22。
Cipher blowfish
&Cipher&设置加密用的密钥,blowfish可以自己随意设置。
EscapeChar ~
&EscapeChar&设置escape字符。
2、编辑 /etc/ssh/sshd_config 文件:&
# This is ssh server systemwide configuration file.
&&&&&&&&&&Port 22
&&&&&&&&&&ListenAddress 192.168.1.1
&&&&&&&&&&HostKey /etc/ssh/ssh_host_key
&&&&&&&&&&ServerKeyBits 1024
&&&&&&&&&&LoginGraceTime 600
&&&&&&&&&&KeyRegenerationInterval 3600
&&&&&&&&&&PermitRootLogin no
&&&&&&&&&&IgnoreRhosts yes
&&&&&&&&&&IgnoreUserKnownHosts yes
&&&&&&&&&&StrictModes yes
&&&&&&&&&&X11Forwarding no
&&&&&&&&&&PrintMotd yes
&&&&&&&&&&SyslogFacility AUTH
&&&&&&&&&&LogLevel INFO
&&&&&&&&&&RhostsAuthentication no
&&&&&&&&&&RhostsRSAAuthentication no
&&&&&&&&&&RSAAuthentication yes
&&&&&&&&&&PasswordAuthentication yes
&&&&&&&&&&PermitEmptyPasswords no
&&&&&&&&&&AllowUsers admin
&下面逐行说明上面的选项设置:
&Port&设置sshd监听的端口号。
ListenAddress 192.168.1.1
&ListenAddress&设置sshd服务器绑定的IP地址。
HostKey /etc/ssh/ssh_host_key
&HostKey&设置包含计算机私人密匙的文件。
ServerKeyBits 1024
&ServerKeyBits&定义服务器密匙的位数。
LoginGraceTime 600
&LoginGraceTime&设置如果用户不能成功登录,在切断连接之前服务器需要等待的时间(以秒为单位)。
KeyRegenerationInterval 3600
&KeyRegenerationInterval&设置在多少秒之后自动重新生成服务器的密匙(如果使用密匙)。重新生成密匙是为了防止用盗用的密匙解密被截获的信息。
PermitRootLogin no
&PermitRootLogin&设置是否允许root通过ssh登录。这个选项从安全角度来讲应设成&no&。
IgnoreRhosts yes
&IgnoreRhosts&设置验证的时候是否使用&rhosts&和&shosts&文件。
IgnoreUserKnownHosts yes
&IgnoreUserKnownHosts&设置ssh daemon是否在进行RhostsRSAAuthentication安全验证的时候忽略用户的&$HOME/.ssh/known_hosts&
StrictModes yes
&StrictModes&设置ssh在接收登录请求之前是否检查用户家目录和rhosts文件的权限和所有权。这通常是必要的,因为新手经常会把自己的目录和文件设成任何人都有写权限。
X11Forwarding no
&X11Forwarding&设置是否允许X11转发。
PrintMotd yes
&PrintMotd&设置sshd是否在用户登录的时候显示&/etc/motd&中的信息。
SyslogFacility AUTH
&SyslogFacility&设置在记录来自sshd的消息的时候,是否给出&facility code&。
LogLevel INFO
&LogLevel&设置记录sshd日志消息的层次。INFO是一个好的选择。查看sshd的man帮助页,已获取更多的信息。
RhostsAuthentication no
&RhostsAuthentication&设置只用rhosts或&/etc/hosts.equiv&进行安全验证是否已经足够了。
RhostsRSAAuthentication no
&RhostsRSA&设置是否允许用rhosts或&/etc/hosts.equiv&加上RSA进行安全验证。
RSAAuthentication yes
&RSAAuthentication&设置是否允许只有RSA安全验证。
PasswordAuthentication yes
&PasswordAuthentication&设置是否允许口令验证。
PermitEmptyPasswords no
&PermitEmptyPasswords&设置是否允许用口令为空的帐号登录。
AllowUsers admin
&AllowUsers&的后面可以跟任意的数量的用户名的匹配串,这些字符串用空格隔开。主机名可以是域名或IP地址。
了这篇文章
类别:┆阅读(0)┆评论(0)当前位置:&>&&>&&>&
SSH服务监听多个端口的配置方法
发布时间:编辑:
SSH 监听多个端口
SSH服务监听多个端口的配置方法,感兴趣的朋友可以参考下。
配置sshd监听多个端口,编辑sshd_config,增加ListenAddress选项 & 指定监听的网络地址,默认监听所有地址。
可以使用下面的格式:
ListenAddress host|IPv4_addr|IPv6_addr
ListenAddress host|IPv4_addr:port
ListenAddress [host|IPv6_addr]:port
如果未指定 port ,那么将使用 Port 指令的值。可以使用多个 ListenAddress 指令监听多个地址。
vi /etc/ssh/sshd_config
复制代码 代码如下:
ListenAddress 0.0.0.0:22
ListenAddress 0.0.0.0:181
ListenAddress 0.0.0.0:183
即监听22, 181, 183 (Port选项的端口也要加上)
/etc/init.d/ssh restart
重启生效。
与 SSH服务监听多个端口的配置方法 有关的文章
本文标题:
本页链接:
12345678910
12345678910SSH配置文件sshd_config详解
OpenSSH在Red Hat
Linux企业级版本中是默认安装的,一般的安装目录为/etc/ssh,对应的服务器配置文件为/etc/ssh/sshd_config。我们重点讲述这个配置文件中每个选项的含义。
  1.&&&&&[root@localhost
~]# vi /etc/ssh/sshd_config
  2.&&&&&Port
  3.&&&&&("Port"用来设置sshd监听的端口,这里采用的是默认的端口号22)
  4.&&&&&#Protocol
  5.&&&&&(设置使用的ssh协议为ssh1或ssh2,如果仅仅使用ssh2,
  设置为Protocol 2即可)
  6.&&&&&#ListenAddress
  7.&&&&&("ListenAddress"用来设置sshd服务器绑定的IP地址)
  8.&&&&&#
HostKey for protocol version 1
  9.&&&&&#HostKey
/etc/ssh/ssh_host_key
  10. # HostKeys for protocol version 2
  11. #HostKey /etc/ssh/ssh_host_rsa_key
  12. #HostKey /etc/ssh/ssh_host_dsa_key
  13. ("HostKey"用来设置服务器密匙文件的路径)
  14. #KeyRegenerationInterval 1h
  15. ("KeyRegenerationInterval"用来设置在多少秒之后
  系统自动重新生成服务器的密匙(如果使用密匙)。重新生成
  密匙是为了防止利用盗用的密匙解密被截获的信息)
  16. #ServerKeyBits 768
  17. ("ServerKeyBits"用来定义服务器密匙的长度)
  18. SyslogFacility AUTHPRIV
  19. ("SyslogFacility"用来设定在记录来自sshd的消息的时候,
  是否给出"facility code")
  20. #LogLevel INFO
  21. ("LogLevel"用来记录sshd日志消息的级别)
  22. #LoginGraceTime 2m
  23. ("LoginGraceTime"用来设置如果用户登录失败,在切断
  连接前服务器需要等待的时间,以秒为单位)
  24. PermitRootLogin no
  25. ("PermitRootLogin"用来设置超级用户root能不能用SSH登
  录。root远程登录Linux是很危险的,因此在远程SSH登录Linux
  系统时,这个选项建议设置为"no")
  26. #StrictModes yes
  27. ("StrictModes"用来设置SSH在接收登录请求之前是否检查
  用户根目录和rhosts文件的权限和所有权。此选项建议设置为"yes")
  28. #RSAAuthentication yes
  29. ("RSAAuthentication"用来设置是否开启RAS密钥验证,
  如果采用RAS密钥登录方式时,开启此选项)
  30. #PubkeyAuthentication yes
  31. ("PubkeyAuthentication"用来设置是否开启公钥验证,
  如果采用公钥验证方式登录时,开启此选项)
#AuthorizedKeysFile&&&&&.ssh/authorized_keys
  33. ("AuthorizedKeysFile"用来设置公钥验证文件的路径,
  与"PubkeyAuthentication"配合使用)
  34. # similar for protocol version 2
  35. #HostbasedAuthentication no
  36. #IgnoreUserKnownHosts no
  37. ("IgnoreUserKnownHosts"用来设置SSH在进行
  RhostsRSAAuthentication安全验证时是否忽略用户
  的"$HOME/.ssh/known_hosts"文件)
  38. #IgnoreRhosts yes
  39. ("IgnoreRhosts"用来设置验证的时候是否使用
  "~/.rhosts"和"~/.shosts"文件)
  40. PasswordAuthentication yes
  41. ("PasswordAuthentication"用来设置是否开启密
  码验证机制,如果是用密码登录系统,应设置为"yes")
  42. PermitEmptyPasswords no
  43. ("PermitEmptyPasswords"用来设置是否允许用口令为
  空的账号登录系统,肯定是"no"了)
  44. X11Forwarding yes
  45. ("X11Forwarding"用来设置是否允许X11转发)
  46. #PrintMotd yes
  47. ("PrintMotd"用来设置sshd是否在用户登录的时候显示"/etc/motd"中的信息)
  上面括号中带下划线的内容为注释,是对sshd_config配置文件中每个选项含义的解释,这里仅仅列出最常用的一些选项,也是我们给出的推荐配置。
  对sshd_config文件配置完毕,接着重启sshd守护进程,使修改生效:
  /etc/init.d/sshd restart
  /etc/init.d/sshd restart
这里要切记的是,重启sshd服务,一定要到Linux系统本机去执行,如果在SSH远程连接环境下重启sshd服务,你就会被关在门外!
  最后一步是设置sshd服务开机自动启动,只需执行如下命令即可:
  chkconfig --level 35 sshd on
  chkconfig --level 35 sshd on
  这样sshd服务会在系统运行级3和5下自动启动。
已投稿到:
以上网友发言只代表其个人观点,不代表新浪网的观点或立场。5561人阅读
Linux运维(70)
1. 服务端口
在TCP通信连接中需要三次握手,而三次握手需要两个基本元素:IP地址 &prot 端口;
通常对于一台机器的所有端口都是开启的;比如21 &23 .....80 443 9999 等端口:
telnet hostname 80
Trying 10.26.157.167...
telnet: connect to address 10.26.157.167: Connection refused
telnet: Unable to connect to remote host: Connection refused
telnet hostname 21
Trying 10.26.157.167...
telnet: connect to address 10.26.157.167: Connection refused
telnet: Unable to connect to remote host: Connection refused
只有通过服务对某一个端口开启,这个端口才是通的;比如 22 端口,一般我们的机器都是通的。那是对我们的服务器都启动sshd 服务,而在sshd 服务的配置文件中启用了22端口;当然我们也可以通过修改 sshd的配置文件:/etc/ssh/sshd_config &来改变ssh 使用的端口。
对于一般的web端口80 其实如果服务器没有启动 web 服务,那80端口也是不通的,而当启动web服务后才是通的。
2. sshd 的配置文件
2.1 安装sshd 的包
裸的服务器上面什么也没有,只有安装了服务包,启动服务后才能是可以服务的。
openssh-server-4.3p2-72.el5_6.3
openssh-clients-4.3p2-72.el5_6.3
openssh-4.3p2-72.el5_6.3
2.2 sshd 的配置文件
/etc/ssh/sshd_config
Protocol 2,1
ListenAddress 0.0.0.0
ListenAddress ::
# HostKey for protocol version 1
HostKey /etc/ssh/ssh_host_key
# HostKeys for protocol version 2
HostKey /etc/ssh/ssh_host_dsa_key
prot:说明sshd 使用的端口 &可以设置多个端口:22 、2222protocol:是通道的类型 & 上面说 sshd &私钥1 &私钥2 都支持配置文件中还有很多选项,这些选项也有各种作用。
2.3 &启动sshd 服务
因为 所有的服务器都默认启动ssh 服务,而且默认是22 端口;所以不要修改&/etc/ssh/sshd_config;如果把这个端口改了那登录机器需要用指定的端口;
但是如果把sshd服务停了;更甚把ssh包卸载了;那这台机器就彻底不能登录了。
sudo service sshd restart
这样sshd 服务就已经启动了;client就可以登录这台机器;二期 &22 2222 两个端口都是通的。如果是临时的让这个端口不可用可以采取下面的方式:
sudo sed -i -e 's/^Port 3333$/Port 2222/' /etc/ssh/sshd_sudo service sshd restart
sudo sed -i -e 's/^Port 2222$/Port 3333/' /etc/ssh/sshd_sudo service sshd restart
2.4 关闭 2222 端口的sshd 服务
直接在sshd 配置文件中把端口 2222 去掉;这2222端口的ssh就不通了;
2.5 LVS 提供2222 登录 机器的功能
首先 LVS 下面挂载realserver 然后配置2222端口提供服务所有的realserver都要开通 2222 端口的sshd 服务【上面的配置文件】这样这个LVS才可以提供2222端口的sshd 服务
3. sshd 允许登陆的ip 白名单或者黑名单
3.1 白名单设置:一般只允许指定的ip ssh 登陆机器
cat /etc/hosts.deny
#所有的都不允许ssh 登陆,无论什么用户
cat /etc/hosts.allow #允许下面的ip/ip 段登陆
sshd:10.xx.xx.xxx:allow
sshd:10.xx.xx.xxx:allow
参考知识库
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:477880次
积分:5949
积分:5949
排名:第2892名
原创:219篇
转载:17篇
评论:20条
(6)(1)(21)(23)(5)(3)(6)(8)(3)(4)(2)(1)(2)(2)(1)(3)(1)(1)(2)(8)(5)(4)(3)(5)(8)(2)(1)(2)(5)(2)(4)(3)(1)(4)(2)(4)(10)(11)(2)(5)(1)(5)(8)(4)(4)(8)(16)(4)(1)(1)}

我要回帖

更多关于 sshd 配置 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信