Linux 원 격 서비스의 OpenSSH 설정

1. SSH 로 원 격 명령 줄 에 접근
1.1 OpenSSH 안내
OpenSSH 라 는 용 어 는 시스템 에서 사용 되 는 Secure
Shell
소프트웨어 의 소프트웨어 실 시 를 말한다.셸 을 원 격 시스템 에서 안전하게 실행 하 는 데 사용 합 니 다.ssh 서 비 스 를 제공 할 수 있 는 원 격 리 눅 스 시스템 에 사용자 계 정 이 있다 면 ssh 는 보통 이 시스템 에 원 격 으로 로그 인 하 는 명령 입 니 다.ssh 명령 도 시스템 에서 명령 을 실행 하 는 데 사용 할 수 있 습 니 다.
일반적인 원 격 로그 인 도 구 는 다음 과 같 습 니 다:
telnet //远程登录协议,23/TCP
认证明文
数据传输明文
ssh //Secure Shell ,应用层协议,22/TCP
通信过程及认证过程是加密的,主机认证
用户认证过程加密
数据传输过程加密
dropbear //嵌入式系统专门的SSH服务器端和客户服工具

1.2 SSH 버 전
openssh有两个版本,分别为v1和v2,其特点如下
v1 : 基于CRC-32做MAC。无法防范中间人(man-in-middle) ×××
v2:双方主机协议选择安全的MAC方式。基于DH算法做密钥交换,基于RSA或DSA算法身份认证
1.3 SSH 认证方式
openssh 有两种认证方式,分别是:
基于口令认证
基于密钥认证

1.4 openSSH 의 작업 모델
openSSH 是基于C/S架构工作的
服务器 //sshd,配置文件在/etc/ssh/sshd_config
客户端 //ssh,配置文件在/etc/ssh/ssh_config
ssh-keygen 密钥生成器
ssh-copy-id 将公钥传输至远程服务器
scp 跨主机安全复制工具

2. SSH 키 기반 인증 설정
ssh - keygen 명령 으로 암 호 를 만 듭 니 다.비밀 키 가 생 성 됩 니 다 ~/. ssh/idras 와 ~/. ssh/idras.pub.
ssh 키 를 생 성 하면 키 는 기본적으로 집 디 렉 터 리 의. ssh/디 렉 터 리 에 저 장 됩 니 다.비밀 키 와 공개 키 의 권한 은 각각 600 과 644 이다.ssh 현재 권한 은 700 이 어야 합 니 다.
키 기반 인증 을 사용 하기 전에 공개 키 를 대상 시스템 에 복사 해 야 합 니 다.ssh - copy - id 사용 가능
ssh - copy - id 를 통 해 키 를 다른 시스템 으로 복사 할 때 기본 복사 ~/. ssh/idrsa. pub 파일 SSH 키 데모
1. ssh - keygen 을 사용 하여 공개 키 만 들 기 - 비밀 키 쌍
[root@doudou ~]# ssh-keygen -t rsa

2. ssh - copy - id 를 사용 하여 공개 키 를 원 격 시스템 의 정확 한 위치 로 복사 합 니 다.
[root@doudou ~]# ssh-copy-id -i ~/.ssh/id_rsa.pub [email protected]
/usr/bin/ssh-copy-id: INFO: Source of key(s) to be installed: "/root/.ssh/id_rsa.pub"
/usr/bin/ssh-copy-id: INFO: attempting to log in with the new key(s), to filter out any that are already installed
/usr/bin/ssh-copy-id: INFO: 1 key(s) remain to be installed -- if you are prompted now it is to install the new keys
[email protected]'s password:
Number of key(s) added: 1
Now try logging into the machine, with:   "ssh '[email protected]'"
and check to make sure that only the key(s) you wanted were added.

3. 원 격 호스트 에 ssh 명령 없 이 로그 인
[root@doudou ~]# ssh [email protected]
Last login: Mon Jul 30 15:23:25 2018 from 192.168.24.1

4. scp 명령 으로 원 격 호스트 로 파일 전송
[root@doudou ~]# scp lin.txt [email protected]:/root
[root@doudou ~]# ls
anaconda-ks.cfg  lin.txt

