SSHD服务
介绍:SSH 协议:安全外壳协议。为 Secure Shell 的缩写。SSH 为创建在应用层和传输层基础上的安全协议。算法
做用
sshd服务使用SSH协议能够用来进行远程控制, 或在计算机之间传送文件
相比较以前用telnet方式来传输文件要安全不少,由于telnet使用明文传输,是加密传输。vim
SSH服务安装
这里用yum安装
[root@compy ~]# yum -y install openssh openssh-clients openssh-server openssh-askpass 安全
SSH 配置文件
SH 经常使用配置文件有两个/etc/ssh/ssh_config 和/etc/sshd_config。
ssh_config 为客户端配置文件
sshd_config 为服务器端配置文件ruby
服务启动关闭脚本服务器
[root@compy ~]# cd /etc/ssh [root@compy ssh]# pwd /etc/ssh [root@compy ssh]# service sshd restart
开机启动服务ssh
[root@compy ~]# chkconfig sshd on [root@compy ~]# chkconfig --list sshd sshd 0:off 1:off 2:on 3:on 4:on 5:on 6:off
如何使用ssh来远程链接主机
方法一
一、ssh [远程主机用户名] @[远程服务器主机名或IP地址]
若是用root进程登陆远程主
[root@compy ssh]# ssh 192.168.100.156
普通用户:tcp
[root@compy ~]# useradd compy && echo 123456 | passwd --stdin compy [root@compy ssh]# ssh compy@192.168.100.156
第一次登陆服务器时系统没有保存远程主机的信息,为了确认该主机身份会提示用户是否继续连
接,输入yes 后登陆,这时系统会将远程服务器信息写入用户主目录下的$HOME/.ssh/known_hosts 文件中,下次再进行登陆时由于保存有该主机信息就不会再提示了加密
[root@compy ~]# cat /root/.ssh/known_hosts 192.168.100.155 ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEA7B2ow9G9mtjXOdFf0OaRGeJDgAjENY99fHd4Z2R1J7rJH0qpcCVGnIbyAGlZml6XYoUZ8yJunOgA5wh7wKCRUqlT2Xwo5LQ7GH21Q2oiDkeiGFbn0woshZJwsCxpBbcmfzT63RXdHKlBny5pC1rINmlzOnXzvSk/1Wxc8eNn8fMMbP4u2yn7sp9U27Gm5iHkGcIoyPqhP6G5oQ/LoRQFCzhiPQXFf8a8twYDy4jVBt1FJpFJiHBZdiXVlujTCucr0TFXw8UHt9Dq7ZRZrqd74ASz8f5Kp7XdagumpDgb1/DqAY6m/NLdT9qhG4TnhJwfIcjv+EI30raVgcMEYweM9w==
RSA算法基于一个十分简单的数论事实:将两个大素数相乘十分容易,可是想要对其乘积进行因式分解却极其困难,所以能够将乘积公开做为加密密钥。spa
方法二
ssh -l [远程主机用户名] [远程服务器主机名或IP 地址]
例:ssh -l compy 192.168.100.156
-l login_namerest
SSHD配置文件及安全配置
/etc/ssh/sshd_config 配置文件
Port 22
设置sshd 监听端口号
注释: SSH 预设使用 22 这个port,也可使用多个port,即重复使用 port 这个设定项目! 例如想要开放 sshd
端口为 22和 2200 ,则多加一行内容为: Port 2200 便可 而后从新启动 sshd 这样就行了。 建议你们修改 port
number 为其它端口。防止别人暴力破解。
修改sshd服务默认监听的端口为2200
[root@compy ~]# vim /etc/ssh/sshd_config
改:
Port 22
为:
Port 2200
[root@compy ssh]# service sshd restart #重启服务 [root@compy ~]# netstat -tlunp | grep sshd #查看端口 tcp 0 0 0.0.0.0:2200 0.0.0.0:* LISTEN 4139/sshd tcp 0 0 :::2200 :::* LISTEN 4139/sshd
修改完端口默认端口后,登陆方法:
[root@compy ~]# ssh -p 2200 192.168.100.156
ListenAddress 0.0.0.0
设置sshd 服务器绑定的IP 地址,0.0.0.0 表示侦听全部地址 好比192.168.100.155这个机器只容许100.155来远程登陆,那么能够设置
ListenAddress 192.168.100.155
Protocol 2
选择的 SSH 协议版本,能够是 1 也能够是 2 ,CentOS 5.x 预设是仅支援 V2。 安全考虑,设置为最新的协议版本
SyslogFacility AUTHPRIV
当有人使用 SSH 登入系统的时候,SSH 会记录信息,这个信息要记录的类型为AUTHPRIV。
登陆系统的默认日志存/var/log/secure
LogLevel INFO
登陆记录的等级!INFO级别以上。
LoginGraceTime 2m
当使用者连上 SSH server 以后,会出现输入密码的画面,在该画面中,
在多久时间内没有成功连上 SSH server
就强迫断线!若无单位则默认时间为秒! 能够根据实际状况来修改实际
PermitRootLogin yes
是否容许 root 登入!预设是容许的,可是建议设定成 no !
真实的生产环境服务器,是不容许root帐号登录的!!!
PasswordAuthentication yes
密码验证固然是须要的!因此这里写 yes,也能够设置为no
在真实的生产服务器上,根据不一样安全级别要求,有的是设置不须要密码登录的,经过认证的秘钥来登录
PermitEmptyPasswords no
若上面那一项若是设定为 yes 的话,这一项就最好设定为 no
这个项目在是否容许以空的密码登入!固然不准!
PrintMotd yes
登入后是否显示出一些信息呢?例如上次登入的时间、地点等等,预设是 yes
亦便是打印出 /etc/motd 这个文档的内容给sshd服务添加一些警告信息
[root@compy ~]# cat /etc/motd
[root@compy ~]# echo 'Warning !
From now on, all of your operation has been 4record!'> /etc/motd
PrintLastLog yes
显示上次登入的信息!预设也是 yes!
UseDNS yes
通常来讲,为了要判断客户端来源是正常合法的,所以会使用 DNS 去反查客户端的主机名 不过若是是在内网互连,这项目设定为 no会让联机速度比较快