linux ssh 安装、安全设置

环境:ubuntu 12.04
 

一、简单安装设置

1. 安装ssh 服务器

$ sudo apt-get install openssh

2. 查看运行状态

$ service ssh status

3. 设置(/etc/ssh/sshd_config)

* 禁用root用户登录  
PermitRootLogin yes #yes改为no

* 端口扫描软件默认扫描22端口,修改为其它端口。

port 

* 设置最大密码错误次数

MaxAuthTries 

4. 重启

$ sudo service ssh restart

5. 查看ssh登录日志文件

$ sudo vim /var/log/auth.log

a. 查看登录失败的IP

sudo grep "Failed password for root" /var/log/auth.log | awk {'print $11'} | uniq -c | sort -rn

b. 查看登录成功的IP

grep "Accepted password for " /var/log/auth.log

二、限制IP登录

 
1.  编辑/etc/hosts.allow (手动)   
 
2. 安装denyhosts,自动加登录失败的到黑名单  
$ sudo apt-get install denyhosts

默认配置就可以了。

查看配置信息:

 $ sudo vim /etc/denyhosts.conf 

下面是一些设置的介绍,配置文件中有详细说明。

 1 SECURE_LOG = /var/log/auth.log #ssh 日志文件,它是根据这个文件来判断的。
HOSTS_DENY = /etc/hosts.deny #控制用户登陆的文件
PURGE_DENY = #过多久后清除已经禁止的,空表示永远不解禁
BLOCK_SERVICE = sshd #禁止的服务名,如还要添加其他服务,只需添加逗号跟上相应的服务即可
DENY_THRESHOLD_INVALID = #允许无效用户失败的次数
DENY_THRESHOLD_VALID = #允许普通用户登陆失败的次数
DENY_THRESHOLD_ROOT = #允许root登陆失败的次数
DENY_THRESHOLD_RESTRICTED =
WORK_DIR = /var/lib/denyhosts #运行目录
SUSPICIOUS_LOGIN_REPORT_ALLOWED_HOSTS=YES
HOSTNAME_LOOKUP=YES #是否进行域名反解析
LOCK_FILE = /var/run/denyhosts.pid #程序的进程ID
ADMIN_EMAIL = root@localhost #管理员邮件地址,它会给管理员发邮件
SMTP_HOST = localhost
SMTP_PORT =
SMTP_FROM = DenyHosts <nobody@localhost>
SMTP_SUBJECT = DenyHosts Report
AGE_RESET_VALID=5d #用户的登录失败计数会在多久以后重置为0,(h表示小时,d表示天,m表示月,w表示周,y表示年)
AGE_RESET_ROOT=25d
AGE_RESET_RESTRICTED=25d
AGE_RESET_INVALID=10d
RESET_ON_SUCCESS = yes #如果一个ip登陆成功后,失败的登陆计数是否重置为0
DAEMON_LOG = /var/log/denyhosts #自己的日志文件
DAEMON_SLEEP = 30s #当以后台方式运行时,每读一次日志文件的时间间隔。
DAEMON_PURGE = 1h #当以后台方式运行时,清除机制在 HOSTS_DENY 中终止旧条目的时间间隔,
上一篇:hdu 5011 nim博弈 (2014西安网赛E题)


下一篇:抓取awr、语句级awr、ashrpt