have found a solution :
edit /lib/systemd/system/mariadb.service
change PrivateDevices=true
to PrivateDevices=false
Run systemctl daemon-reload
and systemctl start mysql
have found a solution :
edit /lib/systemd/system/mariadb.service
change PrivateDevices=true
to PrivateDevices=false
Run systemctl daemon-reload
and systemctl start mysql
Here is a list of ports that are used commonly on ISPConfig 3 servers. If you don’t have all services installed or if you e.g. don’t want to connect to MySQL from external servers, then close the unused or unwanted ports.
TCP ports
20 – FTP Data
21 – FTP Command
22 – SSH
25 – Email
53 – DNS
80 – HTTP (Webserver)
110 – POP3 (Email)
143 -Imap (Email)
443 – HTTPS (Secure web server)
993 – IMAPS (Secure Imap)
995 – POP3S (Secure POP3)
3306 – MySQL Database server
8080 – ISPConfig web interface
8081- ISPConfig apps vhost
UDP ports
53 – DNS
3306 – MySQL
O Apache Tomcat é um servidor da web e um contêiner de servlet usado para servir aplicativos Java. O Tomcat é uma implementação de código aberto das tecnologias Java Servlet e JavaServer Pages, lançada pela Apache Software Foundation. Este tutorial aborda a instalação básica e algumas configurações da versão mais recente do Tomcat 9 no seu servidor Debian 9.
Antes de começar com este guia, você deve ter um usuário não root com sudo
privilégios configurados no seu servidor. Você pode aprender como fazer isso completando nosso guia de configuração do servidor Debian 9 inicial .
O Tomcat exige que o Java seja instalado no servidor para que qualquer código de aplicativo da Web Java possa ser executado. Podemos satisfazer esse requisito instalando o OpenJDK com o apt.
Primeiro, atualize seu índice de pacote apt:
sudo apt update
Em seguida, instale o pacote Java Development Kit com o apt:
sudo apt install default-jdk
Agora que o Java está instalado, podemos criar um tomcat
usuário, que será usado para executar o serviço Tomcat.
Por questões de segurança, o Tomcat deve ser executado como um usuário sem privilégios (ou seja, não como root). Criaremos um novo usuário e grupo que executará o serviço Tomcat.
Nota : Em alguns ambientes, um pacote chamado unscd
pode ser instalado por padrão para acelerar solicitações para nomear servidores como LDAP. A versão mais recente atualmente disponível no Debian contém um bug que faz com que certos comandos (como o adduser
comando abaixo) produzam resultados adicionais parecidos com este:
sent invalidate(passwd) request, exiting
sent invalidate(group) request, exiting
Essas mensagens são inofensivas, mas se você deseja evitá-las, é seguro remover o unscd
pacote se você não planeja usar sistemas como LDAP para obter informações do usuário:
apt remove unscd
Primeiro, crie um novo tomcat
grupo:
sudo groupadd tomcat
Em seguida, crie um novo tomcat
usuário. Tornaremos esse usuário um membro do tomcat
grupo, com um diretório inicial de /opt/tomcat
(onde instalaremos o Tomcat) e com um shell de /bin/false
(para que ninguém possa fazer login na conta):
sudo useradd -s /bin/false -g tomcat -d /opt/tomcat tomcat
Agora que nosso tomcat
usuário está configurado, faça o download e instale o Tomcat.
A melhor maneira de instalar o Tomcat 9 é baixar a versão binária mais recente e configurá-la manualmente.
Encontre a versão mais recente do Tomcat 9 na página de downloads do Tomcat 9 . No momento da redação deste artigo, a versão mais recente é 9.0.11 , mas você deve usar uma versão estável posterior, se estiver disponível. Na seção Distribuições binárias , na lista Core , copie o link para “tar.gz”.
Em seguida, mude para o /tmp
diretório em seu servidor. Este é um bom diretório para baixar itens efêmeros, como o tarball do Tomcat, que não precisaremos depois de extrair o conteúdo do Tomcat:
cd /tmp
Usaremos a curl
ferramenta de linha de comando para baixar o tarball. Instalar curl
:
sudo apt install curl
Agora, use curl
para baixar o link que você copiou do site do Tomcat:
curl -O http://www-eu.apache.org/dist/tomcat/tomcat-9/v9.0.11/bin/apache-tomcat-9.0.11.tar.gz
Vamos instalar o Tomcat no /opt/tomcat
diretório Crie o diretório e extraia o arquivo morto com estes comandos:
sudo mkdir /opt/tomcat
sudo tar xzvf apache-tomcat-9*tar.gz -C /opt/tomcat --strip-components=1
Em seguida, podemos configurar as permissões de usuário adequadas para nossa instalação.
O tomcat
usuário que configuramos precisa ter acesso à instalação do Tomcat. Vamos configurar isso agora.
Mude para o diretório em que descompactamos a instalação do Tomcat:
cd /opt/tomcat
Conceda ao tomcat
grupo a propriedade de todo o diretório de instalação:
sudo chgrp -R tomcat /opt/tomcat
Em seguida, forneça ao tomcat
grupo acesso de leitura ao conf
diretório e a todo o seu conteúdo e execute o acesso ao próprio diretório:
sudo chmod -R g+r conf
sudo chmod g+x conf
Faça o tomcat
usuário proprietário dos webapps
, work
, temp
, e logs
diretórios:
sudo chown -R tomcat webapps/ work/ temp/ logs/
Agora que as permissões apropriadas foram configuradas, podemos criar um arquivo de serviço systemd para gerenciar o processo do Tomcat.
Queremos poder executar o Tomcat como um serviço, portanto, configuraremos o arquivo de serviço systemd.
O Tomcat precisa saber onde o Java está instalado. Esse caminho é conhecido como “JAVA_HOME”. A maneira mais fácil de procurar esse local é executando este comando:
sudo update-java-alternatives -l
Outputjava-1.8.0-openjdk-amd64 1081 /usr/lib/jvm/java-1.8.0-openjdk-amd64
Você JAVA_HOME
é o resultado da última coluna (destacada em vermelho). Dado o exemplo acima, o correto JAVA_HOME
para este servidor seria:
JAVA_HOME/usr/lib/jvm/java-1.8.0-openjdk-amd64
Você JAVA_HOME
pode ser diferente.
Com essa informação, podemos criar o arquivo de serviço systemd. Abra um arquivo chamado tomcat.service
no /etc/systemd/system
diretório digitando:
sudo nano /etc/systemd/system/tomcat.service
Cole o seguinte conteúdo no seu arquivo de serviço. Modifique o valor de, JAVA_HOME
se necessário, para corresponder ao valor encontrado em seu sistema. Você também pode modificar as configurações de alocação de memória especificadas em CATALINA_OPTS
:/etc/systemd/system/tomcat.service
[Unit]
Description=Apache Tomcat Web Application Container
After=network.target
[Service]
Type=forking
Environment=JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-amd64
Environment=CATALINA_PID=/opt/tomcat/temp/tomcat.pid
Environment=CATALINA_HOME=/opt/tomcat
Environment=CATALINA_BASE=/opt/tomcat
Environment='CATALINA_OPTS=-Xms512M -Xmx1024M -server -XX:+UseParallelGC'
Environment='JAVA_OPTS=-Djava.awt.headless=true -Djava.security.egd=file:/dev/./urandom'
ExecStart=/opt/tomcat/bin/startup.sh
ExecStop=/opt/tomcat/bin/shutdown.sh
User=tomcat
Group=tomcat
UMask=0007
RestartSec=10
Restart=always
[Install]
WantedBy=multi-user.target
Quando terminar, salve e feche o arquivo.
Em seguida, recarregue o daemon systemd para que ele conheça nosso arquivo de serviço:
sudo systemctl daemon-reload
Inicie o serviço Tomcat digitando:
sudo systemctl start tomcat
Verifique se ele foi iniciado sem erros digitando:
sudo systemctl status tomcat
Você deve ver uma saída semelhante à seguinte:
Output● tomcat.service - Apache Tomcat Web Application Container
Loaded: loaded (/etc/systemd/system/tomcat.service; disabled; vendor preset: enabled)
Active: active (running) since Wed 2018-09-05 20:47:44 UTC; 3s ago
Process: 9037 ExecStart=/opt/tomcat/bin/startup.sh (code=exited, status=0/SUCCESS)
Main PID: 9046 (java)
Tasks: 46 (limit: 4915)
CGroup: /system.slice/tomcat.service
└─9046 /usr/lib/jvm/java-1.8.0-openjdk-amd64/bin/java -Djava.util.logging.config.file=/opt/tomcat/conf/logging.properties -Dja
Sep 05 20:47:44 tomcat systemd[1]: Starting Apache Tomcat Web Application Container...
Sep 05 20:47:44 tomcat systemd[1]: Started Apache Tomcat Web Application Container.
Isso confirma que o Tomcat está funcionando no seu servidor.
Agora que o serviço Tomcat foi iniciado, podemos testar para garantir que a página padrão esteja disponível.
Antes de fazer isso, precisamos ajustar o firewall para permitir que nossos pedidos cheguem ao serviço. Se você seguiu os pré-requisitos, terá um ufw
firewall ativado no momento.
O Tomcat usa port 8080
para aceitar solicitações convencionais. Permita o tráfego para essa porta digitando:
sudo ufw allow 8080
Com o firewall modificado, você pode acessar a página inicial padrão acessando seu domínio ou endereço IP seguido por :8080
um navegador da web:
Open in web browserhttp://server_domain_or_IP:8080
Você verá a página inicial padrão do Tomcat, além de outras informações. No entanto, se você clicar nos links para o Gerenciador de aplicativos, por exemplo, seu acesso será negado. Podemos configurar esse acesso a seguir.
Se você conseguiu acessar o Tomcat com êxito, agora é uma boa hora para ativar o arquivo de serviço para que o Tomcat seja iniciado automaticamente na inicialização:
sudo systemctl enable tomcat
Para usar o aplicativo Web do gerente que acompanha o Tomcat, precisamos adicionar um login ao nosso servidor Tomcat. Faremos isso editando o tomcat-users.xml
arquivo:
sudo nano /opt/tomcat/conf/tomcat-users.xml
Você deseja adicionar um usuário que possa acessar os manager-gui
e admin-gui
(aplicativos da web que acompanham o Tomcat). Você pode fazer isso definindo um usuário, semelhante ao exemplo abaixo, entre as tomcat-users
tags. Certifique-se de alterar o nome de usuário e a senha para algo seguro:tomcat-users.xml – Usuário administrador
<tomcat-users . . .>
<user username="admin" password="password" roles="manager-gui,admin-gui"/>
</tomcat-users>
Salve e feche o arquivo quando terminar.
Por padrão, as versões mais recentes do Tomcat restringem o acesso aos aplicativos Manager e Host Manager a conexões provenientes do próprio servidor. Como estamos instalando em uma máquina remota, você provavelmente desejará remover ou alterar essa restrição. Para alterar as restrições de endereço IP, abra os context.xml
arquivos apropriados .
Para o aplicativo Manager, digite:
sudo nano /opt/tomcat/webapps/manager/META-INF/context.xml
Para o aplicativo Host Manager, digite:
sudo nano /opt/tomcat/webapps/host-manager/META-INF/context.xml
No interior, comente a restrição de endereço IP para permitir conexões de qualquer lugar. Como alternativa, se você deseja permitir acesso apenas a conexões provenientes de seu próprio endereço IP, você pode adicionar seu endereço IP público à lista:arquivos context.xml para aplicativos da Web Tomcat
<Context antiResourceLocking="false" privileged="true" >
<!--<Valve className="org.apache.catalina.valves.RemoteAddrValve"
allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" />-->
</Context>
Salve e feche os arquivos quando terminar.
Para efetivar nossas alterações, reinicie o serviço Tomcat:
sudo systemctl restart tomcat
Agora que criamos um usuário, podemos acessar a interface de gerenciamento da web novamente em um navegador da web. Mais uma vez, você pode acessar a interface correta digitando o nome de domínio ou endereço IP do servidor seguido na porta 8080 no seu navegador:
Open in web browserhttp://server_domain_or_IP:8080
A página que você vê deve ser a mesma que você recebeu quando testou anteriormente:
Vamos dar uma olhada no App Manager, acessível através do link ou . Você precisará inserir as credenciais da conta que você adicionou ao arquivo. Depois, você deverá ver uma página parecida com esta:http://server_domain_or_IP:8080/manager/html
tomcat-users.xml
O Web Application Manager é usado para gerenciar seus aplicativos Java. Você pode iniciar, parar, recarregar, implantar e remover a implantação aqui. Você também pode executar alguns diagnósticos em seus aplicativos (ou seja, encontrar vazamentos de memória). Por fim, informações sobre seu servidor estão disponíveis na parte inferior desta página.
Agora, vamos dar uma olhada no Host Manager, acessível através do link ou :http://server_domain_or_IP:8080/host-manager/html/
Na página Gerenciador de Host Virtual, você pode adicionar hosts virtuais para servir seus aplicativos.
Sua instalação do Tomcat está concluída! Agora você está livre para implantar seus próprios aplicativos da web Java!
Atualmente, sua instalação do Tomcat está funcional, mas totalmente não criptografada. Isso significa que todos os dados, incluindo itens confidenciais, como senhas, são enviados em texto sem formatação que podem ser interceptados e lidos por outras partes na internet. Para impedir que isso aconteça, é altamente recomendável que você criptografe suas conexões com SSL. Você pode descobrir como criptografar suas conexões com o Tomcat seguindo este guia ( nota: este guia cobre a criptografia do Tomcat 8 no Ubuntu 16.04 ).
If you run a firewall on your Linux server and want to use passive FTP connections, you have to define the passive port range in pure-ftpd and your firewall to ensure that the connections don’t get blocked. The following example is for pure-ftpd on Debian or Ubuntu Linux and ISPConfig 3.
1) Configure pure-ftpd
echo "40110 40210" > /etc/pure-ftpd/conf/PassivePortRange service pure-ftpd-mysql restart
2) Configure the firewall. If you use ISPConfig 3 on my server to configure the bastille firewall, you can add the nescessera port range in the ISPConfig firewall settings.
Change the list of Open TCP ports from:
20,21,22,25,53,80,110,143,443,3306,8080,10000
to:
20,21,22,25,53,80,110,143,443,3306,8080,10000,40110:40210
and then click on “Save”.
Setting a passive IP in FTP might be necessary when your server is located behind a NAT router. You will get an error like “Error: Server returned unroutable private IP address in PASV reply” from your FTP client in such a case.
To set a passive IP address, run this command:
echo "1.2.3.4" > /etc/pure-ftpd/conf/ForcePassiveIP
Replace 1.2.3.4 with the External IP address that clients shall use to connect to the FTP server. Then restart pureFTPD:
service pure-ftpd-mysql restart
Here is a list of ports that are used commonly on ISPConfig 3 servers. If you don’t have all services installed or if you e.g. don’t want to connect to MySQL from external servers, then close the unused or unwanted ports.
TCP ports
20 – FTP Data
21 – FTP Command
22 – SSH
25 – Email
53 – DNS
80 – HTTP (Webserver)
110 – POP3 (Email)
143 -Imap (Email)
443 – HTTPS (Secure web server)
993 – IMAPS (Secure Imap)
995 – POP3S (Secure POP3)
3306 – MySQL Database server
8080 – ISPConfig web interface
8081- ISPConfig apps vhost
UDP ports
53 – DNS
3306 – MySQL
Objetivo:
Explicar como Gerenciar usuarios e grupos no samba4 pelo shell
Introdução:
Este Post tem como objetivo explicar:
Usúarios:
Grupos
No post anterior “Criando usuário Pelo Shell no Samba4” expliquei como criar usuário pelo shell
Cenário:
Servidor: Debian 7
Versão do Samba: 4.0.3
Nome do usuario que sera criado = mundoti e mundoti2
Nome do grupo que sera criado = diretoria e diretoria_ead
Senha do usuario = 1234.Mudar.Senha
Nome do dominio = empresa.net
Diretório de instalação do samba = /opt/samba/
Agora vamos gerencia-los
*Obs: para executar esses comandos sem ter digitar o caminho completo
Ex samba-tool /opt/samba/bin/samba-tool
você tem que ter exporta a variável path do local da instalação do samba4 isso pode ser feito da seguinte forma.
Digitando o comando:
# export PATH=$PATH:"/opt/samba/bin:/opt/samba/sbin”
Trocar senha do usuário:
# samba-tool user setpassword mundoti --newpassword=1234.Mudar.Senha
Trocar senha do usuário e forca a troca no Próximo Login:
# samba-tool user setpassword mundoti --newpassword=1234.Mudar.Senha --must-change-at-next-login
Deletar Usuário:
# samba-tool user delete mundoti
Deletar Usuário e Deletar a sua pasta Home:
# samba-tool user delete mundoti && rm -r /home/samba/mundoti
Listar Todos os Usuários do samba:
# samba-tool user list
Desabilitar o Usuário
com essa opção a conta não pode ser utilizada, mas permanece no servidor:
# samba-tool user disable mundoti
Habilitar Usuário:
# samba-tool user enable mundoti
Expiração de senha do usuário
A expiração de senha para todos os usuários do domínio e feita com outro comando essa altera somente do usuário especificado ( bom para ser usado em certas exceções como por exemplo aquele diretor que insiste em ser uma exceção a regra ) 10 e o numero de dias em que a senha ira expirar:
# samba-tool user setexpiry mundoti --days=10
Desabilitar a expiração de senha:
# samba-tool user setexpiry mundoti --noexpiry
Grupos
Criar um grupo:
# samba-tool group add diretoria
Adicionar Vários Grupos de uma vez:
# samba-tool group add "diretoria diretoria_ead”
Criar um grupo e adicionar um descrição ao grupo:
# samba-tool group add diretoria --description="Grupo da diretoria"
Adicionar um membro a um grupo:
# samba-tool group addmembers diretoria mundoti
Adicionar um Grupo dentro de Outro Grupo
No samba4 podemos adicionar um grupos dentro de outro isso é muito útil
# samba-tool group addmembers diretoria diretoria_ead
Adicionar Vários Membros a um grupo de uma vez só:
# samba-tool group addmembers diretoria "mundoti,mundoti2"
Remover um grupo:
# samba-tool group delete diretoria
Removendo Vários grupos de uma vez:
# samba-tool group delete "diretoria diretoria_ead”
Remover um membro de um grupo:
# samba-tool group removemembers diretoria mundoti
Remover Membros de um grupo:
# samba-tool group removemembers diretoria "mundoti,mundoti2"
Listar todos os grupos:
# samba-tool group list
Listar Usuários pertencente a um grupo:
# samba-tool group listmembers diretoria
Validar formulários é chato, tedioso e trabalhoso. Felizmente alguém olhou isso e resolveu incluir dentro da especificação do html, alguns atributos e valores novos muito interessantes.
Se usarmos corretamente, e estudarmos Expressões Regulares, é possível fazer uma validação simples sem escrever nenhuma linha de javascript. Vou deixar abaixo alguns snippets da tag input, utilizando o type correto (veja aqui todos os types novos da html5) e um uso do atributo pattern para os qual eu escrevi algunms ERs.
Apenas letras
<input type="text" required="required" name="text" pattern="[a-z\s]+$" />
Apenas números
<input type="text" required="required" name="numbers" pattern="[0-9]+$" />
Data
<input type="date" required="required" maxlength="10" name="date" pattern="[0-9]{2}\/[0-9]{2}\/[0-9]{4}$" min="2012-01-01" max="2014-02-18" />
Hora
<input type="time" required="required" maxlength="8" name="hour" pattern="[0-9]{2}:[0-9]{2} [0-9]{2}$" />
Campos genéricos de texto
<input type="text" required="required" name="name" />
Telefone
<input type="tel" required="required" maxlength="15" name="phone" pattern="\([0-9]{2}\) [0-9]{4,6}-[0-9]{3,4}$" />
<input type="email" required="required" class="input-text" name="email" pattern="[a-z0-9._%+-]+@[a-z0-9.-]+\.[a-z]{2,4}$" />
Moeda
<input type="tel" required="required" maxlength="15" name="valor" pattern="([0-9]{1,3}\.)?[0-9]{1,3},[0-9]{2}$" />
Utilizei o type=”tel”, pq em celulares renderiza melhor o teclado.
Input file
<input type="file" name="file" accept="image/*" required="required" />
Lembre-se de usar o placeholder nos seus campos em que você precise “dar alguma dica” para o usuário de como ele deve preenchê-lo
Faça testes utilizando as pseudo classes
input:required:invalid {} input:required:valid {}
Encontrei este artigo bem completo e interessante: Validando formulários like a boss com HTML5. Onde é mostrado o atributo: required x-moz-errormessage=”Ops. Não esqueça de preencher este campo.”, logicamente exclusivo do Firefox.
E para webkit, o css:
::-webkit-validation-bubble {/*Insira aqui seu CSS.*/} ::-webkit-validation-bubble-message {} ::-webkit-validation-bubble-arrow {} ::-webkit-validation-bubble-arrow-clipper {}
In this tutorial, we will be discussing how to restrict SFTP users to their home directories or specific directories. It means the user can only access his/her respective home directory, not the entire file system.
Restricting users home directories is vital, especially in a shared server environment, so that an unauthorized user won’t sneak peek into the other user’s files and folders.
Important: Please also note that the purpose of this article is to provide SFTP access only, not SSH logins, by following this article will have the permissions to do file transfer, but not allowed to do a remote SSH session.
Suggested Read: Restrict SSH User Access to Certain Directory Using Chrooted Jail
The simplest way to do this, is to create a chrooted jail environment for SFTP access. This method is same for all Unix/Linux operating systems. Using chrooted environment, we can restrict users either to their home directory or to a specific directory.
In this section, we will create new group called sftpgroup and assign correct ownership and permissions to user accounts. There are two choices to restrict users to home or specific directories, we will see both way in this article.
Let us restrict the existing user, for example tecmint
, to his/her home directory named /home/tecmint
. For this, you need to create a new sftpgroup group using groupadd command as shown:
# groupadd sftpgroup
Next, assign the user ‘tecmint’ to sftpgroup group.
# usermod -G sftpgroup tecmint
You can also create a new user using useradd command, for example senthil
and assign the user to sftpusers group.
# adduser senthil -g sftpgroup -s /sbin/nologin # passwd tecmint
Open and add the following lines to /etc/ssh/sshd_config
configuration file.
Subsystem sftp internal-sftp Match Group sftpgroup ChrootDirectory /home ForceCommand internal-sftp X11Forwarding no AllowTcpForwarding no
Save and exit the file, restart sshd service to take new changes into effect.
# systemctl restart sshd OR # service sshd restart
If you chroot multiple users to the same directory, you should change the permissions of each user’s home directory in order to prevent all users to browse the home directories of the each other users.
# chmod 700 /home/tecmint
Now, it’s time to check the login from a local system. Try to ssh your remote system from your local system.
# ssh [email protected]
Here,
[email protected]'s password: Could not chdir to home directory /home/tecmint: No such file or directory This service allows sftp connections only. Connection to 192.168.1.150 closed.
Then, access remote system using SFTP.
# sftp [email protected]
[email protected]'s password: Connected to 192.168.1.150. sftp>
Let us check the current working directory:
sftp> pwd Remote working directory: / sftp> ls tecmint
Here, tecmint
is the home directory. Cd to the tecmint directory and create the files or folders of your choice.
sftp> cd tecmint Remote working directory: / sftp> mkdir test tecmint
In our previous example, we restrict the existing users to the home directory. Now, we will see how to restrict a new user to a custom directory.
Create a new group sftpgroup
.
# groupadd sftpgroup
Next, create a directory for SFTP group and assign permissions for the root user.
# mkdir -p /sftpusers/chroot # chown root:root /sftpusers/chroot/
Next, create new directories for each user, to which they will have full access. For example, we will create tecmint
user and it’s new home directory with correct group permission using following series of commands.
# adduser tecmint -g sftpgroup -s /sbin/nologin # passwd tecmint # mkdir /sftpusers/chroot/tecmint # chown tecmint:sftpgroup /sftpusers/chroot/tecmint/ # chmod 700 /sftpusers/chroot/tecmint/
Modify or add the following lines at the end of the file:
#Subsystem sftp /usr/libexec/openssh/sftp-server Subsystem sftp internal-sftp Match Group sftpgroup ChrootDirectory /sftpusers/chroot/ ForceCommand internal-sftp X11Forwarding no AllowTcpForwarding no
Save and exit the file. Restart sshd service to take effect the saved changes.
# systemctl restart sshd OR # service sshd restart
That’s it, you can check by logging into the your remote SSH and SFTP server by using the step provided above at Verify SSH and SFTP login.
Be mindful that this method will disable the shell access, i.e you can’t access the remote system’s shell session using SSH. You can only access the remote systems via SFTP and do file transfer to and from the local and remote systems.
Now you know how to restrict users home directories using a Chroot environment in Linux. If you find this useful, share this article on your social networks and let us know in the comment section below if there is any other methods to restrict users home directories.