scp 명령 상용 옵션
-r 递归复制
-p 保持权限
-P 端口
-q 静默模式
-a 全部复制

사용자 정의 SSH 서비스 설정
OpenSSH 서버 는 일반적으로 수정 할 필요 가 없 지만 다른 보안 조 치 를 통 해 파일/etc/ssh/sshd 를 설정 할 수 있 습 니 다.config 에서 OpenSSH 서버 의 모든 면 을 수정 합 니 다.
PermitRootLogin yes 是否允许root用户远程登录系统
PermitRootLogin without-password 仅允许root用户基于密钥方式远程登录
PasswordAuthentication 是否启用密码身份验证,默认开启

SSH 안전 주의사항
비밀 번 호 는 자주 바 꾸 고 충분히 복잡 해 야 한다.
[root@doudou ~]# openssl rand 20 -base64
pCsFZMQhp/wWJTSm9gqMRerpwu8= 生成20位随机密码
使用非默认端口
限制登录客户端地址
仅监听特定的IP地址
禁止管理员直接登录
AllowUsers
AllowGroups
使用基于密钥的认证
禁止使用空密码
禁止使用SSHv1v版本
设定空闲会话超时时长
利用防火墙设置SSH访问策略
限制SSH的访问频度和并发在线数
做好日志的备份,经常分析(集中于某台服务器)

숙제.
1. 키 인증 과정 설명
한 클 라 이언 트 에서 공개 키 - 비밀 키 쌍 을 만 들 고 비밀 키 와 공개 키 의 권한 은 각각 600 과 644 입 니 다.ssh 현재 권한 은 700 키 를 원 격 시스템 의. ssh 디 렉 터 리 에 복사 해 야 합 니 다. 첫 번 째 링크 이기 때문에 원 격 시스템 의 비밀 번 호 를 입력 한 다음 ssh 명령 으로 원 격 호스트 에 로그 인 해 야 합 니 다. 이 때 는 비밀번호 가 필요 없 이 바로 로그 인 할 수 있 습 니 다. 이때 ip all 을 통 해 이전 IP 가 원 격 시스템 의 IP 주 소 를 확인 할 수 있 습 니 다.
2. 키 인증 을 수 동 으로 설정 하 는 과정
1. ssh - keygen 을 사용 하여 공개 키 만 들 기 - 비밀 키 쌍[root@doudou ~]# ssh-keygen -t rsa
2. ssh - copy - id 를 사용 하여 공개 키 를 원 격 시스템 의 정확 한 위치 로 복사 합 니 다.
[root@doudou ~]# ssh-copy-id -i ~/.ssh/id_rsa.pub [email protected]
/usr/bin/ssh-copy-id: INFO: Source of key(s) to be installed: "/root/.ssh/id_rsa.pub"
/usr/bin/ssh-copy-id: INFO: attempting to log in with the new key(s), to filter out any that are already installed
/usr/bin/ssh-copy-id: INFO: 1 key(s) remain to be installed -- if you are prompted now it is to install the new keys
[email protected]'s password:
Number of key(s) added: 1
Now try logging into the machine, with:   "ssh '[email protected]'"
and check to make sure that only the key(s) you wanted were added.

3. 원 격 호스트 에 ssh 명령 없 이 로그 인
[root@doudou ~]# ssh [email protected]
Last login: Mon Jul 30 15:23:25 2018 from 192.168.24.1
[root@linfan ~]# ip a
1: lo:  mtu 65536 qdisc noqueue state UNKNOWN qlen 1
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: eth0:  mtu 1500 qdisc pfifo_fast state UP qlen 1000
link/ether 00:0c:29:bb:9c:fb brd ff:ff:ff:ff:ff:ff
inet 192.168.24.130/24 brd 192.168.24.255 scope global dynamic eth0
valid_lft 1578sec preferred_lft 1578sec
inet6 fe80::5353:99b9:5c65:43ba/64 scope link
valid_lft forever preferred_lft forever

좋은 웹페이지 즐겨찾기