Conas a shuiteáil agus a chumrú freastalaí SSH ar Debian Linux?
Shuiteáil agus a thástáil an Freastalaí SSH
You will need to be root to do the following…
su
-
Suiteáil Freastalaí SSH
apt install openssh-server
-
Seiceáil más ann an bpróiseas freastalaí. Léiríonn sé seo an Chuaigh shuiteáil maith.
ps -A | grep sshdaschur (nó a leithéid):
1753 ? 00:00:00 sshd -
Suiteáil Cliant SSH a sheiceáil leis an nasc SSH Freastalaí
apt install openssh-clientCeangail le localhost nasc a thástáil
ssh localhostChomh maith leis sin logáil isteach leis an seoladh IP comhéadan
Faigh IP Seoladh
ip addrSSH ar an seoladh IP
ssh {ipaddress here}
Securing the SSH Server
It is a good idea to secure the SSH server by disallowing root to login and configuring login only by public key i.e. login using passwords is not allowed
Ensure to execute the following commands as your user and not as root
-
Navigate to the user home directory
cd
-
Seiceáil an bhfuil .ssh
ls -a
-
Más rud é nach bhfuil .ssh ann, chruthú
mkdir .ssh
-
Socraigh an cead fhillteáin 700
chmod 700 .ssh
-
Create the authorized_keys file
touch ./.ssh/authorized_keys
-
Change permission on the authorized_keys file to 600
chmod 600 ./.ssh/authorized_keys
-
Open the authorized_keys file
nano ./.ssh/authorized_keys
-
Paste your public key into the file
You can get your public key from the SSH client. If the client is Windows 10 then it will be in the
%USERPROFILE%/.ssh/id_rsa.pubfile. If the client is Debian then the public key is~/.ssh/id_rsa.pub.If your public key does not exist, generate it on the client machine
ssh-keygen -t rsa -C "email@domain.com"
-
Change to root user
su -
Configure your SSH server to accept only public key logins and prevent login for root
nano /etc/ssh/sshd_configUncomment and/or edit the following lines
PermitRootLogin no
StrictModes yes
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys .ssh/authorized_keys2
PasswordAuthentication no
-
Restart the sshd service
service sshd restart
-
Try logging in as root from your SSH client using password
ssh root@{ssh server ip address}aschur:
Permission denied (publickey). -
Try logging in as username from your SSH client using password
ssh username@{ssh server ip address}aschur:
Permission denied (publickey). -
Try logging in as root from your SSH client using the public key
ssh root@{ssh server ip address} -i .ssh/id_rsaaschur:
Permission denied (publickey). -
Log in as username from your SSH client using the public key
ssh username@{ssh server ip address} -i .ssh/id_rsa
If your SSH client has a static IP address then you may want to consider only your IP address can login to the SSH server.
