Linux下Telnet/Openssh相关工具以及sshd服务安全加固

telnet服务安装:

#yum -y install telnet-server 安装telnet服务

# rpm -ql telnet-server 查看配置文件

/etc/xinetd.d/telnet

/usr/sbin/in.telnetd

/usr/share/man/man5/issue.net.5.gz

/usr/share/man/man8/in.telnetd.8.gz

/usr/share/man/man8/telnetd.8.gz

#yum -y install telnet 安装客户端

/usr/bin/telnet 客户端命令

服务进程:

独立守护进程

超级守护进程:xinetd, /etc/xinetd.d/

#chkconfig --list 查看服务进程

#chkconfig telnet on 启动服务

#service xinetd start 启动超级进程

#ss -tunpl |grep xinetd 查看状态

>telnet liangqi@192.168.118.128 登录即可..

telnet不运行管理员登录。因为明文.... 可以登录后跳转

#pstree 查看进程

#export LANG=en 设置成中文字符串

Openssh:Secure Shell

协议版本:

v1: host_key

v2: rsa_key, dsa_key

两种方法用户认证:

-基于口令认证-密码认证

-基于秘钥认证-秘钥

openssh是ssh协议的开源实现

C/S架构,22/tcp

# yum info openssh 查看openssh相关组件

# rpm -ql openssh-clients 查看openssh客户端程序

#ss -tnl 查看22端口

#tail /var/log/secure 查看登录记录

sshd_config 服务器端配置文件:

#PermitRootLogin yes 允许root登录

#StrictModes yes 严格模式

#MaxAuthTries 6 最大尝试次数

#MaxSessions 10 最大会话连接数

#RSAAuthentication yes是否支持rsa秘钥认证

#PubkeyAuthentication yes

#AuthorizedKeysFile .ssh/authorized_keys

#AuthorizedKeysCommand none

#AuthorizedKeysCommandRunAs nobody 最小权限用户

#PasswordAuthentication yes 口令认证

#PermitEmptyPasswords no 空密码登录

#UsePAM yes 是否支持统一认证框架

#X11Forwarding yes 是否转发关键图形请求

#UseDNS yes 启动dns反解

#Subsystem sftp /usr/libexec/openssh/sftp-server sftp客户端的支持配置

ssh_config 客户端配置文件地址:

# StrictHostKeyChecking ask 是否进行严格秘钥主机检查

客户端组件:ssh,scp,sftp

ssh:基于ssh协议远程连接ssh服务器的命令行客户端程序

ssh liangqi@192.168.118.128 [command]

ssh -l liangqi 192.168.118.128

-l 用户

-p 指定端口

-x 不启用

-X -Y启用X11forwarding,转发X界面请求

#system-config-date

ssh-keygen 生成秘钥命令

(1.)在本地生成秘钥对。

-t {rsa,dsa}:秘钥类型res,dea

-b :秘钥长度

-f:指定秘钥文件路径

-P ‘’:指定不设置密码

# ssh-keygen -t rsa -f /root/.ssh/id128 -P ''

(2.)把公钥部分复制到远程主机的特定用户(可不同于本地用户)的家目录,追加保存至.ssh目录中的authorized-keys 文件中。

1)在192.168.118.128的系统上,新建一个centos用户并设置密码。

2)在192.168.118.129上,生成秘钥对,其中公钥部部分sshcopy命令把192.168.118.129的公钥复制到192.168.118.128的centos用户的 ~/.ssh/authorized-keys

# ssh-copy-id -i id128.pub centos@192.168.118.128

scp:远程复制工具:

scp [options] 源文件 目标文件

push:推 scp -r /etc/pam.d/ user@server:/pam

pull:拉 scp -r user@server:/root /root/

常用选项:

-r:递归复制,复制目录和内部文件

-p:保存源文件的数组属主权限等

-q:静默模式

-P PORT:指定端口

# scp -r /etc/pam.d/ root@192.168.118.128:/pam 把本地文件复制到远程

# scp -r root@192.168.118.129:/www/pam /aa 把远程主机的文件复制到本地aa

sftp工具:

openssl的sshd.config服务器端开启subsystem

sftp [user]@server

sftp>help

>sftp root@192.168.118.129

>get file

>put file

服务器端程序sshd安全加固:sshd.config

1,不要使用默认端口

2,不要使用v1办协议,使用protocol2

3,限制可登录的用户

AllowUsers:运行用户登录白名单,多用户之间用空格

AllowGroups:允许组登录白名单

DenyUsers:拒绝用户

DenyGroups:拒绝组

4,设置空闲回话超时时长

5,防火墙设置ssh访问策略

限定ssh服务仅运行VPN服务器分配有限地址段内的主机访问

6,仅监听特定主机 网卡私有地址..

7,使用强密码策略

# tr -dc A-Za-z0-9 </dev/urandom | head -c 30 |xargs 自动生产密码

8,使用基于秘钥认证

9,禁止使用空密码

10,禁止使用管理员

#PermitRootLogin no

11,限时ssh访问频度

12,做好日志分析。

/var/log/secure

dropbear:另一款ssh协议的开源实现:

服务程序:dropbear=>sshd

客户:dbclient =>ssh

下载:dropbear-2013.58.tar.bz2

#tar xf dropbear-2013.58.tar.bz2

#export LANG=en 修改语言变量

# ./configure --prefix=/usr/local/dropbear --sysconfdir=/etc/dropbear --disable-pam 编译安装

#make PROGRAMS="dropbear dbclient dropbearkey dropbearconvert scp"

#make install

1,编辑 # vi /etc/profile.d/dropbear.sh添加:

export PATH=/usr/local/dropbear/bin:/usr/local/dropbear/sbin:$PATH

#chmod +x /etc/profile.d/dropbear.sh

#./etc/profile.d/dropbear.sh 重读配置文件

#dbclient -l root 192.168.118.128 服务端

待续..


发表评论

登录 后发表评论.