linux ssh 신뢰 구축 및 흔한 문제 해결 방법
$ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa):
돌아오는 길에 현지 집 목록에서 ~/.ssh/키 파일 생성, 존재하는지 확인하면 무시할 수 있습니다.(더 많은 ssh-keygen 사용 도움말, ssh-keygen-h 참조)
생성된 후에는 다음과 같습니다.
$ls -ltra ~/.ssh/id_rsa*
-rw-r--r--. 1 root root 408 May 4 13:20 /root/.ssh/id_rsa.pub
-rw-------. 1 root root 1675 May 4 13:20 /root/.ssh/id_rsa
2. ssh가 원격 서버에 접속하여 방화벽을 개통하고 개통되면 무시할 수 있습니다
$/sbin/iptables -I INPUT -i eth0 -s 10.10.10.10 -p tcp -m tcp --dports 22 -j ACCEPT
방화벽을 개통한 후 로컬 ssh 10.10.10.11 22가 켜져 있는지 확인합니다(로컬 서버 IP: 10.10.10.10, 원격 서버 IP: 10.10.11로 가정).
3. 원격 서버에 ~/가 있는지 확인합니다.ssh/authorized_keys 파일과 해당 디렉터리가 존재하지 않으면 생성, 아니오를 무시할 수 있습니다.
$ls -ltra ~/ | grep ssh
drwx------. 2 root root 4096 May 4 13:38 .ssh
$ls -ltr .ssh/authorized_keys
-rw-------. 1 root root 408 May 4 13:38 .ssh/authorized_keys
참고: 파일 ~/.ssh/authorized_keys의 권한은 600, 디렉터리 ~/입니다.ssh/권한은 700이고 사용자 디렉터리 권한도 700이어야 합니다. 그렇지 않으면 신뢰가 효력을 상실합니다.
4. 이 컴퓨터에서 생성한 공개 키 파일(~/.ssh/id_rsa.pub)의 내용을 원격 서버에 추가합니다 ~/.ssh/authorized_keys
$cat .ssh/id_rsa.pub
위의 파일에 있는 내용을 대상 서버에 붙여넣기 ~/.ssh/authorized_keys 중.
5. 귀찮으면 3-4 2단계 조작을 무시하고 ssh-copy-id 명령을 사용하여 한 번에 도착할 수 있습니다.
$ssh-copy-id -i ~/.ssh/id_rsa.pub 10.10.10.11
$ssh-copy-id -h
Usage: /usr/bin/ssh-copy-id [-i [identity_file]] [user@]machine
완성된 후에 정상적인 상황에서 우리는 로컬에서 비밀번호가 없이 ssh로 원격 서버에 로그인할 수 있다.
로컬 사용자 루저 키 내용을 원격 사용자 루저 홈 디렉터리에 추가하면 ~/.ssh/authorized_keys 파일에서 로컬 사용자는 [email protected](원격 IP), 사용자의 대응 관계를 방문해야 합니다.
6. 비정상적인 경우, 우리는 몇 가지 오류를 만날 수 있습니다. 위의 절차를 다 끝낸 후에도 비밀번호 없이 로그인할 수 없습니다.
7. 셀리누스를 열면 ssh는 비밀번호로 로그인해야 합니다.
파일의 보안 컨텍스트는 다음과 같습니다.
# ls -laZ .ssh/
drwx------ root root ? .
dr-xr-x---. root root system_u:object_r:admin_home_t:s0 ..
-rw-r--r-- root root ? authorized_keys
-rwx------ root root ? id_dsa
-rwx------ root root ? id_dsa.pub
-rwx------ root root ? id_rsa
-rwx------ root root ? id_rsa.pub
위와 같이, 나의 것.ssh 디렉터리 파일의 보안 상하문은 정상적인 것과 어울리지 않습니다.restorecon-r-vv를 사용합니다.ssh/복구,sellinux를 enforcing으로 설정하고 서버를 다시 시작하면 적용됩니다.
복구 후에는 다음과 같습니다.
# ls -laZ .ssh/
drwx------. root root system_u:object_r:ssh_home_t:s0 .
dr-xr-x---. root root system_u:object_r:admin_home_t:s0 ..
-rw-r--r--. root root system_u:object_r:ssh_home_t:s0 authorized_keys
-rwx------. root root system_u:object_r:ssh_home_t:s0 id_dsa
-rwx------. root root system_u:object_r:ssh_home_t:s0 id_dsa.pub
-rwx------. root root system_u:object_r:ssh_home_t:s0 id_rsa
-rwx------. root root system_u:object_r:ssh_home_t:s0 id_rsa.pub
# getenforce
Disabled
[root@dbbak_bj_10 ~]# setenforce
usage: setenforce [ Enforcing | Permissive | 1 | 0 ]
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
용감한 바로 가기 및 우분투 응용 프로그램안녕하세요 여러분, 이 기사에서는 모든 사이트에서 pwa를 생성하고 실행기 응용 프로그램으로 추가하는 방법을 설명하고 싶습니다. 일부 웹사이트는 PWA로 설치를 허용하지 않지만 유사한 애플리케이션을 원합니다. 1. ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.